סיווג: דיוק, ריקול, דיוק ומדדים קשורים

תוצאות חיוביות ושליליות אמיתיות ומזויפות משמשות לחישוב כמה מדדים שימושיים להערכת מודלים. מדדי ההערכה המשמעותיים ביותר תלויים במודל הספציפי ובמשימה הספציפית, בעלות של סיווגים שגויים שונים ובשאלה אם מערך הנתונים מאוזן או לא מאוזן.

כל המדדים בקטע הזה מחושבים בסף קבוע אחד והם משתנים כשהסף משתנה. לעיתים קרובות, המשתמשים משנים את הסף כדי לבצע אופטימיזציה של אחד מהמדדים האלה.

דיוק

דיוק הוא היחס של כל הסיווגים שהיו נכונים, חיוביות או שליליות. מבחינה מתמטית, הוא מוגדר כך:

\[\text{Accuracy} = \frac{\text{correct classifications}}{\text{total classifications}} = \frac{TP+TN}{TP+TN+FP+FN}\]

בדוגמה של סיווג ספאם, המדד 'דיוק' מתייחס לחלק מכל הודעות האימייל שסווגו בצורה נכונה.

מודל מושלם לא ייצור אף תוצאה חיובית שגויה ואף תוצאה שלילית שגויה, ולכן רמת הדיוק שלו תהיה 1.0 או 100%.

מכיוון שהיא משלבת את כל ארבע התוצאות ממטריצת הבלבול (TP,‏ FP,‏ TN,‏ FN), בהינתן מערך נתונים מאוזן עם מספר דומה של דוגמאות בשני הכיתורים, הדיוק יכול לשמש כמדד גס של איכות המודל. לכן, הוא בדרך כלל מדד ברירת המחדל להערכה של מודלים כלליים או לא ספציפיים שמבצעים משימות כלליות או לא ספציפיות.

עם זאת, כשמערך הנתונים לא מאוזן, או כשסוג אחד של שגיאה (FN או FP) יקר יותר מהסוג השני, כפי שקורה ברוב האפליקציות בעולם האמיתי, עדיף לבצע אופטימיזציה לפי אחד מהמדדים האחרים.

לגבי מערכי נתונים לא מאוזנים מאוד, שבהם מחלקה אחת מופיעה לעתים רחוקות מאוד, למשל, ב-1% מהזמן, מודל שחוזה שלילי ב-100% מהזמן יקבל ציון של 99% ברמת הדיוק, למרות שהוא לא שימושי.

זכירת המודעה, או שיעור החיובים האמיתיים

שיעור החיובים האמיתיים (TPR), או היחס בין כל התוצאות החיוביות בפועל שסווגו כחיוביות בצורה נכונה, נקרא גם רגישות.

מבחינה מתמטית, החזרה מוגדרת כך:

\[\text{Recall (or TPR)} = \frac{\text{correctly classified actual positives}}{\text{all actual positives}} = \frac{TP}{TP+FN}\]

תוצאות שליליות כוזבות הן תוצאות חיוביות בפועל שסווגו בטעות כשלילה, ולכן הן מופיעות במכנה. בדוגמה של סיווג ספאם, מדד החזרה מתייחס לחלק מהודעות האימייל שסווגו כספאם באופן נכון. לכן שם נוסף של החזרה הוא סבירות זיהוי: היא עונה על השאלה "איזה חלק מהאימיילים בספאם מזוהה על ידי המודל הזה?"

למודל מושלם היפותטי לא יהיו תוצאות שליליות שגויות, ולכן שיעור החזרה (TPR) שלו יהיה 1.0, כלומר שיעור זיהוי של 100%.

במערך נתונים לא מאוזן שבו מספר הדוגמאות החיוביות בפועל נמוך מאוד, למשל 1-2 דוגמאות בסך הכול, המדד 'החזקה' פחות משמעותי ופחות שימושי.

שיעור תוצאות חיוביות שגויות

שיעור החיובים השקריים (FPR) הוא היחס בין כל האירועים השליליים בפועל שסווגו בטעות כחיוביים, שנקרא גם הסתברות לאזעקה שקרית. מבחינה מתמטית, הוא מוגדר כך:

\[\text{FPR} = \frac{\text{incorrectly classified actual negatives}} {\text{all actual negatives}} = \frac{FP}{FP+TN}\]

תוצאות חיוביות כוזבות הן מילות מפתח שליליות בפועל שסווגו בטעות, ולכן הן מופיעות במכנה. בדוגמה של סיווג ספאם, מדד FPR מודד את החלק של הודעות אימייל לגיטימיות שסווגו בטעות כספאם, או את שיעור ההתראות השגויות של המודל.

לדגם מושלם לא יהיו תוצאות חיוביות שגויות, ולכן ערך ה-FPR שלו יהיה 0.0, כלומר שיעור ההתראות השגויות יהיה 0%.

במערך נתונים לא מאוזן שבו מספר התוצאות השליליות מאוד מאוד נמוך, למשל 1-2 דוגמאות בסך הכול, ל-FPR יש משמעות פחותה ופחות שימושיות כמדד.

דיוק

הדיוק הוא היחס בין כל הסיווגים החיוביים של המודל לבין הסיווגים החיוביים בפועל. ההגדרה המתמטית היא:

\[\text{Precision} = \frac{\text{correctly classified actual positives}} {\text{everything classified as positive}} = \frac{TP}{TP+FP}\]

בדוגמה של סיווג הספאם, המדד 'דיוק' מודד את החלק של הודעות אימייל שסווגו כספאם שהיו למעשה ספאם.

למודל תיאורטי מושלם לא יהיו תוצאות חיוביות כוזבות, ולכן רמת הדיוק שלו תהיה 1.0.

במערך נתונים לא מאוזן שבו מספר הדוגמאות החיוביות בפועל נמוך מאוד, למשל 1-2 דוגמאות בסך הכול, המדד 'דיוק' פחות משמעותי ופחות שימושי.

הדיוק משתפר ככל שמספר התוצאות החיוביות השגויות קטן, והזיכרון משתפר ככל שמספר התוצאות השליליות השגויות קטן. עם זאת, כפי שראינו בקטע הקודם, הגדלת הסף לסיווג נוטה להקטין את מספר התוצאות החיוביות הכוזבות ולהגדיל את מספר התוצאות השליליות הכוזבות, בעוד שהקטנת הסף גורמת לתוצאות הפוכות. כתוצאה מכך, לעתים קרובות יש יחס הפוך בין הדיוק לבין החזרה, כך ששיפור של אחד מהם גורם לירידה באחר.

רוצים לנסות בעצמכם?

מה המשמעות של NaN במדדים?

הערך NaN או 'not a number' מופיע כשמחלקים ב-0. הערך הזה יכול לקרות בכל אחד מהמדדים האלה. לדוגמה, כש-TP ו-FP הם שניהם 0, הנוסחה של הדיוק כוללת 0 במכנה, וכתוצאה מכך מתקבל NaN. במקרים מסוימים, הערך NaN יכול להצביע על ביצועים מושלמים, וניתן להחליף אותו בציון 1.0. עם זאת, הוא יכול גם להופיע במודל שהוא למעשה חסר תועלת. לדוגמה, מודל שמעולם לא מנבא תוצאה חיובית יכלול 0 תוצאות חיוביות ו-0 תוצאות שליליות, ולכן החישוב של הדיוק שלו יניב את הערך NaN.

בחירת מדד ומאזני הרווח והפסד

המדדים שבחרתם לתת להם עדיפות כשאתם מעריכים את המודל ובוחרים את הסף תלויים בעלויות, בהטבות ובסיכונים של הבעיה הספציפית. בדוגמה לסיווג ספאם, לעיתים קרובות כדאי לתעדף את ריקול, לדייק את כל הודעות הספאם או את הדיוק שלהן, בניסיון לוודא שהאימיילים שמסומנים כספאם הם אכן ספאם, או איזון בין שני הסוגים, מעל רמת דיוק מינימלית.

מדד הדרכה
דיוק

אפשר להשתמש בו כאינדיקטור גס של התקדמות האימון או של ההתכנסות של המודל במערכי נתונים מאוזנים.

לביצועי המודל, יש להשתמש בו רק בשילוב עם מדדים אחרים.

לא מומלץ להשתמש בהם בקבוצות נתונים לא מאוזנות. כדאי להשתמש במדד אחר.

זכירת המודעה
(שיעור תוצאות חיוביות אמיתיות)
יש להשתמש במקרים שבהם תוצאות שליליות כוזבות יקרות יותר מתוצאות חיוביות מוטעות.
שיעור תוצאות חיוביות שגויות משתמשים באפשרות הזו כשתוצאות חיוביות שגויות יקרות יותר מתוצאות שליליות שגויות.
דיוק מומלץ להשתמש בה כשחשוב מאוד שהתחזיות החיוביות יהיו מדויקות.

(אופציונלי, מתקדם) ציון F1

ציון F1 הוא הממוצע ההרמוני (סוג של ממוצע) של הדיוק והזיכרון.

מבחינה מתמטית, הנוסחה היא:

\[\text{F1}=2*\frac{\text{precision * recall}}{\text{precision + recall}} = \frac{2\text{TP}}{2\text{TP + FP + FN}}\]

המדד הזה מאזן את החשיבות של הדיוק והזכירות, והוא עדיף על הדיוק במערכי נתונים עם איזון בכיתה. כשהציונים של הדיוק והזיהוי הם 1.0, גם הציון של F1 יהיה 1.0. באופן כללי, כאשר הערכים של הדיוק והזיהוי הם דומים, הערך של F1 יהיה קרוב לערך שלהם. כאשר רמת הדיוק והזיכרון נמוכות, הערך של F1 יהיה דומה למדד עם הערך הנמוך יותר.

תרגול: בדיקת ההבנה

מודל מניב 5 תוצאות TP,‏ 6 תוצאות TN,‏ 3 תוצאות FP ו-2 תוצאות FN. מחשבים את אחוז הקריאה מחדש.
0.714
הערך של 'החזרה' מחושב לפי \(\frac{TP}{TP+FN}=\frac{5}{7}\).
0.455
המדד 'החזר' מתייחס לכל התוצאות החיוביות בפועל, ולא לכל הסיווגים הנכונים. הנוסחה לריקול היא \(\frac{TP}{TP+FN}\).
0.625
הריקול מביא בחשבון את כל הסיווגים החיוביים בפועל, ולא את כל הסיווגים החיוביים. הנוסחה לזיכרון היא \(\frac{TP}{TP+FN}\)
מודל מניב 3 TP,‏ 4 TN,‏ 2 FP ו-1 FN. מחשבים את רמת הדיוק.
0.6
הדיוק מחושב באופן הבא: \(\frac{TP}{TP+FP}=\frac{3}{5}\).
0.75
המדד 'דיוק' מתייחס לכל הסיווגים החיוביים, ולא לכל האירועים החיוביים בפועל. הנוסחה של הדיוק היא \(\frac{TP}{TP+FP}\).
0.429
המדד 'דיוק' מתייחס לכל הסיווגים החיוביים, ולא לכל הסיווגים הנכונים. הנוסחה לדיוק היא \(\frac{TP}{TP+FP}\)
אתם יוצרים סיווג בינארי שבודק תמונות של מלכודות חרקים כדי לזהות אם יש בהן מינים פולשניים מסוכנים. אם המודל מזהה את המין, מודיע על כך לאנטומולוג (מדען חרקים) התורן. חשוב מאוד לזהות את החרק הזה בשלב מוקדם כדי למנוע התרבות שלו. קל לטפל באזעקת שווא: האנטומולוג רואה שהתמונה סווגה באופן שגוי ומסמן אותה ככזו. בהנחה שרמת הדיוק של המודל היא מספקת, באיזה מדד כדאי לבצע אופטימיזציה של המודל?
זכירות
בתרחיש הזה, התראות שווא (FP) הן בעלות נמוכה, והתראות שליליות שווא הן בעלות גבוהה מאוד, לכן מומלץ למקסם את החזרה (recall), או את הסבירות לזיהוי.
שיעור תוצאות חיוביות שגויות (FPR)
בתרחיש הזה, ההתראות המזויפות (FP) זולות. אין טעם לנסות למזער את מספר הבקשות האלה ולהסתכן בהחמצת בקשות חיוביות אמיתיות.
דיוק
בתרחיש הזה, התראות שווא (FP) לא מזיקות במיוחד, ולכן אין טעם לנסות לשפר את הדיוק של הסיווגים החיוביים.