Quy tắc .632+ trong bootstrapping là gì?


107

Ở đây @gung làm tham chiếu đến quy tắc .632+. Tìm kiếm nhanh trên Google không mang lại câu trả lời dễ hiểu về quy tắc này có nghĩa là gì và cho mục đích gì được sử dụng. Ai đó vui lòng làm sáng tỏ quy tắc .632+?

Câu trả lời:


115

Tôi sẽ đến công cụ ước tính 0,632, nhưng nó sẽ là một sự phát triển hơi dài:

Giả sử chúng ta muốn dự đoán với X sử dụng chức năng f , nơi e có thể phụ thuộc vào một số tham số được ước tính bằng cách sử dụng dữ liệu ( Y , X ) , ví dụ: f ( X ) = X βYXff(Y,X)f(X)=Xβ

Một ước tính ngây thơ về lỗi dự đoán là trong đóLlà một số hàm mất, ví dụ mất bình phương lỗi. Điều này thường được gọi là lỗi đào tạo. Efron et al. gọi đó là tỷ lệ lỗi rõ ràng hoặc tỷ lệ tái lập. Nó không tốt lắm vì chúng tôi sử dụng dữ liệu của mình(xi,yi)để phù hợp vớif. Điều này dẫn đến¯errlà xuống thiên vị. Bạn muốn biết mô hìnhfcủa bạn làm tốt như thế nàotrong việc dự đoán các giá trị mới.

err¯=1Ni=1NL(yi,f(xi))
L(xi,yi)ferr¯f

Thông thường chúng tôi sử dụng xác thực chéo như một cách đơn giản để ước tính lỗi dự đoán mẫu phụ dự kiến ​​(mô hình của chúng tôi làm như thế nào trên dữ liệu không có trong tập huấn luyện của chúng tôi?).

Err=E[L(Y,f(X))]

Một cách phổ biến để làm điều này là xác thực chéo -Fold. Chia dữ liệu của bạn thành các nhóm K (ví dụ 10). Đối với mỗi nhóm k , điều chỉnh mô hình của bạn trên các nhóm K - 1 còn lại và kiểm tra mô hình đó trên nhóm thứ k . Lỗi dự đoán mẫu phụ được xác thực chéo của chúng tôi chỉ là trung bình E r r C V = 1KKkK1knơiκđược một số chức năng chỉ số cho biết phân vùng mà quan sáttôiđược phân bổ vàf-κ(i)(xi)là giá trị dự đoán củaxisử dụng dữ liệu không có trongκ(i)thiết lập thứ.

ErrCV=1Ni=1NL(yi,fκ(i)(xi))
κifκ(i)(xi)xiκ(i)

K=NK

X=(x1,,xN)BZ1,,ZBZiN

Errboot=1Bb=1B1Ni=1NL(yi,fb(xi))
fb(xi)xibfb(xi)xi
Errboot(1)=1Ni=1N1|Ci|bCiL(yi,fb(xi))
Cii|Ci|Errboot(1)0.632N
Err.632=0.368err¯+0.632Errboot(1)
err¯=1Ni=1NL(yi,f(xi))

err¯=0err¯Errboot(1)

Err.632+=(1w)err¯+wErrboot(1)
w=0.63210.368RandR=Errboot(1)err¯γerr¯
γyixi

γ=1N2i=1Nj=1NL(yi,f(xj))

RErrboot(1)=err¯


2
Đó là những câu hỏi hay, @rpierce, nhưng chúng hơi di chuyển ra khỏi chủ đề trung tâm của chủ đề này. Sẽ tốt hơn, thông minh về tổ chức CV, để có chúng trong một chủ đề mới, để mọi người dễ dàng tìm thấy và sử dụng thông tin đó sau đó.
gung



1
err¯=1Ni=1NL(yi,f(xi))1ni=1n(yiy^i)2

1
@rpierce, vâng! Tôi đã có một chút chung chung vì tôi đã viết lại rất nhiều tài liệu này từ một số ghi chú lớp học.
bdeonovic

53

Sn{1:n}S(1e1)n0.63212056n

S={s1,,sn}i=1,,n{1:n}m{1:n}

Sau đó:

P(si=m)=1/n

P(sim)=11/n

1ini

Do vậy

P(mS)=1P(mS)=1P(i=1nsim)=1i=1nP(sim)=1(11/n)n1e1

n

n <- 100
fx01 <- function(ll,n){
    a1 <- sample(1:n, n, replace=TRUE)
    length(unique(a1))/n
}
b1 <- c(lapply(1:1000,fx01,n=100), recursive=TRUE)
mean(b1)

1. Bradley Efron và Robert Tibshirani (1997). Những cải tiến về Xác thực chéo: Phương pháp Bootstrap .632+ . Tạp chí của Hiệp hội Thống kê Hoa Kỳ , Tập. 92, số 438, trang 548--560.


3
đây là tài liệu dành cho bạn trong tài liệu tham khảo - stat.washington.edu/cifts/stat527/s14/readings/ Kẻ

1
(x1,,xn)S1,,SnP(Si=k)=1nI{1,,n}(k)P(i=1n{Si=k})=1P(i=1n{Sik})=1i=1nP{Sik}=1(11/n)n11/e63.21%

4
1e10.63212056

1
Câu trả lời này cũng rất hay, trên thực tế, câu trả lời được chấp nhận cộng với câu trả lời này thực sự cung cấp câu trả lời đầy đủ cho câu hỏi của tôi - nhưng giữa hai câu này tôi cảm thấy như của Benjamin gần với câu trả lời của tôi hơn. Điều đó đang được nói - tôi thực sự muốn nó có thể chấp nhận cả hai.
russellpierce

1
@rpierce: Để trích dẫn Celine Dion, " Câu chuyện xưa như thời gian / bài hát xưa như vần điệu / Vẻ đẹp và con thú". : P
Nick Stauner

8

c


3
Tôi không nghĩ rằng tôi hiểu hầu hết những điều bạn nói ở đây Frank. Bạn có sẵn sàng làm rõ? Có vẻ như bạn có một cái gì đó độc đáo và quan trọng để đóng góp.
russellpierce

Vui mừng mở rộng nếu bạn có thể nêu một câu hỏi cụ thể.
Frank Harrell

1
Những quy tắc tính điểm này đã ... đánh giá chất lượng của kết quả bootstrap? Bạn có thể cung cấp một liên kết mô tả quy tắc chấm điểm "được phân loại" chính xác không, tôi gặp khó khăn khi tưởng tượng loại quái vật nào có thể. Trong số các kết quả hàng đầu cho "sự lạc quan của Efron-Gong" trên Google, đại đa số dường như là các bài đăng của bạn ... nó khác với việc tôi nói "bootstrap" như thế nào nếu không có vòng loại? Tôi nên tìm đến bài báo Effron và Gong nào? Dường như có một vài.
russellpierce

3
Xem bài báo gốc về 0,632 sử dụng và xác định tỷ lệ được phân loại chính xác (Efron & Tibshirani JASA 92: 548; 1997). Bootstrap lạc quan là một biến thể của bootstrap để ước tính độ lệch. Nó được mô tả trong Công: JASA 85:20; 1990.
Frank Harrell

2

Những câu trả lời rất hữu ích. Tôi không thể tìm ra cách nào để chứng minh điều đó bằng toán học vì vậy tôi đã viết một số mã Python hoạt động khá tốt:

    from numpy import mean
    from numpy.random import choice

    N = 3000

    variables = range(N)

    num_loop = 1000
    # Proportion of remaining variables
    p_var = []

    for i in range(num_loop):
        set_var = set(choice(variables, N))
        p=len(set_var)/float(N)
        if i%50==0:
            print "value for ", i, " iteration ", "p = ",p
        p_var.append(p)

    print "Estimator of the proportion of remaining variables, ", mean(p_var)
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.