Khi nào các hệ số ước tính bằng hồi quy logistic và logit tuyến tính khác nhau?


11

Khi mô hình hóa tỷ lệ liên tục (ví dụ độ che phủ thực vật theo tỷ lệ tại tứ giác khảo sát hoặc tỷ lệ thời gian tham gia vào một hoạt động), hồi quy logistic được coi là không phù hợp (ví dụ Warton & Hui (2011) arcsine là asinine: phân tích tỷ lệ trong hệ sinh thái ). Thay vào đó, hồi quy OLS sau khi chuyển đổi tỷ lệ logit, hoặc có lẽ là hồi quy beta, là phù hợp hơn.

Trong các điều kiện nào các ước tính hệ số của hồi quy tuyến tính và hồi quy logistic khác nhau khi sử dụng R's lmglm?

Lấy tập dữ liệu mô phỏng sau, trong đó chúng tôi có thể giả sử đó plà dữ liệu thô của chúng tôi (nghĩa là tỷ lệ liên tục, thay vì đại diện cho ):nsuccessesntrials

set.seed(1)
x <- rnorm(1000)
a <- runif(1)
b <- runif(1)
logit.p <- a + b*x + rnorm(1000, 0, 0.2)
p <- plogis(logit.p)

plot(p ~ x, ylim=c(0, 1))

nhập mô tả hình ảnh ở đây

Lắp một mô hình tuyến tính logit, chúng tôi có được:

summary(lm(logit.p ~ x))
## 
## Call:
## lm(formula = logit.p ~ x)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.64702 -0.13747 -0.00345  0.15077  0.73148 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 0.868148   0.006579   131.9   <2e-16 ***
## x           0.967129   0.006360   152.1   <2e-16 ***
## ---
## Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
## 
## Residual standard error: 0.208 on 998 degrees of freedom
## Multiple R-squared:  0.9586, Adjusted R-squared:  0.9586 
## F-statistic: 2.312e+04 on 1 and 998 DF,  p-value: < 2.2e-16

Năng suất hồi quy logistic:

summary(glm(p ~ x, family=binomial))
## 
## Call:
## glm(formula = p ~ x, family = binomial)
## 
## Deviance Residuals: 
##      Min        1Q    Median        3Q       Max  
## -0.32099  -0.05475   0.00066   0.05948   0.36307  
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)  0.86242    0.07684   11.22   <2e-16 ***
## x            0.96128    0.08395   11.45   <2e-16 ***
## ---
## Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 176.1082  on 999  degrees of freedom
## Residual deviance:   7.9899  on 998  degrees of freedom
## AIC: 701.71
## 
## Number of Fisher Scoring iterations: 5
## 
## Warning message:
## In eval(expr, envir, enclos) : non-integer #successes in a binomial glm!

Các ước tính hệ số hồi quy logistic sẽ luôn không thiên vị đối với các ước tính của mô hình tuyến tính logit?


1
Lưu ý một điểm khác biệt về mặt lý thuyết: với mô hình nhị thức được áp dụng cho các tỷ lệ mà bạn cho rằng các thử nghiệm đằng sau mỗi tỷ lệ là độc lập, nghĩa là, đằng sau tỷ lệ 0.1đó là "đã", ​​giả sử, 10 thử nghiệm độc lập mang lại một thành công. Đối với mô hình tuyến tính, 0.1chỉ đơn giản là một giá trị, một số biện pháp tùy ý.
ttnphns 7/03/2015

1
Tôi hơi nghi ngờ về việc áp dụng mô hình nhị thức theo tỷ lệ theo cách mà OP thực hiện có ý nghĩa đến mức nào. Rốt cuộc, family=binomialngụ ý rằng biến phụ thuộc đại diện cho số nhị thức - không phải tỷ lệ. Và làm thế nào để glmbiết đó 0.1giống như "một phần mười" chứ không phải "mười phần trăm"? Mặc dù tỷ lệ tự nó không khác nhau, nhưng điều này có ý nghĩa chính đối với cách tính sai số chuẩn.
Wolfgang

1
@Wolfgang - Tôi nhận ra (và đề cập trong bài viết của mình) rằng không phù hợp để mô hình tỷ lệ liên tục của loại này với hồi quy logistic. Tôi đã quan tâm nhiều hơn đến việc nếu / khi / cách ước tính điểm của các hệ số khác nhau.
jbaums 7/03/2015

2
@Wolfgang, bạn đúng, nhưng nó phụ thuộc vào việc thực hiện. Một số chương trình sẽ cho phép nhập tỷ lệ đầu vào dưới dạng DV và 1 thay cho các cơ sở, trong khi bộ dữ liệu được tính theo trọng số thực. Vì vậy, trông như thể bạn phân tích tỷ lệ, không tính.
ttnphns 7/03/2015

1
@ttnphns Tương tự, trong R, người ta có thể nhập tỷ lệ dưới dạng DV và cung cấp một vectơ chứa số lượng thử nghiệm cho đối số weights(mặc dù đây không phải là điều tôi đã cố gắng trong bài viết của mình, nơi tôi đã cố tình phân tích dữ liệu không chính xác).
jbaums

Câu trả lời:


5

Có lẽ điều này có thể được trả lời theo kiểu "đảo ngược" - Tức là khi chúng giống nhau?

Bây giờ thuật toán IRLS được sử dụng trong hồi quy logistic cung cấp một số cái nhìn sâu sắc ở đây. Khi hội tụ, bạn có thể biểu thị các hệ số mô hình là:

β^logistic=(XTWX)1XTWz

Trong đó là ma trận trọng số đường chéo có thuật ngữ và là phản hồi giả có phần tử ith . Lưu ý rằng , điều này làm cho hồi quy logistic có vẻ rất giống với bình phương tối thiểu có trọng số trên một "loại logit" về số lượng. Lưu ý rằng tất cả các mối quan hệ đều tiềm ẩn trong hồi quy logistic (ví dụ phụ thuộc vào phụ thuộc vào ).WWii=nipi(1pi)z vmộtr(zi-x T i β )=W - 1 i i zzi=xiTβ^logistic+yinipinipi(1pi)var(zixiTβ^)=Wii1zzβz

Vì vậy, tôi sẽ đề nghị rằng sự khác biệt chủ yếu là trong việc sử dụng bình phương tối thiểu có trọng số (logistic) so với bình phương tối thiểu không trọng số (ols trên logits). Nếu bạn tính trọng số của logits bởi (trong đó là số lượng "sự kiện" và số lượng "thử nghiệm") trong cuộc gọi bạn sẽ nhận được kết quả tương tự hơn.y ( 1 - y / n ) y nlog(y)log(ny)y(1y/n)ynlm ()


Ấn tượng. Bạn có thể vui lòng hiển thị câu cuối cùng của bạn bằng mã R bằng cách sử dụng dữ liệu mô phỏng đã cho không? Cảm ơn!
JellicleCat 11/03/2015

2

Xin đừng ngần ngại chỉ ra nếu tôi sai.

Đầu tiên, tôi có thể nói, trong lần thứ hai, bạn gọi glmsai cách! Để phù hợp với hồi quy logistic glm, phản hồi phải là biến phân loại (nhị phân), nhưng bạn sử dụng p, một biến số! Tôi phải nói warninglà quá nhẹ nhàng để cho người dùng biết lỗi của họ ...

Và, như bạn có thể mong đợi, bạn có được các ước tính hệ số tương tự bởi hai mức phù hợp chỉ bằng COINCIDENCE. Nếu bạn thay thế logit.p <- a + b*x + rnorm(1000, 0, 0.2)bằng logit.p <- a + b*x + rnorm(1000, 0, 0.7), ví dụ, thay đổi phương sai của thuật ngữ lỗi từ 0.2sang 0.7, thì kết quả của hai sự phù hợp sẽ rất khác nhau, mặc dù sự phù hợp thứ hai ( glm) hoàn toàn vô nghĩa ...

Hồi quy logistic được sử dụng để phân loại (nhị phân), vì vậy bạn nên có phản ứng phân loại, như đã nêu ở trên. Ví dụ: các quan sát của phản hồi phải là một chuỗi "thành công" hoặc "thất bại", chứ không phải là một chuỗi "xác suất (tần suất)" như trong dữ liệu của bạn. Đối với một tập dữ liệu phân loại nhất định, bạn chỉ có thể tính toán một tần số tổng thể cho "hồi đáp = thành công" hoặc "phản hồi = thất bại", thay vì một chuỗi. Trong dữ liệu bạn tạo, không có biến phân loại nào cả, vì vậy không thể áp dụng hồi quy logistic. Bây giờ bạn có thể thấy, mặc dù chúng có ngoại hình tương tự, hồi quy logit-linear (như bạn gọi nó) chỉ là một vấn đề ĐĂNG KÝ tuyến tính thông thường (nghĩa là phản hồi là một biến số) sử dụng phản hồi được chuyển đổi (giống như chuyển đổi sqr hoặc sqrt),

Thông thường, hồi quy tuyến tính được trang bị thông qua Bình phương tối thiểu thông thường (OLS), giúp giảm thiểu tổn thất bình phương cho bài toán hồi quy; hồi quy logistic được trang bị thông qua Ước tính khả năng tối đa (MLE), giúp giảm thiểu tổn thất log cho vấn đề phân loại. Dưới đây là một tài liệu tham khảo về các chức năng mất Chức năng mất, Deva Ramanan. Trong ví dụ đầu tiên, bạn coi đó plà phản hồi và phù hợp với mô hình hồi quy tuyến tính thông thường thông qua OLS; trong ví dụ thứ hai, bạn nói Rrằng bạn đang phù hợp với mô hình hồi quy logistic family=binomial, do đó, Rphù hợp với mô hình bằng MLE. Như bạn có thể thấy, trong mô hình đầu tiên, bạn có được kiểm tra t và kiểm tra F, là các đầu ra cổ điển của OLS phù hợp với hồi quy tuyến tính. Trong mô hình thứ hai, kiểm tra ý nghĩa của hệ số dựa trên zthay vìt, đó là đầu ra cổ điển của MLE phù hợp với hồi quy logistic.


Câu hỏi hay (+1) và câu trả lời hay (+1). Tôi đã học được một cái gì đó mới.
Alexanderr Blekh 7/03/2015

1
Tôi sẽ đồng ý. Tuy nhiên, điều này logistic regression is a CLASSIFICATION problemcó thể bị hiểu sai theo nghĩa là nó chỉ có giá trị miễn là nó có thể phân loại tốt. Điều đó sẽ sai khi nghĩ, bởi vì một mô hình "tối ưu" về mặt lý thuyết và theo cách nó mô hình xác suất đôi khi có thể phân loại tồi tệ hơn một mô hình không tốt.
ttnphns 7/03/2015

@ttnphns Cảm ơn bình luận của bạn! Tôi nghĩ rằng đó là một quy ước để gọi nó là một vấn đề phân loại nếu phản hồi là phân loại. Mô hình có hoạt động tốt hay không là quan trọng, nhưng có thể không ảnh hưởng đến việc đặt tên.
JellicleCat 7/03/2015

Cảm ơn @JellicleCat - Tôi biết rằng dữ liệu tỷ lệ của loại này không phù hợp với hồi quy logistic, nhưng tò mò về các trường hợp theo đó ước tính hệ số sẽ khác với các tỷ lệ biến đổi logit. Cảm ơn ví dụ của bạn - rõ ràng rằng với phương sai tăng, ước tính hệ số phân kỳ.
jbaums
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.