Sử dụng dấu mũ gói R, làm cách nào tôi có thể tạo đường cong ROC dựa trên kết quả xác thực chéo của hàm train()?Đường cong ROC từ dữ liệu huấn luyện trong dấu mũ
Nói, tôi làm như sau:
chức năngdata(Sonar)
ctrl <- trainControl(method="cv",
summaryFunction=twoClassSummary,
classProbs=T)
rfFit <- train(Class ~ ., data=Sonar,
method="rf", preProc=c("center", "scale"),
trControl=ctrl)
Việc đào tạo đi qua một loạt các thông số mtry và tính toán các ROC AUC. Tôi muốn xem đường cong ROC liên quan - làm cách nào để làm điều đó?
Lưu ý: nếu phương pháp được sử dụng để lấy mẫu là LOOCV, thì rfFit
sẽ chứa khung dữ liệu không trống trong khe rfFit$pred
, dường như chính xác những gì tôi cần. Tuy nhiên, tôi cần điều đó cho phương thức "cv" (xác nhận k-fold) thay vì LOO.
Ngoài ra: không, roc
chức năng được sử dụng để bao gồm trong phiên bản cũ của dấu mũ không phải là câu trả lời - đây là chức năng cấp thấp, bạn không thể sử dụng nó nếu bạn không có khả năng dự đoán cho mỗi mẫu được xác thực chéo.
http://www.inside-r.org/packages/cran/caret/docs/roc – Frash
Không, đây không phải là câu trả lời. Đầu tiên, phiên bản hiện đại của dấu mũ không có chức năng. Thứ hai, hàm cần một "biến để cắt dọc" - cụ thể là các xác suất dự đoán, nhưng làm thế nào để tôi nhận được các hàm này từ đối tượng được hàm train() trả về? – January