OVR vs OVO: ศึกสองแนวคิดของ Machine Learning

OVR vs OVO: ศึกสองแนวคิดของ Machine Learning

กลยุทธ์ One-vs-Rest (OvR) และ One-vs-One (OvO) เป็นวิธีการแปลงปัญหา Multi-class Classification ให้เป็นชุดของ Binary Classificationเพื่อใช้กับโมเดลที่รองรับแค่การจำแนก 2 Classes เช่น Logistic Regression, SVM เป็นต้น

1. One-vs-Rest (OvR)

แนวคิด: สร้างโมเดลหนึ่งตัวต่อหนึ่งคลาส โดยเปรียบเทียบ คลาสนั้นกับคลาสอื่นทั้งหมด

ถ้ามี K คลาส → จะได้ K โมเดล

ตัวอย่าง

  • คลาส A vs (B, C, D)
  • คลาส B vs (A, C, D)
  • คลาส C vs (A, B, D)

การทำนาย: เลือกโมเดลที่ให้ probability สูงสุด หรือ score สูงสุด

ข้อดี: ใช้ง่ายและเร็วกว่า OvO เมื่อจำนวนคลาสเยอะ

ข้อเสีย: อาจมีปัญหา imbalance เพราะกลุ่ม "Rest" ใหญ่มากo โมเดลต้องแยกหลายคลาสพร้อมกัน

2. One-vs-One (OvO)

แนวคิด: สร้างโมเดลสำหรับ ทุกคู่ของคลาส

ถ้ามี K คลาส → จะได้ K(K-1)/2 โมเดล

ตัวอย่าง

  • A vs B
  • A vs C
  • B vs C

การทำนาย: ใช้ Voting จากทุกโมเดลคู่

ข้อดี: แต่ละโมเดลง่ายกว่า เพราะแยกแค่ 2 คลาส

ข้อเสีย: จำนวนโมเดลเยอะมากเมื่อคลาสเยอะ → ใช้เวลาและทรัพยากรสูง

สรุปการเลือกใช้

  • OvR เหมาะกับ จำนวนคลาสเยอะ, โมเดลที่เทรนเร็ว
  • OvO เหมาะกับ โมเดลที่เทรนช้าแต่แม่นยำ เช่น SVM, และจำนวนคลาสไม่มาก

ตารางเปรียบเทียบ One-vs-Rest (OvR) และOne-vs-One (OvO):

คุณสมบัติ

One-vs-Rest (OvR)

One-vs-One (OvO)

แนวคิด

สร้างโมเดลหนึ่งตัวต่อหนึ่งคลาส เทียบกับคลาสอื่นทั้งหมด

สร้างโมเดลสำหรับทุกคู่ของคลาส

จำนวนโมเดล

K โมเดล (ถ้ามี K คลาส)

K(K-1)/2 โมเดล (ถ้ามี K คลาส)

ความซับซ้อน

น้อยกว่า OvO

สูงกว่า OvR

การทำนาย

เลือกโมเดลที่ให้ probability สูงสุด

ใช้การโหวตจากทุกโมเดลคู่

ข้อดี

เทรนเร็วกว่าเมื่อคลาสเยอะ

โมเดลง่ายกว่าเพราะแยกแค่ 2 คลาส

ข้อเสีย

อาจมีปัญหา imbalance ในกลุ่ม Rest

จำนวนโมเดลเยอะ ใช้ทรัพยากรสูง

เหมาะกับ

จำนวนคลาสเยอะ, โมเดลเทรนเร็ว

จำนวนคลาสน้อย, โมเดลแม่นยำ เช่น SVM