วัดประสิทธิภาพ Model จาก Confusion Matrix

chengz
2 min readOct 3, 2019

--

การที่จะนำ Model ไปใช้งานจริงได้นั้น จำเป็นต้องมีการวัดประสิทธิภาพ Model ก่อนว่า Model นั้นมีประสิทธิภาพเพียงพอที่จะนำมาพัฒนา หรือ นำไปใช้งานด้านต่างๆ ซึ่งการวัดประสิทธิภาพนั้นส่วนใหญ่จะวัดค่าจากใน Table ข้อมูลที่มี ( Confusion Matrix )

Confusion Matrix คือตารางสำคัญในการวัดความสามารถของ machine learning ในการแก้ปัญหา classification

ตัวอย่างตาราง Confusion Matrix ขนาด 2x2

True Positive ( TP ) คือ สิ่งที่โปรแกรมทำนายว่า “จริง” และ มีค่าเป็น “ จริง ”

True Negative ( TN ) คือ สิ่งที่โปรแกรมทำนายว่า “ไม่จริง” และ มีค่า “ ไม่จริง ”

False Positive ( FP ) คือ สิ่งที่โปรแกรมทำนายว่า “จริง” แต่ มีค่าเป็น “ไม่จริง”

False Negative ( FN ) คือ สิ่งที่โปรแกรมทำนายว่า “ไม่จริง” แต่ มีค่าเป็น “จริง”

โดยทั่วไปแล้วจะมีตัววัดที่นิยมใช้กันในงานวิจัยและการทำงานต่างๆ อยู่ 3 ค่า และสมการ คือ

  1. Precision เป็นการวัดความแม่นยำของข้อมูล โดยพิจารณาแยกทีละคลาส
สมการหาค่า Precision

2. Recall เป็นการวัดความถูกต้องของ Model โดยพิจารณาแยกทีละคลาส

สมการหาค่า Recall

3. Accuracy เป็นการวัดความถูกต้องของ Model โดยพิจารณารวมทุกคลาส

สมการหาค่า Accuracy

อีกหนึ่งวิธีที่นำมาใช้คือ F1-Score

F1-Score คือค่าเฉลี่ยแบบ harmonic mean ระหว่าง precision และ recall สร้าง F1 ขึ้นมาเพื่อเป็น single metric ที่วัดความสามารถของโมเดล (ไม่ต้องเลือกระหว่าง precision, recall เพราะเฉลี่ยให้แล้ว)

ตัวอย่าง การทำ Confusion Matrix

ชุดข้อมูล การทำนายเพศชาย , หญิง

ทำเป็น Confusion Matrix

ค่าต่างๆที่ได้จาก Confusion Matrix

โดยแต่ละค่า Precision , Recall , F1-score มักจะนำไปใช้ต่างกัน ตามความเหมาะสม

Precision ใช้ ในกรณีที่หากทำนายผิด ว่าเป็น เช่น เมลสำคัญ ทำนายว่าเป็น สแปมเมล

Recall ใช้ในกรณีที่ ทำนายผิด ว่าไม่เป็น เช่น ติดเชื้อ HIV ทำนายว่า ไม่ติดเชื้อ

F1-score (ค่าประสิทธิภาพโดยรวม) นำสองค่า (Precision และ Recall) มาพิจารณาร่วมกันเพื่อความแม่นยำ และ ความครบถ้วน เช่น ใช้วิเคราะห์หุ้น

เห็นได้ว่า การที่เราพัฒนาโมเดลขึ้นมานั้น สามารถนำวิธีการเหล่านี้มาตรวจสอบว่า โมเดลของเรานั้นมีประสิทธิภาพเพียงพอ ที่จะนำไปใช้หรือไม่ ซึ่งวัดได้หลากหลายค่า ไม่เพียงแต่ Accuracy

ขอบคุณที่เข้ามาอ่านนะครับ หากผิดพลาดในส่วนใดขออภัยด้วย :D

--

--