บทนี้เรียนอะไร #
- ภาพรวมของตัวชี้วัด
จัดระเบียบแนวคิดของตัวชี้วัดสำหรับ regression, classification, ranking และ anomaly detection - ตัวอย่าง Python 3.13
ใช้ scikit-learn / matplotlib เพื่อคำนวณและแสดงผลด้วยโค้ดสั้น ๆ - การเลือกตัวชี้วัดตามงาน
ผูกความต้องการธุรกิจ (เน้น recall, เน้นกำไร ฯลฯ) กับตัวชี้วัดที่เหมาะสม
まとめ
- สรุปตัวชี้วัดตามเป้าหมาย พร้อมรูปแบบการมองผลจาก confusion matrix
- สูตรคำนวณสำหรับ MAE/MSE/RMSE, Accuracy/F1/AUC, MAP@K เป็นต้น
- รูปแบบการประเมิน (holdout / CV) และการจับคู่กับตัวชี้วัด
โครงสร้างของส่วนนี้ #
| หน้า | วัตถุประสงค์ | เนื้อหาหลัก |
|---|---|---|
| ตัวชี้วัด regression | ประเมินความคลาดเคลื่อนเชิงตัวเลข | MAE, MSE, RMSE, MAPE, R², residual plot |
| ตัวชี้วัด binary classification | ป้ายกำกับ 0/1 | Precision, Recall, F1, AUC, PR curve |
| Multi-class / multi-label | หลายป้ายกำกับ | Macro/Micro averaging, heatmap ของ confusion matrix |
| ตัวชี้วัด ranking | แนะนำ/ค้นหา | MAP@K, NDCG, Hit@K |
| Anomaly detection | ป้ายกำกับน้อยหรือไม่มี | ROC/PR, การกระจายของ score, pseudo-label |
ทุกหน้าจะเรียงลำดับ “ความหมาย → ตัวอย่างคำนวณ → การแสดงผล → ใช้เมื่อไร”
ภาพรวมกระบวนการประเมิน #
- การแบ่งข้อมูล
- Holdout: Train / Validation / Test
- Cross-validation: KFold, StratifiedKFold, TimeSeriesSplit
- การคำนวณตัวชี้วัด
- ใช้ฟังก์ชันจาก
sklearn.metrics make_scorerสำหรับใช้กับGridSearchCV
- ใช้ฟังก์ชันจาก
- สรุปและแสดงผล
- รวมคะแนนใน
pandas.DataFrameแล้ววาด boxplot / ROC / PR - รวมกับ feature importance และ residual analysis เพื่อหาจุดปรับปรุง
- รวมคะแนนใน
แนวทางเลือกตัวชี้วัด #
| มุมมอง | คำถาม | ตัวชี้วัดที่แนะนำ |
|---|---|---|
| หน่วยของความผิดพลาด | ต้องการค่าจริงหรือสัดส่วน? | MAE / RMSE / MAPE |
| โครงสร้างต้นทุน | false positive หรือ false negative สำคัญกว่า? | Precision/Recall, Fβ, cost-sensitive loss |
| สัดส่วนคลาส | ข้อมูลไม่สมดุลหรือไม่? | PR-AUC, Balanced Accuracy, ROC-AUC |
| เป้าหมายเป็น ranking | สนใจ Top-K หรือไม่? | MAP@K, NDCG, Hit@K |
| เฝ้าระวัง/แจ้งเตือน | ต้องการตรวจความเสื่อมเร็ว? | ติดตามตัวชี้วัดตามเวลา + drift metrics |
หลังจบบทนี้จะทำอะไรได้ #
- อธิบายได้ว่า “งานนี้ใช้ F1 เพราะอะไร” ในรายงานประจำ
- เลือกตัวชี้วัดในการแข่งหรือ A/B test ได้อย่างมั่นใจ
- ตั้ง alert จากการเปลี่ยนแปลงของตัวชี้วัดได้
หน้าถัดไปจะเริ่มเจาะลึกตัวชี้วัดตามประเภทงาน