רגרסיה לינארית: אובדן

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

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

איור 9. קווים של אובדן מקשרים בין נקודות הנתונים למודל.

איור 9. ההפסד נמדד מהערך בפועל לערך הצפוי.

מרחק אובדן

בסטטיסטיקה ובלמידת מכונה, אובדן הוא המדד של ההפרש בין הערכים הצפויים לבין הערכים בפועל. פונקציית האובדן מתמקדת במרחק בין הערכים, ולא בכיוון. לדוגמה, אם מודל צופה ערך של 2 אבל הערך בפועל הוא 5, לא משנה לנו שהאובדן הוא שלילי (-3$‏, ‏2-5=-3$). במקום זאת, חשוב לנו שהמרחק בין הערכים הוא 3$. לכן, בכל השיטות לחישוב האובדן מסירים את הסימן.

שתי השיטות הנפוצות ביותר להסרת התווית הן:

  • לוקחים את הערך המוחלט של ההפרש בין הערך בפועל לחיזוי.
  • חישוב ההפרש בין הערך בפועל לבין החיזוי.

סוגי ההפסדים

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

סוג ההפסד הגדרה משוואה
אובדן 1 סכום הערכים המוחלטים של ההפרש בין הערכים הצפויים לבין הערכים בפועל. $ ∑ | actual\ value - predicted\ value | $
שגיאה ממוצעת (MAE) הממוצע של אובדני L1 בקבוצת דוגמאות. $ \frac{1}{N} ∑ | actual\ value - predicted\ value | $
הפסד L2 סכום ההפרש המרובע בין הערכים הצפויים לבין הערכים בפועל. $ ∑(הערך בפועל - הערך הצפוי)^2 $
שגיאה ריבועית ממוצעת (MSE) הממוצע של אובדני L2 בקבוצה של דוגמאות. $ \frac{1}{N} ∑ (actual\ value - predicted\ value)^2 $

ההבדל הפונקציונלי בין אובדן L1 לאובדן L2 (או בין MAE ל-MSE) הוא העלאה בריבוע. כאשר ההבדל בין התחזית לבין התווית גדול, החזקה בריבוע גורמת לירידה גדולה יותר ברמת האובדן. כשההבדל קטן (פחות מ-1), ריבוע מקטין את האובדן.

כשמעובדים כמה דוגמאות בו-זמנית, מומלץ לחשב את הממוצע של האובדנים בכל הדוגמאות, בין אם באמצעות MAE ובין אם באמצעות MSE.

דוגמה לחישוב הפסד

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

  • $ \small{weight: -3.6} $
  • $ \small{Bias: 30} $

אם המודל צופה שצריכת הדלק של רכב במשקל 1,075 ק"ג היא 8.7 ק"מ לליטר, אבל בפועל צריכת הדלק היא 9.9 ק"מ לליטר, נחשב את אובדן L2 באופן הבא:

ערך משוואה תוצאה
חיזוי

$\small{bias + (weight * feature\ value)}$

$\small{30 + (-3.6*2.37)}$

$\small{21.5}$
ערך בפועל $ \small{ label } $ $ \small{ 24 } $
אובדן 2 L

$ \small{ (prediction - actual\ value)^2} $

$\small{ (21.5 - 24)^2 }$

$\small{6.25}$

בדוגמה הזו, אובדן ה-L2 של נקודת הנתונים היחידה הזו הוא 6.25.

בחירת אובדן

ההחלטה אם להשתמש ב-MAE או ב-MSE משתנה בהתאם למערך הנתונים ולאופן שבו רוצים לטפל בחיזויים מסוימים. בדרך כלל, רוב ערכי המאפיינים במערך נתונים נמצאים בטווח מסוים. לדוגמה, משקל המכוניות בדרך כלל נע בין 2,000 ל-5,000 פאונד, והן צורכות בין 8 ל-50 מייל לגלון. רכב במשקל 3,628 ק"ג או רכב עם תצרוכת דלק של 4.2 ק"מ לליטר חורג מהטווח הרגיל, וייחשב כחריג.

חריג יכול גם להתייחס למרחק בין התחזיות של מודל לבין הערכים האמיתיים. לדוגמה, מכונית במשקל 1,360 ק"ג או מכונית שמניבה 16 ק"מ לליטר נמצאות בטווחים הרגילים. עם זאת, מכונית במשקל 1,200 ק"ג עם 160 ק"מ לליטר תהיה חריג חשוד טעות כי המודל חוזה שמכונית במשקל 3,000 ק"ג תקבל 18 ק"ג עד 20 מייל לגלון.

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

איור 10. המודל מוטה יותר לכיוון הערכים החריגים.

איור 10. מודל שמתאמן באמצעות MSE נע יותר קרוב לערכים החריגים.

איור 11. המודל נוטה הרחק יותר מחריגים חשודי טעות.

איור 11. מודל שהודרן באמצעות MAE רחוק יותר מהערכים החריגים.

שימו לב לקשר בין המודל לבין הנתונים:

  • MSE. המודל קרוב יותר לערכים החריגים, אבל רחוק יותר מרוב נקודות הנתונים האחרות.

  • MAE. המודל רחוק יותר מנקודות החריגות, אבל קרוב יותר לרוב נקודות הנתונים האחרות.

בדיקת ההבנה

נבחן את שני התרשימים הבאים:

תרשים של 10 נקודות.
      שורה עוברת דרך 6 מהנקודות. 2 נקודות נמצאות יחידה אחת מעל הקו, ו-2 נקודות אחרות נמצאות יחידה אחת מתחת לקו. עלילה של 10 נקודות. קו עובר דרך 8 מהנקודות. נקודה אחת נמצאת 2 יחידות מעל הקו, ונקודה אחת נמצאת 2 יחידות מתחת לקו.
באיזו מבין שתי קבוצות הנתונים שמוצגות בתרשים הקודם יש ערך גבוה יותר של השגיאה הממוצעת הריבונית (MSE)?
מערך הנתונים בצד ימין.
שש הדוגמאות בקו גורמות להפסד כולל של 0. ארבע הדוגמאות שלא נמצאות על הקו לא רחוקות ממנו מאוד, ולכן גם כאשר מעלים בחזקת שתיים את ההיסט שלהן, עדיין מתקבל ערך נמוך: ‎$MSE = \frac{0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 0^2} {10} = 0.4$‎
מערך הנתונים בצד שמאל.
8 הדוגמאות בשורה גורמות להפסד כולל של 0. עם זאת, למרות שרק שתי נקודות נמצאות מחוץ לקו, שתי הנקודות האלה נמצאות פי שניים רחוק יותר מהקו בהשוואה לנקודות החריגות בתרשים הימני. אובדן ריבועי מגביר את ההבדלים האלה, כך ששינוי של שניים גורם לאובדן גדול פי ארבעה מאשר שינוי של אחד: ‎$MSE = \frac{0^2 + 0^2 + 0^2 + 2^2 + 0^2 + 0^2 + 0^2 + 2^2 + 0^2 + 0^2} {10} = 0.8$