Sử dụng các thành phần PCA xoay varimax làm công cụ dự báo trong hồi quy tuyến tính


8

Sau khi thực hiện PCA, thành phần đầu tiên mô tả phần lớn nhất của tính biến thiên. Điều này rất quan trọng, ví dụ như trong nghiên cứu về các phép đo cơ thể nơi thường được biết đến (Jolliffe, 2002) rằng trục PC1 nắm bắt sự thay đổi kích thước. Câu hỏi của tôi là liệu PCA có điểm sau khi xoay varimax giữ nguyên các thuộc tính hay chúng khác nhau như được đề cập trong chủ đề này ?

Vì tôi cần điểm PCA để phân tích thống kê thêm, tôi tự hỏi liệu varimax có cần thiết không và trên thực tế có làm gián đoạn biểu diễn biến thiên mẫu thực để các điểm riêng lẻ trên trục xoay không chính xác hoặc dẫn đến giải thích sai về thực tế không?

Cũng có thể ai đó đề nghị một số tài liệu tham khảo khác về chủ đề này?

Quy trình làm việc trong R:

  1. PCA ( FactoMineRhoặc prcomp) -> Trích xuất điểm số riêng lẻ -> Nhập điểm số vàolm
  2. PCA ( FactoMinerhoặc prcomp) -> Varimax trên ma trận tải -> tính điểm riêng -> nhập điểm tronglm
  3. FA ( psych, phương pháp trích xuất varimax và pca) -> trích xuất điểm số riêng lẻ -> Nhập điểm số vàolm

Bây giờ, không có phần trăm xoay (1.) của biến thiên được giải thích là 29,32, 5,6, 3,2, trên ba trục đầu tiên. 2. và 3. các giải pháp mang lại tỷ lệ phần trăm tương tự trên ba yếu tố đầu tiên, ví dụ 12.2, 12.1, 8.2. Tất nhiên 1. giải pháp có xu hướng đẩy tất cả các tải trọng biến đổi cao trên trục đầu tiên, trong khi 2. và 3. có xu hướng phân phối tải trọng giữa các trục (đó là lý do để quay). Tôi muốn biết liệu ba quy trình công việc này có cần thiết như nhau không vì các điểm số riêng lẻ khác nhau trên các trục xoay so với các trục không được bảo vệ?


Mục đích của xoay vòng là để chia sẻ sự biến đổi giữa các thành phần, vì vậy điều đó không còn đúng nữa. Tôi không chắc ý của bạn là gì khi "phá vỡ biểu diễn của biến thiên mẫu thực" nhưng xoay không thay đổi tỷ lệ phương sai được giải thích trong mỗi mục bởi các thành phần.
Jeremy Miles

2
Xoay được thực hiện chỉ vì mục đích giải thích các thành phần. Việc giải thích chỉ cần thiết trong ngữ cảnh của "mô hình biến tiềm ẩn", tức là khi bạn coi một thành phần là một yếu tố , = bạn lấy PCA làm phân tích nhân tố [một quyết định gây tranh cãi mặc dù được cho phép]. Đó là trường hợp của bạn?
ttnphns

1
Như đã được trích dẫn chính xác ở đây , sau khi các thành phần xoay có thể không còn được sắp xếp theo thứ bậc (thứ 1 là mạnh nhất, thứ 2 là tiếp theo sau ...). Nhưng trong toàn bộ (đa biến), không có thông tin nào bị mất trong vòng quay; vì vậy điểm của tất cả các thành phần được trích xuất cùng nhau có giá trị sau khi quay như trước khi quay.
ttnphns

Tôi chỉ cần chắc chắn về điều gì đó và tôi đã đăng quy trình làm việc của mình trong R.
Fedja Blagojevic

Có thực sự tôi sử dụng PCA là EFA, nhưng tôi cũng đã thử với EFA.
Fedja Blagojevic

Câu trả lời:


7

Các thành phần chính được chuẩn hóa (theo phương sai đơn vị) sau khi xoay trực giao, chẳng hạn như varimax, chỉ đơn giản là các thành phần chính được chuẩn hóa xoay vòng (theo "thành phần chính", ý tôi là điểm PC). Trong hồi quy tuyến tính, việc chia tỷ lệ của các yếu tố dự báo riêng lẻ không có tác dụng và thay thế các yếu tố dự đoán bằng các kết hợp tuyến tính của chúng (ví dụ thông qua một vòng quay) cũng không có hiệu lực. Điều này có nghĩa là sử dụng bất kỳ điều nào sau đây trong hồi quy:

  • các thành phần chính "thô" (các phép chiếu trên các hàm riêng của ma trận cov.),
  • thành phần chính được tiêu chuẩn hóa,
  • các thành phần chính được xoay [tiêu chuẩn hóa],
  • các thành phần chính được xoay tùy chỉnh [tiêu chuẩn hóa]

R2

Tổng phương sai được ghi lại bởi các PC thô và được xoay là như nhau.

Điều này trả lời câu hỏi chính của bạn. Tuy nhiên, bạn nên cẩn thận với quy trình làm việc của mình, vì nó rất dễ bị nhầm lẫn và làm rối tung các tính toán. Cách đơn giản nhất để có được điểm số PC được xoay tiêu chuẩn là sử dụng psych::principalchức năng:

 psych::principal(data, rotate="varimax", nfactors=k, scores=TRUE)

Quy trình công việc số 2 của bạn có thể khó khăn hơn bạn nghĩ, bởi vì tải sau khi xoay varimax không trực giao, do đó, để đạt được điểm số, bạn không thể đơn giản chiếu dữ liệu lên các tải được xoay. Xem câu trả lời của tôi ở đây để biết chi tiết:

Quy trình làm việc số 3 của bạn có lẽ cũng sai, ít nhất là nếu bạn tham khảo psych::fachức năng. Nó không làm PCA; các fm="pa"phương pháp khai thác đề cập đến phương pháp "nhân tố chính" mà là dựa trên PCA, nhưng là không giống với PCA (nó là một phương pháp lặp đi lặp lại). Như tôi đã viết ở trên, bạn cần psych::principalthực hiện PCA.

Xem câu trả lời của tôi trong chuỗi sau để biết tài khoản chi tiết về PCA và varimax:


Cảm ơn những lời tốt đẹp, @Cbhihe. Tôi khá chắc chắn rằng các mod không thể đánh dấu bất kỳ câu trả lời nào được chấp nhận. Nếu bạn muốn tiếp cận OP (Fedja), bạn nên bình luận dưới câu hỏi của anh ấy và không theo câu trả lời của tôi; sau đó anh ta sẽ nhận được thông báo về bình luận của bạn. Có vẻ như anh ấy vẫn còn hoạt động trên SE ("lần cuối nhìn thấy" trên SO ngày hôm nay).
amip

@Mods, bạn có thể làm cho câu trả lời này được "chấp nhận" mà không cần tích lũy điểm OP không (vì biện pháp tốt, vì OP đã bỏ qua việc này)? Nó sẽ là một dịch vụ cho cộng đồng. Nếu các mod không thể làm điều này, tôi sẽ bắt đầu một luồng trong meta để thảo luận về loại tình huống này trong đó một câu trả lời RẤT tốt bị OP bỏ qua và do đó hiển thị ít hơn. Cuối cùng nhưng không kém phần quan trọng: cảm ơn, amip. +1
Cbhihe

@Cbhihe Nó thực sự là không thể. Vì vậy, nếu bạn muốn bắt đầu một chủ đề Meta, bạn có thể tiếp tục, nó có thể là một cuộc thảo luận thú vị.
amip

Bạn đúng về các mod chưa sẵn sàng hành động thay vì OP trong trường hợp đó. Khá nhiều bài viết Meta tồn tại trong chủ đề đó và vấn đề đã xảy ra chừng nào SE còn tồn tại, theo như tôi có thể nói. Một vấn đề thực sự mà không có một giải pháp tốt. Điều đáng tiếc. Chúc mừng.
Cbhihe
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.