隨機森林與葡萄酒

使用 R 的 caret 進行 Machine Learning

Max Kuhn

Software Engineer at RStudio and creator of caret

隨機森林

  • 常見的機器學習模型
  • 新手友善
  • 對過度擬合具韌性
  • 可得到高準確、非線性模型
使用 R 的 caret 進行 Machine Learning

隨機森林

  • 與線性模型不同,具有超參數
  • 超參數需手動設定
  • 會影響擬合效果,且因資料集而異
  • 預設值多半可用,但有時需調整
使用 R 的 caret 進行 Machine Learning

隨機森林

  • 先從簡單的決策樹開始
  • 決策樹速度快,但準確度不高

使用 R 的 caret 進行 Machine Learning

隨機森林

  • 透過訓練多棵樹提高準確度
  • 每棵樹用資料的自助抽樣來訓練
  • 稱為「自助聚合」或「bagging」
  • 在每次分割時隨機抽取欄位
使用 R 的 caret 進行 Machine Learning

執行隨機森林

# 載入資料
library(caret)
library(mlbench)
data(Sonar)

# 設定隨機種子
set.seed(42)
model <- train(
  Class ~ ., 
  data = Sonar, 
  method = "ranger"
)

貼上的影像-1530.png

使用 R 的 caret 進行 Machine Learning

視覺化結果

# 繪製結果
plot(model)

使用 R 的 caret 進行 Machine Learning

一起來練習吧!

使用 R 的 caret 進行 Machine Learning

Preparing Video For Download...