Xác nhận chéo và hồi quy logistic thường


12

Tôi đang cố gắng để xác nhận chéo xác nhận cho hồi quy logistic thông thường. Mục đích của trò chơi là xác nhận mô hình được sử dụng trong phân tích ...

Trước tiên tôi xây dựng một bộ dữ liệu đồ chơi:

set.seed(1)
N <- 10000
# predictors
x1 <- runif(N)
x2 <- runif(N)
x3 <- runif(N)

# coeffs in the model
a <- c(-2,-1)
x <- -x1+2*x2+x3

# P( y ≤ i ) is given by logit^{-1} ( a[i]+x )
p <- outer(a,x, function(a,x) 1/(1+exp(-a-x)) )

# computing the probabilities of each category
q <- 1 - p[2,]
p[2,] <- p[2,] - p[1,];
p <- rbind(p,q);

# outcome
y <- ordered( apply( p, 2, function(p) which(rmultinom(1,1,p)>0) ) ) 

Bây giờ, tôi phù hợp với mô hình nó sử dụng lrmtrong gói rms.

require("rms")
fit <- lrm(y~x1+x2+x3, x=TRUE,y=TRUE)


> fit

Logistic Regression Model

lrm(formula = y ~ x1 + x2 + x3, x = TRUE, y = TRUE)

                      Model Likelihood     Discrimination    Rank Discrim.
                         Ratio Test            Indexes          Indexes   
Obs         10000    LR chi2    1165.46    R2       0.126    C       0.664
 1           2837    d.f.             3    g        0.779    Dxy     0.328
 2           2126    Pr(> chi2) <0.0001    gr       2.178    gamma   0.329
 3           5037                          gp       0.147    tau-a   0.203
max |deriv| 4e-10                          Brier    0.187                 

     Coef    S.E.   Wald Z Pr(>|Z|)
y>=2  2.1048 0.0656  32.06 <0.0001
y>=3  1.0997 0.0630  17.45 <0.0001
x1    0.8157 0.0675  12.09 <0.0001
x2   -1.9790 0.0701 -28.21 <0.0001
x3   -1.0095 0.0687 -14.68 <0.0001

Tôi hiểu phần thứ hai của kết quả: các hệ số tôi đưa vào mô hình đều ở đây (nó gần như hoàn hảo với N = 100000). Dấu hiệu bị đảo ngược bởi vì trong mô hình của tôi, tôi đã sử dụng các coeff để tính tỷ lệ cược là và , ở đây là cách khác, tôi nghĩ không có nhiều vấn đề ở đó.12

Tuy nhiên tôi không hiểu các chỉ số phân biệt đối xử và xếp hạng . Bạn có thể giúp tôi được không?! Một số gợi ý?

Mọi thứ tồi tệ hơn khi chúng ta chuyển sang xác nhận chéo ...

> validate(fit, method="cross")
          index.orig training    test optimism index.corrected  n
Dxy           0.3278   0.3278  0.3290  -0.0012          0.3291 40
R2            0.1260   0.1260  0.1313  -0.0053          0.1313 40
Intercept     0.0000   0.0000 -0.0072   0.0072         -0.0072 40
Slope         1.0000   1.0000  1.0201  -0.0201          1.0201 40
Emax          0.0000   0.0000  0.0056   0.0056          0.0056 40
D             0.1164   0.1165  0.1186  -0.0021          0.1186 40
U            -0.0002  -0.0002 -0.8323   0.8321         -0.8323 40
Q             0.1166   0.1167  0.9509  -0.8342          0.9509 40
B             0.1865   0.1865  0.1867  -0.0001          0.1867 40
g             0.7786   0.7786  0.7928  -0.0142          0.7928 40
gp            0.1472   0.1472  0.1478  -0.0007          0.1478 40

Mffff? Đây là gì? Làm thế nào để tôi giải thích điều này? Trang người đàn ông đưa ra vài lời giải thích, tôi không có quyền truy cập vào bài báo này ... và tôi cảm thấy choáng ngợp trước một đại dương phức tạp. Xin vui lòng giúp đỡ!

Câu trả lời:


11

index.origindex.correctedDxyDxyDxy= =2(C-12)CInterceptSlopeEmaxB

Các phương pháp được mô tả trong cuốn sách của tôi hoặc ghi chú khóa học trên trang web của cuốn sách: http://biostat.mc.vanderbilt.edu/rms


Cảm ơn, Frank. Cuốn sách của bạn đề cập đến gói? Nó có chứa nhiều chi tiết hơn về Dxy không?
Elvis

1
DesignrmsDxy

Cảm ơn. Tôi đã googled nó trong nhiều giờ và tôi đã không tìm thấy điều đó. Tôi sẽ mua sách của bạn.
Elvis

1

Đối với câu hỏi đầu tiên của bạn: chúng là các phép đo hiệu suất mô hình khác nhau. Bạn muốn một số trong số họ là lớn, những người khác là nhỏ. Trong thực tế, chúng có liên quan đến nhau vì vậy đề nghị bạn tập trung vào một hoặc hai

Đối với câu hỏi thứ hai của bạn: những gì bạn có trong đầu ra R đầu tiên là hiệu suất mô hình của bạn trên mẫu đào tạo. Khi bạn xác thực bằng cách xác thực chéo, bạn sẽ có được các phép đo đó trên nhiều mẫu thử và mức trung bình của chúng. Điều này cung cấp cho bạn ước tính thực tế hơn về cách mô hình của bạn thực hiện.

HTH

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.