Làm thế nào các lỗi tiêu chuẩn được tính toán cho các giá trị được trang bị từ hồi quy logistic?


29

Khi bạn dự đoán một giá trị được trang bị từ mô hình hồi quy logistic, các lỗi tiêu chuẩn được tính như thế nào? Ý tôi là về các giá trị được trang bị , không phải cho các hệ số (liên quan đến ma trận thông tin của Fishers).

Tôi chỉ tìm ra cách lấy các số với R(ví dụ, ở đây trên r-help hoặc ở đây trên Stack Overflow), nhưng tôi không thể tìm thấy công thức.

pred <- predict(y.glm, newdata= something, se.fit=TRUE)

Nếu bạn có thể cung cấp nguồn trực tuyến (tốt nhất là trên trang web của trường đại học), điều đó thật tuyệt vời.

Câu trả lời:


35

Dự đoán chỉ là sự kết hợp tuyến tính của các hệ số ước tính. Các hệ số là bình thường không có triệu chứng, do đó, một sự kết hợp tuyến tính của các hệ số đó cũng sẽ không có triệu chứng bình thường. Vì vậy, nếu chúng ta có thể thu được ma trận hiệp phương sai cho các ước tính tham số, chúng ta có thể nhận được lỗi tiêu chuẩn cho sự kết hợp tuyến tính của các ước tính đó một cách dễ dàng. Nếu tôi biểu thị ma trận hiệp phương sai như và và viết các hệ số cho kết hợp tuyến tính của tôi trong một vector như C thì sai số chuẩn chỉ là ΣCCΣC

# Making fake data and fitting the model and getting a prediction
set.seed(500)
dat <- data.frame(x = runif(20), y = rbinom(20, 1, .5))
o <- glm(y ~ x, data = dat)
pred <- predict(o, newdata = data.frame(x=1.5), se.fit = TRUE)

# To obtain a prediction for x=1.5 I'm really
# asking for yhat = b0 + 1.5*b1 so my
# C = c(1, 1.5)
# and vcov applied to the glm object gives me
# the covariance matrix for the estimates
C <- c(1, 1.5)
std.er <- sqrt(t(C) %*% vcov(o) %*% C)

> pred$se.fit
[1] 0.4246289
> std.er
          [,1]
[1,] 0.4246289

Chúng tôi thấy rằng phương pháp 'bằng tay' mà tôi hiển thị cho cùng một lỗi tiêu chuẩn như được báo cáo qua predict


2
Tôi có một câu hỏi liên quan. Khi chúng tôi dự đoán một giá trị và khoảng tin cậy trên hồi quy tuyến tính (không phải logistic), chúng tôi kết hợp phương sai lỗi / lỗi tiêu chuẩn. Nhưng hồi quy logistic không. Sự khác biệt này có xuất phát từ thực tế là các giá trị quan sát của hồi quy logistic là 0 hoặc 1 và không có điểm nào trong việc ước tính phương sai lỗi? Tôi cảm thấy như chúng ta ít nhất nên làm một cái gì đó, nhưng tôi có thể đang thiếu một cái gì đó.
dùng2456873

3
Câu hỏi cũ, nhưng chủ đề này đã giúp tôi ngay bây giờ, vì vậy đây là: Logit quan sát 0 hoặc 1, nhưng nó dự đoán một xác suất. Khi bạn nhận được một lỗi tiêu chuẩn của một giá trị được trang bị, đó là trên thang đo của bộ dự báo tuyến tính. Bạn có được khoảng tin cậy về xác suất bằng cách nói chuyện logit (fit +/- 1.96 * se.fit)
generic_user

Chỉ cần lưu ý rằng điều này sử dụng khoảng bình thường tiệm cận, điều này có thể khá tệ cho mô hình logistic (tìm kiếm trang web này cho hiện tượng Hauss-Donner). Đối với các hệ số, điều đó có thể được khắc phục bằng cách lập hồ sơ khả năng ví dụ (được sử dụng bởi hàm confint trong MASS). Đó không phải là có thể cho các dự đoán tuyến tính ...
Kjetil b Halvorsen

2
Điều này không đúng với những gì OP yêu cầu; GLM bạn phù hợp sử dụng chức năng liên kết danh tính, không phải chức năng liên kết logit. Bạn nên có phù hợp o <- glm(y ~ x, data = dat, family = binomial)thay thế. Bạn có thể vui lòng sửa lại? Giải thích của bạn hoạt động để ước tính tỷ lệ cược log SE (sử dụng type = "link"tùy chọn), nhưng không phải là SE khi predictsử dụng type = "response"tùy chọn.
Zhe Zhang
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.