R
為什麼隨機森林圖中有很多條線?
我正在
Sonar
使用以下代碼在數據集上運行隨機森林算法:library(mlbench) data(Sonar) library(randomForest) n <- 208 ntrain <- 100 ntest <- 108 train.idx <- sample(1:n, ntrain, replace = FALSE) train.set <- Sonar[train.idx, ] test.set <- Sonar[-train.idx, ] rf <- randomForest(Class ~ ., data = train.set, keep.inbag = TRUE, importance = TRUE) plot(rf)
你能解釋一下為什麼我們在圖中最多有三個不同的線嗎?三行代表什麼?
不幸的是,
?plot.randomForest
根本沒有幫助。但是,它確實告訴我們plot.randomForest
不可見地返回用括號繪製的數據(嘗試(plot(rf)
),這是一個三列矩陣,其中的列稱為OOB
和。第一個很明顯是整體的袋外錯誤。另外兩個同樣明顯是兩個可能類的袋外錯誤,它們是和。M``R``M``R
至於哪一行對應哪一列,我們檢查輸出矩陣,特別是最後幾行:
> tail(plot(rf)) OOB M R [495,] 0.22 0.09259259 0.3695652 [496,] 0.22 0.09259259 0.3695652 [497,] 0.22 0.09259259 0.3695652 [498,] 0.22 0.09259259 0.3695652 [499,] 0.22 0.09259259 0.3695652 [500,] 0.22 0.09259259 0.3695652
因此,底部是
M
,中間是OOB
,頂部是R
。