בדל מהי רגרסיה לינארית? - Unite.AI
צור קשר
כיתת אמן בינה מלאכותית:

AI 101

מהי רגרסיה לינארית?

mm
מְעוּדכָּן on

מהי רגרסיה לינארית?

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

זה היה הסבר מהיר של רגרסיה לינארית, אבל בואו נוודא שנגיע להבנה טובה יותר של רגרסיה לינארית על ידי הסתכלות על דוגמה שלה ובחינת הנוסחה שהיא משתמשת בה.

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

נניח שיש לנו מערך נתונים המכסה גדלי כוננים קשיחים ואת העלות של כוננים קשיחים אלה.

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

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

אם הייתה לנו כמות הזיכרון על ציר ה-X והעלות על ציר ה-Y, קו הקולט את הקשר בין משתני X ו-Y היה מתחיל בפינה השמאלית התחתונה ורץ לפינה הימנית העליונה.

תפקידו של מודל רגרסיה הוא לקבוע פונקציה לינארית בין משתני X ו-Y המתארת ​​בצורה הטובה ביותר את הקשר בין שני המשתנים. ברגרסיה ליניארית, ההנחה היא שניתן לחשב Y משילוב כלשהו של משתני הקלט. ניתן לתאר את הקשר בין משתני הקלט (X) למשתני היעד (Y) על ידי ציור קו דרך הנקודות בגרף. הקו מייצג את הפונקציה שמתארת ​​בצורה הטובה ביותר את הקשר בין X ו-Y (לדוגמה, בכל פעם ש-X גדל ב-3, Y גדל ב-2). המטרה היא למצוא "קו רגרסיה" אופטימלי, או את הקו/פונקציה המתאימים ביותר לנתונים.

קווים מיוצגים בדרך כלל על ידי המשוואה: Y = m*X + b. X מתייחס למשתנה התלוי בעוד Y הוא המשתנה הבלתי תלוי. בינתיים, m הוא השיפוע של הקו, כפי שהוא מוגדר על ידי ה"עלייה" על ה"ריצה". מתרגלי למידת מכונה מייצגים את משוואת קו השיפוע המפורסמת קצת אחרת, תוך שימוש במשוואה זו במקום זאת:

y(x) = w0 + w1 * x

במשוואה שלמעלה, y הוא משתנה היעד בעוד "w" הוא הפרמטרים של המודל והקלט הוא "x". אז המשוואה נקראת כך: "הפונקציה שנותנת Y, בהתאם ל-X, שווה לפרמטרים של המודל כפול התכונות". הפרמטרים של המודל מותאמים במהלך האימון כדי לקבל את קו הרגרסיה המתאים ביותר.

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

תמונה: Cbaf באמצעות Wikimedia Commons, Public Domain (https://commons.wikimedia.org/wiki/File:2d_multiple_linear_regression.gif)

התהליך המתואר לעיל חל על רגרסיה ליניארית פשוטה, או רגרסיה על מערכי נתונים שבהם יש רק תכונה אחת/משתנה בלתי תלוי. עם זאת, רגרסיה יכולה להיעשות גם עם מספר תכונות. במקרה של "רגרסיה לינארית מרובה", המשוואה מורחבת במספר המשתנים שנמצאו במערך הנתונים. במילים אחרות, בעוד המשוואה עבור רגרסיה לינארית רגילה היא y(x) = w0 + w1 * x, המשוואה עבור רגרסיה לינארית מרובה תהיה y(x) = w0 + w1x1 בתוספת המשקלים והכניסות עבור התכונות השונות. אם נציג את המספר הכולל של משקלים ותכונות כ-w(n)x(n), נוכל לייצג את הנוסחה כך:

y(x) = w0 + w1x1 + w2x2 + … + w(n)x(n)

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

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

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