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

AI 101

מהי הגברת גרדיאנט?

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

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

הגדרת הגברת שיפוע

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

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

מודלים מחזקים פועלים על ידי הגדלת מודל למידת מכונה נפוץ אחר, עץ החלטות.

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

המחשה של האופן שבו מודלים מחזקים מאומנים.
תמונה: SeattleDataBuy דרך Wikimedia Commons, CC 4.0 (https://commons.wikimedia.org/wiki/File:Boosting.png)

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

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

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

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

שיפור שיפוע

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

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

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

כדי להבהיר את זה:

תחזיות מודל חדש = משתני פלט - תחזיות לא מושלמות ישנות.

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

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

שימו לב ש-GBM יכול להשתמש במגוון רחב של פונקציות אובדן אחרות (כגון אובדן לוגריתמי). MSE נבחר לעיל למטרת פשטות.

וריאציות על מודלים לשיפור שיפוע

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

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

הצטמקות

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

אילוצי עץ

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

דגימה אקראית

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

למידה מוענשת

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

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