使用聲納資料做邏輯斯迴歸

使用 R 的 caret 進行 Machine Learning

Max Kuhn

Software Engineer at RStudio and creator of caret

分類模型

  • 類別(質性)目標變數
  • 例:貸款會違約嗎?
  • 仍屬於監督式學習
  • 以訓練/測試切分評估效能
  • 使用 Sonar 資料集
  • 目標:區分岩石與水雷
使用 R 的 caret 進行 Machine Learning

範例:Sonar 資料

# Load the Sonar dataset
library(mlbench)
data(Sonar)
# Look at the data
Sonar[1:6, c(1:5, 61)]
      V1     V2     V3     V4     V5 Class
1 0.0200 0.0371 0.0428 0.0207 0.0954     R
2 0.0453 0.0523 0.0843 0.0689 0.1183     R
3 0.0262 0.0582 0.1099 0.1083 0.0974     R
4 0.0100 0.0171 0.0623 0.0205 0.0205     R
5 0.0762 0.0666 0.0481 0.0394 0.0590     R
6 0.0286 0.0453 0.0277 0.0174 0.0384     R
使用 R 的 caret 進行 Machine Learning

資料切分

  • 隨機將資料切成訓練集與測試集
  • 採用 60/40 切分,而非 80/20
  • Sonar 資料集較小,60/40 可得到更大且更可靠的測試集
使用 R 的 caret 進行 Machine Learning

資料切分

# Randomly order the dataset
rows <- sample(nrow(Sonar))
Sonar <- Sonar[rows, ]
# Find row to split on
split <- round(nrow(Sonar) * 0.60)
train <- Sonar[1:split, ]
test <- Sonar[(split + 1):nrow(Sonar), ]
# Confirm test set size
nrow(train) / nrow(Sonar)
0.6009615
使用 R 的 caret 進行 Machine Learning

一起來練習吧!

使用 R 的 caret 進行 Machine Learning

Preparing Video For Download...