嘗試另一個閾值
在前面的練習中,你使用 0.50 作為閾值,將預測機率切分成類別預測(rock 與 mine)。不過,這個分類閾值不一定符合某個特定建模問題的目標。
例如,假設你想找出那些你「非常確定」是水雷的物體。在這種情況下,你可能會用 0.90 的機率閾值,來得到「較少的預測為水雷,但每一個預測的信心更高」。
本章第 7 個練習示範了:先把機率切成預測類別,接著計算混淆矩陣的程式碼範式。
本練習屬於課程
使用 R 的 caret 進行 Machine Learning
練習說明
- 使用
ifelse()建立字元向量m_or_r:當p大於 0.9 時為正類別"M",否則為負類別"R"。 - 將
m_or_r轉為因子p_class,其層級需與test[["Class"]]相同。 - 使用
confusionMatrix()建立混淆矩陣,傳入p_class與test資料集中的"Class"欄位。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# If p exceeds threshold of 0.9, M else R: m_or_r
# Convert to factor: p_class
# Create confusion matrix