רגולריזציה (Regularization)
הגדרה
רגולריזציה היא קבוצת טכניקות שמונעות ממודל "לשנן בעל-פה" את נתוני-האימון — מכריחות אותו ללמוד דפוסים כלליים במקום פרטים ספציפיים, ומשפרות את הביצועים על נתונים חדשים.
מודל גדול מדי ביחס לכמות הנתונים עלול פשוט "לזכור" את דוגמאות-האימון בעל-פה, במקום ללמוד את הכלל הכללי מאחוריהן — תופעה שנקראת התאמת-יתר. רגולריזציה מגבילה מלאכותית את יכולת המודל "לשנן" בדרך הזו.
הרעיון המתמטי מקורו במאמר של אנדריי טיכונוב מ-1963 (שיטת "רגרסיית-הרכס" נקראת גם על שמו), שהתמודד עם בעיה דומה בסטטיסטיקה קלאסית עוד לפני שהיו רשתות-נוירונים — איך מונעים ממודל להתאים את עצמו יתר-על-המידה לרעש אקראי בנתונים.
שתי הצורות הנפוצות ביותר להענשה-על-גודל-פרמטרים נקראות L1 ו-L2, ונבדלות באופן שבו הן מחשבות "עונש". רגולריזציית L2 (בדיוק שיטת רגרסיית-הרכס של טיכונוב) מענישה על ריבוע-גודל הפרמטרים, ונוטה לצמצם את כולם באופן מתון; רגולריזציית L1 (שנקראת גם "Lasso") מענישה על הערך-המוחלט שלהם, ונוטה לאפס לגמרי חלק מהפרמטרים — כלומר, יוצרת בפועל מודל "דליל" (Sparse) שמשתמש רק בחלק מהמאפיינים הזמינים, במקום בכולם קצת. הבחירה בין השתיים תלויה במטרה: L1 מתאימה כשרוצים שהמודל "יבחר" אילו מאפיינים חשובים באמת.
טכניקות נפוצות נוספות כוללות שיטות כמו Dropout שמכבות אקראית חלק מהרשת בזמן האימון — מכריחות את המודל לא להסתמך על מסלול-פתרון בודד ושביר — ועצירה-מוקדמת (Early Stopping) של האימון. ברשתות-נוירונים גדולות ומורכבות במיוחד, לרוב משלבים כמה שיטות-רגולריזציה יחד ולא מסתמכים על אחת בלבד, כי כל שיטה תוקפת את בעיית ההתאמת-היתר מזווית מעט שונה. חשוב להבחין בין רגולריזציה לבין פתרון-הבעיה על ידי הוספת עוד נתוני-אימון: שתי הגישות מתמודדות עם אותה בעיה, אבל רגולריזציה זולה ומהירה ליישום, בעוד איסוף-נתונים איכותיים נוספים לרוב יקר ואיטי בהרבה — ולכן בפועל רוב הפרויקטים מתחילים ברגולריזציה ורק אחר-כך שוקלים השקעה נוספת בנתונים.
📬 הגיליון השבועי של Wiki-AI
פעם בשבוע, ביום ראשון: שלושת הדברים החשובים שקרו בעולם הבינה המלאכותית, בעברית פשוטה, וערכים חדשים באנציקלופדיה. לגיליונות