ใน Machine Learning เมื่อเราเทรนโมเดลใช้ในงานต่าง ๆ เราจะมีการคำนวน Metrics เพื่อแสดงผลให้ผู้ใช้ทราบว่า โมเดลนั้น ๆ ทำงานได้ดีแค่ไหน ที่เป็นที่นิยมได้แก่ Accuracy, Precision, Recall และ F1 Score โดยทั้งหมดเราสามารถคำนวนได้จาก Confusion Matrix หรือ Error Matrix

เรามาเริ่มกันเลยดีกว่า

Open In Colab

\(\)

ก่อนที่เราจะรู้จัก Accuracy, Precision และ Recall เราจะมาทำความรู้จักกับตาราง Confusion Matrix หรือ Error Matrix ที่จะเป็นการแสดงผลลัพธ์การทำงานของอัลกอริทึมต่าง ๆ ในงาน Classification กันก่อน

1. Confusion Matrix คืออะไร

สมมติว่าเรามีรูปภาพอยู่ 13 รูป เป็นรูป Cat 8 รูป และรูป Dog 5 รูป เราให้โมเดล Classification จำแนก ว่าแต่ละรูป เป็นรูปหมา หรือรูปแมว เราสามารถนำผลลัพธ์ที่โมเดลทำนาย มาใส่เป็นตารางได้ โดย แนวตั้งคือ ความจริง Ground Truth แนวนอนคือ สิ่งที่โมเดลทำนาย ตารางนี้เรียกว่า Confusion Matrix ดังด้านล่าง

..Actual Class.
..CatDog
Predicted ClassCat52
.Dog33

ในช่องต่าง ๆ มีชื่อเรียกดังนี้ เพื่อให้เข้าใจง่ายเราจะเปลี่ยนเป็น Binary คือ ใช่แมว และ ไม่ใช่แมว

..Actual Class.
..CatNon-Cat
Predicted ClassCat5 True Positive2 False Positive
.Non-Cat3 False Negative3 True Negative

ชื่อเรียก และความหมายของแต่ละช่อง

  • True Positive (TP) คือ ทายว่าใช่ แล้วใช่จริง ๆ (Hit)
  • True Negative (TN) คือ ทายว่าไม่ใช่ แล้วไม่ใช่จริง ๆ (Correct Rejection)
  • False Positive (FP) คือ ทายว่าใช่ แต่จริง ๆ แล้วไม่ใช่ (False Alarm, Type I error)
  • False Negative (FN) คือ ทายว่าไม่ใช่ แต่จริง ๆ แล้วมันใช่ (Miss, Type II error)
  • Condition Positive (P) คือ จำนวนของที่ใช่ทั้งหมด ที่อยู่ในข้อมูล = TP + FN
  • Condition Negative (N) คือ จำนวนของที่ไม่ใช่ทั้งหมด ที่อยู่ในข้อมูล = FP + TN

หมายเหตุ True = ทายถูก, False = ทายผิด, Positive = ทายว่าใช่, Negative = ทายว่าไม่ใช่

เราจะเปรียบเทียบเป็นการยิงธนูเข้าเป้า จะได้เข้าใจง่าย

2. Accuracy

จำนวนครั้งที่ทายถูก หารด้วยจำนวนครั้งที่ทายทั้งหมด หมายความว่าทายแม่นแค่ไหน แบบรวม ๆ

$$ Accuracy = \frac{\text{TP + TN}}{\text{P + N} } $$

3. Precision

จำนวนครั้งที่ทายว่า Positive แล้วถูก หารด้วยจำนวนครั้งที่ทายว่า Positive ทั้งหมด หมายความว่าใช้กระสุนเปลืองแค่ไหน

Precision มีอีกชื่อว่า positive predictive value (PPV)

$$ Precision = \frac{\text{TP}}{\text{TP + FP} } $$

การทายว่า Positive มีความสำคัญ ตัวอย่างเช่น ผลตรวจผลเลือด เป็น Positive อาจจะแปลว่าเป็นโรค ดังนั้นจึงไม่ควร Positive พร่ำเพรื่อ ถ้าไม่แน่ใจจริง ๆ แต่ทั้งนี้ขึ้นอยู่กับงานด้วย

4. Recall

จำนวนครั้งที่ทายว่า Positive แล้วถูก หารด้วยจำนวน Positive ทั้งหมดในข้อมูล หมายความว่าเก็บหมดแค่ไหน

Recall มีอีกหลายชื่อ เช่น sensitivity, recall, hit rate, หรือ true positive rate (TPR)

$$ Recall = \frac{\text{TP}}{\text{TP + FN} } $$

5. Specificity

Specificity มีอีกหลายชื่อ เช่น selectivity หรือ true negative rate (TNR)

$$ Specificity = \frac{\text{TN}}{\text{TN + FP} } $$

6. F1-Score

F1-Score คือ Harmonic mean ของ Precision และ Recall

$$ F1 = \frac{2 \cdot precision\cdot recall}{precision+ recall} $$

7. สรุป

  • ใน Machine Learning เราคำนวน Metrics เพื่อแสดงผลให้ผู้ใช้ทราบว่า โมเดลทำงานได้ดีแค่ไหน แต่ไม่ได้ใช้ในการเทรนโมเดล เหมือน Loss Fuction
  • Metrics เหล่านี้สามารถใช้ได้กับงาน 2 Class, 3 Class, หรือมากกว่า 3 Class ขึ้นไปก็ได้ ตังตัวอย่าง Confusion Matrix 37x37 ใน ep Image Classification ไว้เราจะอธิบายต่อไป
  • มี Metrics อีกหลายตัวที่ยังไม่ได้พูดถึง เช่น miss rate, fall-out, Threat score, etc.

Credit

In [0]:
 

เปรียบเทียบ Accuracy และ Precision

Accuracy is the proximity of measurement results to the true value; precision is the degree to which repeated (or reproducible) measurements under unchanged conditions show the same results. Credit: https://en.wikipedia.org/wiki/File:Accuracy_and_precision.svg
Accuracy is the proximity of measurement results to the true value; precision is the degree to which repeated (or reproducible) measurements under unchanged conditions show the same results. Credit: https://en.wikipedia.org/wiki/File:Accuracy_and_precision.svg
Accuracy-Precision Graphic Credit: https://tex.stackexchange.com/questions/449894/how-to-make-accuracy-precision-graphic
Accuracy-Precision Graphic Credit: https://tex.stackexchange.com/questions/449894/how-to-make-accuracy-precision-graphic

Graphic อธิบาย Confusion Matrix, Precision, Recall

Confusion Matrix in Term of terms of Pregnancy Analogy. Credit https://towardsdatascience.com/understanding-confusion-matrix-a9ad42dcfd62
Confusion Matrix in Term of terms of Pregnancy Analogy. Credit https://towardsdatascience.com/understanding-confusion-matrix-a9ad42dcfd62
Precision and recall Credit: https://en.wikipedia.org/wiki/File:Precisionrecall.svg
Precision and recall Credit: https://en.wikipedia.org/wiki/File:Precisionrecall.svg

แชร์ให้เพื่อน:

Keng Surapong on FacebookKeng Surapong on GithubKeng Surapong on Linkedin
Keng Surapong
Project Manager at Bua Labs
The ultimate test of your knowledge is your capacity to convey it to another.

Published by Keng Surapong

The ultimate test of your knowledge is your capacity to convey it to another.

Enable Notifications    OK No thanks