Ở đâ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+?
Ở đâ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:
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 β
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.
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?).
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 = 1nơ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ứ.
Sau đó:
và
Do vậy
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.
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)