ลองใช้ threshold ค่าอื่น
ในแบบฝึกหัดก่อนหน้า คุณใช้ threshold ที่ 0.50 เพื่อตัดสินใจจากความน่าจะเป็นที่พยากรณ์ไว้ว่าวัตถุแต่ละชิ้นเป็นอะไร (หิน หรือ ทุ่นระเบิด) อย่างไรก็ตาม threshold นี้ไม่ได้เหมาะกับทุกโจทย์เสมอไป
ตัวอย่างเช่น สมมติว่าต้องการระบุเฉพาะวัตถุที่มั่นใจสูงมากว่าเป็นทุ่นระเบิด ในกรณีนี้ อาจต้องการใช้ threshold ที่ 0.90 เพื่อให้ พยากรณ์ว่าเป็นทุ่นระเบิดน้อยลง แต่มีความเชื่อมั่นสูงขึ้นในแต่ละการพยากรณ์
รูปแบบโค้ดสำหรับการแปลงความน่าจะเป็นเป็นคลาสที่พยากรณ์ แล้วคำนวณ confusion matrix ได้แสดงไว้ในแบบฝึกหัดที่ 7 ของบทนี้
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Machine Learning ด้วย caret ใน R
คำแนะนำการฝึกหัด
- ใช้
ifelse()เพื่อสร้าง character vector ชื่อm_or_rโดยให้เป็นคลาสบวก"M"เมื่อpมากกว่า 0.9 และเป็นคลาสลบ"R"ในกรณีอื่น - แปลง
m_or_rให้เป็น factor ชื่อp_classโดยมี levels เหมือนกับtest[["Class"]] - สร้าง confusion matrix ด้วย
confusionMatrix()โดยส่งp_classและคอลัมน์"Class"จากชุดข้อมูลtestเป็นอาร์กิวเมนต์
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# If p exceeds threshold of 0.9, M else R: m_or_r
# Convert to factor: p_class
# Create confusion matrix