Smart-World Surf

Unit 3: למידה מונחית: רגרסיה לינארית

הבנת מודלים לינאריים לחיזוי ערכים רציפים.
מודל רגרסיה לינארית פשוטה ומרובהפונקציית עלות (MSE)ירידה בגרדיאנט (Gradient Descent)הערכת ביצועים (R-squared)

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

1. יסודות הרגרסיה הלינארית

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

רגרסיה לינארית (Linear Regression): מודל סטטיסטי המשמש למידול הקשר הלינארי בין משתנה תלוי רציף לבין משתנה בלתי תלוי אחד או יותר.

המודל הלינארי

הצורה הכללית של המודל הלינארי היא משוואה קווית המנסה לתאר בצורה הטובה ביותר את הקשר בין המשתנים. המודל מחפש את המקדמים (Weights/Coefficients) הטובים ביותר, המסומנים לרוב כ-θ או W, ואת איבר החיתוך (Bias/Intercept), המסומן כ-θ0 או b.

רגרסיה לינארית פשוטה

מודל המשתמש במשתנה בלתי תלוי יחיד לחיזוי המשתנה התלוי. המשוואה היא: ŷ = θ0 + θ1x1, כאשר ŷ הוא הערך החזוי, x1 הוא המשתנה הבלתי תלוי, ו-θ0, θ1 הם המקדמים.

רגרסיה לינארית מרובה

מודל המשתמש בשני משתנים בלתי תלויים או יותר לחיזוי המשתנה התלוי. המשוואה היא: ŷ = θ0 + θ1x1 + θ2x2 + ... + θnxn, כאשר xi הם המשתנים הבלתי תלויים ו-θi הם המקדמים המתאימים.

2. פונקציית העלות: מדידת שגיאה

כדי למצוא את המקדמים האופטימליים (θ), אנו זקוקים לדרך למדוד עד כמה המודל שלנו "טועה" עבור קבוצת נתונים נתונה. לשם כך משתמשים ב"פונקציית עלות" (Cost Function) או "פונקציית הפסד" (Loss Function).

פונקציית עלות (Cost Function): פונקציה המודדת את השגיאה של מודל למידת מכונה על קבוצת נתונים נתונה. המטרה היא למזער פונקציה זו כדי למצוא את הפרמטרים הטובים ביותר למודל.

שגיאה ריבועית ממוצעת (MSE)

עבור רגרסיה לינארית, פונקציית העלות הנפוצה ביותר היא השגיאה הריבועית הממוצעת (Mean Squared Error - MSE). MSE מחשבת את ממוצע ריבועי ההפרשים בין הערכים האמיתיים (y) לבין הערכים החזויים (ŷ) על ידי המודל.

הנוסחה ל-MSE היא:

J(θ) = (1/m) * Σ (ŷi - yi)2

כאשר m הוא מספר הדוגמאות, ŷi הוא החיזוי של המודל לדוגמה i, ו-yi הוא הערך האמיתי של דוגמה i.

שגיאה ריבועית ממוצעת (MSE - Mean Squared Error): פונקציית עלות המחשבת את ממוצע ריבועי ההפרשים בין הערכים החזויים לערכים האמיתיים. היא מענישה שגיאות גדולות יותר באופן משמעותי ומספקת פונקציה קמורה שקל למזער.

3. אופטימיזציה: ירידה בגרדיאנט

לאחר שהגדרנו את פונקציית העלות (MSE), המטרה שלנו היא למצוא את המקדמים (θ) שממזערים אותה. אלגוריתם "ירידה בגרדיאנט" (Gradient Descent) הוא שיטה איטרטיבית נפוצה למציאת המינימום הגלובלי של פונקציית העלות.

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

עקרונות הפעולה

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

עדכון המקדמים מתבצע לפי הנוסחה:

θj := θj - α * (∂J(θ)/∂θj)

כאשר α (אלפא) הוא "קצב הלמידה" (Learning Rate), ו-∂J(θ)/∂θj הוא הגרדיאנט של פונקציית העלות ביחס למקדם θj.

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

4. הערכת ביצועים: מקדם הקביעה (R-squared)

לאחר אימון המודל, חשוב להעריך עד כמה הוא טוב בחיזוי ערכים חדשים. מדד נפוץ להערכת ביצועי מודל רגרסיה לינארית הוא מקדם הקביעה, הידוע גם כ-R-squared (R2).

R-squared (מקדם הקביעה): מדד סטטיסטי המייצג את הפרופורציה של השונות במשתנה התלוי שניתן להסביר על ידי המודל הלינארי. ערך של 1.0 מצביע על התאמה מושלמת, וערך של 0.0 מצביע על כך שהמודל אינו מסביר כלל את השונות.

פרשנות ה-R-squared

ערך ה-R-squared נע בדרך כלל בין 0 ל-1 (אם כי יכול להיות שלילי במקרים מסוימים, המעידים על מודל גרוע מאוד). R-squared של 0.75, למשל, אומר ש-75% מהשונות במשתנה התלוי מוסברת על ידי המשתנים הבלתי תלויים במודל. ככל שה-R-squared גבוה יותר, כך המודל מסביר טוב יותר את הנתונים.

חשוב לזכור ש-R-squared אינו מצביע על הטיה (Bias) במודל או על כך שהמודל הוא הטוב ביותר האפשרי. הוא גם נוטה לעלות עם הוספת משתנים למודל, גם אם הם אינם רלוונטיים, ולכן יש להשתמש בו בזהירות, לעיתים בשילוב עם מדדים נוספים או גרסאות מתוקנות כמו Adjusted R-squared.

שאלות לדיון

  • הסבירו את ההבדל העיקרי בין רגרסיה לינארית פשוטה לרגרסיה לינארית מרובה, ומתי נבחר להשתמש בכל אחת מהן.
  • מדוע אנו משתמשים בשגיאה ריבועית (ולא בערך מוחלט) בפונקציית העלות MSE? מהם היתרונות של גישה זו?
  • תארו את השלבים העיקריים של אלגוריתם ירידה בגרדיאנט. מה יקרה אם קצב הלמידה (α) יהיה גבוה מדי או נמוך מדי?
  • מהו R-squared, וכיצד הוא מסייע לנו להבין את איכות מודל הרגרסיה? האם R-squared גבוה תמיד מעיד על מודל טוב? נמקו.

נקודות לתשובת מודל

  • רגרסיה פשוטה מול מרובה: פשוטה - משתנה בלתי תלוי אחד; מרובה - שניים או יותר. בחירה תלויה במספר המאפיינים הרלוונטיים לחיזוי.
  • MSE - ריבוע השגיאה: מעניש שגיאות גדולות יותר באופן משמעותי, מבטל סימנים שליליים/חיוביים, ויוצר פונקציית עלות קמורה (בעלת מינימום גלובלי יחיד) שקל יותר למזער באמצעות שיטות כמו ירידה בגרדיאנט.
  • ירידה בגרדיאנט: אתחול פרמטרים, חישוב גרדיאנט (נגזרות חלקיות) של פונקציית העלות, עדכון פרמטרים בכיוון הנגדי לגרדיאנט כפול קצב הלמידה, חזרה על התהליך עד התכנסות. קצב למידה גבוה מדי - דילוג מעל המינימום או התבדרות; נמוך מדי - התכנסות איטית מאוד.
  • R-squared: אחוז השונות במשתנה התלוי המוסבר על ידי המודל. ערך גבוה (קרוב ל-1) מצביע על מודל המסביר היטב את הנתונים. R-squared גבוה אינו בהכרח מעיד על מודל טוב, מכיוון שהוא יכול לעלות עם הוספת מאפיינים לא רלוונטיים (Overfitting) ואינו מודד הטיה. יש לבחון גם את הרלוונטיות הסטטיסטית של המקדמים ואת ההתאמה לנתונים חדשים.
Spotted an error or something missing?
← Previous
הכנת נתונים והנדסת מאפיינים
Next →
למידה מונחית: רגרסיה לוגיסטית וסיווג