Làm thế nào bạn có thể xử lý không ổn định


13

Độ ổn định Beta trong hồi quy tuyến tính với đa cộng tuyến cao?

Giả sử trong hồi quy tuyến tính, các biến x1x2 có đa cộng tuyến cao (tương quan là khoảng 0,9).

Chúng tôi lo ngại về β ổn định hệ số vì vậy chúng tôi phải đối xử với đa cộng tuyến.

Giải pháp sách giáo khoa sẽ chỉ là vứt bỏ một trong các biến.

Nhưng chúng tôi không muốn mất thông tin hữu ích bằng cách vứt bỏ các biến.

Bất kỳ đề xuất?


5
Bạn đã thử một số loại chương trình chính quy (ví dụ hồi quy sườn)?
Néstor

Câu trả lời:


11

Bạn có thể thử phương pháp hồi quy sườn trong trường hợp khi ma trận tương quan gần với số ít (tức là các biến có tương quan cao). Nó sẽ cung cấp cho bạn một ước tính mạnh mẽ của .β

Câu hỏi duy nhất là làm thế nào để chọn tham số quy tắc . Đó không phải là một vấn đề đơn giản, mặc dù tôi đề nghị thử các giá trị khác nhau.λ

Hi vọng điêu nay co ich!


2
Cross-validation là điều bình thường để làm gì để chọn ;-). λ
Néstor

thực sự (+1 cho câu trả lời và bình luận Nestors'), và nếu bạn thực hiện các phép tính trong 'hình thức kinh điển' (sử dụng một phân hủy eigen của , bạn có thể tìm ra λ giảm thiểu nghỉ-one-out lỗi cross-validation bởi Phương pháp của Newton rất rẻ.XTXλ
Dikran Marsupial 17/07 '

cảm ơn rất nhiều! Bất kỳ hướng dẫn / ghi chú nào về cách thực hiện điều đó bao gồm xác nhận chéo trong R?
Luna

Hãy xem chương 3 trong cuốn sách này: stanford.edu/~hastie/local.ftp/Springer/ESLII_print5.pdf . Việc thực hiện hồi quy sườn được thực hiện trong R bởi một số tác giả (Google là bạn của bạn!).
Néstor

2
Bạn có thể sử dụng lm.ridgethói quen trong gói MASS. Nếu bạn vượt qua nó một loạt các giá trị cho , ví dụ như, một cuộc gọi như , bạn sẽ nhận lại số liệu thống kê kiểm chứng chéo khái quát hóa trong , và có thể vẽ chúng chống lại λ : để chọn mức tối thiểu. λfoo <- lm.ridge(y~x1+x2,lambda=seq(0,10,by=0.1))fooλplot(foo$GCV~foo$lambda)
Jbowman

10

Vâng, có một phương pháp ad hoc mà tôi đã sử dụng trước đây. Tôi không chắc thủ tục này có tên hay không nhưng nó có ý nghĩa bằng trực giác.

Giả sử mục tiêu của bạn là phù hợp với mô hình

Yi=β0+β1Xi+β2Zi+εi

trong đó hai yếu tố dự đoán - - có mối tương quan cao. Như bạn đã chỉ ra, sử dụng cả hai trong cùng một mô hình có thể làm những điều kỳ lạ đối với ước tính hệ số và giá trị p . Một thay thế là để phù hợp với mô hìnhXi,Zip

Zi=α0+α1Xi+ηi

Sau đó, phần dư sẽ không tương thích với X i và theo một cách nào đó, có thể được coi là một phần của Z i không bị giảm bởi mối quan hệ tuyến tính của nó với X i . Sau đó, bạn có thể tiến hành để phù hợp với mô hìnhηiXiZiXi

Yi=θ0+θ1Xi+θ2ηi+νi

sẽ nắm bắt tất cả các hiệu ứng của mô hình đầu tiên (và thực tế, sẽ có cùng giống như mô hình đầu tiên) nhưng các dự đoán không còn được kết hợp nữa.R2

Chỉnh sửa: OP đã yêu cầu giải thích lý do tại sao phần dư không, theo định nghĩa, có mối tương quan mẫu bằng 0 với bộ dự đoán khi bạn bỏ qua việc chặn như họ làm khi bao gồm phần chặn. Điều này là quá dài để đăng trong các ý kiến ​​vì vậy tôi đã thực hiện một chỉnh sửa ở đây. Đạo hàm này không đặc biệt khai sáng (tiếc là tôi không thể đưa ra một lập luận trực quan hợp lý) nhưng nó cho thấy những gì OP yêu cầu :

Khi chặn được bỏ qua trong hồi quy tuyến tính đơn giản , β = Σ x i y i , vì vậyei=yi-xixiyiβ^=xiyixi2 . Mối tương quan mẫu giữaxieilà tỉ lệ với ¯ x e - ¯ x ¯ e nơi ¯ biểu thị giá trị trung bình mẫu số lượng dưới quầy bar. Bây giờ tôi sẽ chỉ ra điều này không nhất thiết phải bằng không.ei=yixixiyixi2xiei

xe¯x¯e¯
¯

Đầu tiên chúng ta có

xe¯=1n(xiyixi2xiyixi2)=xy¯(1xi2xi2)=0

nhưng

x¯e¯=x¯(y¯x¯xy¯x2¯)=x¯y¯x¯2xy¯x2¯

eixix¯e¯0

y¯=x¯xy¯x2¯

x,y


This reminds me of partial regression plots.
Andy W

3
This sounds like an approximation to replacing (X,Z) by their principal components.
whuber

3
One thing I had in mind is that PCA generalizes easily to more than two variables. Another is that it treats X and Z symmetrically, whereas your proposal appears arbitrarily to single out one of these variables. Another thought was that PCA provides a disciplined way to reduce the number of variables (although one must be cautious about that, because a small principal component may be highly correlated with the dependent variable).
whuber

1
Hi Macro, Thank you for the excellent proof. Yeah now I understand it. When we talk about sample correlation between x and residuals, it requires the intercept term to be included for the sample correlation to be 0. On the other hand, when we talk about orthogonality between x and residuals, it doesn't require the intercept term to be included, for the orthogonality to hold.
Luna

1
@Luna, tôi không đặc biệt không đồng ý với việc sử dụng hồi quy sườn - đây chỉ là điều đầu tiên xảy ra với tôi (tôi đã trả lời trước khi được đề xuất). Một điều tôi có thể nói là ước tính hồi quy sườn núi bị sai lệch, do đó, ở một khía cạnh nào đó, bạn thực sự ước tính một lượng hơi khác (thu nhỏ) so với hồi quy thông thường, khiến cho việc giải thích các hệ số có thể khó khăn hơn (như gung ám chỉ). Ngoài ra, những gì tôi đã mô tả ở đây chỉ đòi hỏi sự hiểu biết về hồi quy tuyến tính cơ bản và có thể hấp dẫn trực quan hơn đối với một số người.
Macro

4

Tôi thích cả hai câu trả lời cho đến nay. Hãy để tôi thêm một vài điều.

Một tùy chọn khác là bạn cũng có thể kết hợp các biến. Điều này được thực hiện bằng cách tiêu chuẩn hóa cả hai (nghĩa là biến chúng thành điểm z), lấy trung bình chúng và sau đó khớp mô hình của bạn chỉ với biến tổng hợp. Đây sẽ là một cách tiếp cận tốt khi bạn tin rằng chúng là hai biện pháp khác nhau của cùng một cấu trúc cơ bản. Trong trường hợp đó, bạn có hai phép đo bị nhiễm lỗi. Giá trị thực sự có khả năng nhất cho biến bạn thực sựquan tâm là ở giữa chúng, do đó trung bình chúng cho một ước tính chính xác hơn. Bạn chuẩn hóa chúng trước để đặt chúng lên cùng một thang đo, sao cho các vấn đề danh nghĩa không làm ô nhiễm kết quả (ví dụ: bạn sẽ không muốn lấy trung bình một số phép đo nhiệt độ nếu một số là Fahrenheit và một số là Celsius). Tất nhiên, nếu chúng đã ở cùng một thang điểm (ví dụ: một số cuộc thăm dò dư luận có tương quan cao), bạn có thể bỏ qua bước đó. Nếu bạn nghĩ rằng một trong các biến của bạn có thể chính xác hơn các biến khác, bạn có thể thực hiện trung bình có trọng số (có thể sử dụng các đối ứng của các lỗi đo lường).

If your variables are just different measures of the same construct, and are sufficiently highly correlated, you really could just throw one out without losing much information. As an example, I was actually in a situation once, where I wanted to use a covariate to absorb some of the error variance and boost power, but where I didn't care about that covariate--it wasn't germane substantively. I had several options available and they were all correlated with each other r>.98. I basically picked one at random and moved on, and it worked fine. I suspect I would have lost power burning two extra degrees of freedom if I had included the others as well by using some other strategy. Of course, I could have combined them, but why bother? However, this depends critically on the fact that your variables are correlated because they are two different versions of the same thing; if there's a different reason they are correlated, this could be totally inappropriate.

Như điều đó ngụ ý, tôi khuyên bạn nên suy nghĩ về những gì ẩn sau các biến tương quan của bạn. Đó là, bạn cần một lý thuyết về lý do tại sao chúng có mối tương quan cao để thực hiện công việc tốt nhất là chọn chiến lược nào sẽ sử dụng. Ngoài các biện pháp khác nhau của cùng một biến tiềm ẩn, một số khả năng khác là một chuỗi nguyên nhân (nghĩa làX1X2Y) và các tình huống phức tạp hơn trong đó các biến của bạn là kết quả của nhiều lực nhân quả, một số biến giống nhau cho cả hai. Có lẽ trường hợp cực đoan nhất là biến số triệt tiêu, mà @whuber mô tả trong bình luận của mình dưới đây. Chẳng hạn, đề xuất của Macro, giả sử rằng bạn chủ yếu quan tâm đếnXvà tự hỏi về sự đóng góp bổ sung củaZ after having accounted for X's contribution. Thus, thinking about why your variables are correlated and what you want to know will help you decide which (i.e., x1 or x2) should be treated as X and which Z. The key is to use theoretical insight to inform your choice.

I agree that ridge regression is arguably better, because it allows you to use the variables you had originally intended and is likely to yield betas that are very close to their true values (although they will be biased--see here or here for more information). Nonetheless, I think is also has two potential downsides: It is more complicated (requiring more statistical sophistication), and the resulting model is more difficult to interpret, in my opinion.

I gather that perhaps the ultimate approach would be to fit a structural equation model. That's because it would allow you to formulate the exact set of relationships you believe to be operative, including latent variables. However, I don't know SEM well enough to say anything about it here, other than to mention the possibility. (I also suspect it would be overkill in the situation you describe with just two covariates.)


4
Re the first point: Let vector X1 have a range of values and let vector e have small values completely uncorrelated with X1 so that X2=X1+e is highly correlated with X1. Set Y=e. In the regression of Y against either X1 or X2 you will see no significant or important results. In the regression of Y against X1 and X2 you will get an extremely good fit, because Y=X2X1. Thus, if you throw out either of X1 or X2, you will have lost essentially all information about Y. Whence, "highly correlated" does not mean "have equivalent information about Y".
whuber

Thanks a lot Gung! Q1. Why does this approach work: "This is done by standardizing both (i.e., turning them into z-scores), averaging them, and then fitting your model with only the composite variable. "? Q2. Why would Ridge Regression be better? Q3. Why would SEM be better? Anybody please shed some lights on this? Thank you!
Luna

Hi Luna, glad to help. I'm actually going to re-edit this; @whuber was more right than I had initially realized. I'll try to put in more to help w/ your additional questions, but it'll take a lot, so it might be a while. We'll see how it goes.
gung - Reinstate Monica
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.