מקודד אוטומטי מכווץ-רעש (Denoising Autoencoder)

יסודות בינה מלאכותית

הגדרה

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

הרעיון: לשחזר נקי מתוך פגום

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

המקור: וינסנט, לרושל, בנג'יו ומנזגול, 2008

השיטה הוצגה במאמר "Extracting and Composing Robust Features with Denoising Autoencoders" מאת פסקל וינסנט, הוגו לרושל, יושוע בנג'יו ופייר-אנטואן מנזגול, שהוצג בכנס ICML 2008. המאמר טבע את עקרון-האימון כדרך ללמידה-בלתי-מפוקחת של ייצוגים, שמבוססת על הרעיון שייצוג טוב צריך להיות עמיד לפגיעה חלקית בקלט — לא רק מסוגל לדחוס אותו. הקבוצה, מתוך המעבדה של יושוע בנג'יו באוניברסיטת מונטריאול, המשיכה לפתח את הרעיון במאמר מורחב ב-Journal of Machine Learning Research, שהראה איך אפשר לערום כמה מקודדים מכווצי-רעש זה על גבי זה כדי לבנות רשת עמוקה שלמה, שכל שכבה בה מאומנת בנפרד כמקודד אוטומטי מכווץ-רעש לפני כיוונון משותף של הרשת כולה.

סוגי הפגימה במכוון

התהליך שמפגים את הקלט אינו אחיד — קיימות כמה שיטות נפוצות, ולעיתים משלבים ביניהן. רעש גאוסיאני אחיד מוסיף ערכים אקראיים קטנים לכל התכונות של הקלט. "רעש-מיסוך" (masking noise) בוחר אקראית חלק מהתכונות ומאפס אותן לגמרי, כאילו מידע נעדר. "רעש מלח-ופלפל" (salt-and-pepper noise) בוחר אקראית חלק מהתכונות וקובע אותן לערך המינימלי או המקסימלי האפשרי. בכל המקרים, הרשת רואה רק את הגרסה הפגומה בקלט, אך הפונקציה שמעריכה את הפלט משווה תמיד מול הדוגמה הנקייה המקורית — כך שהלמידה מתמקדת בשחזור המבנה האמיתי, לא בהעתקה.

למה זה עובד: מהעתקה טריוויאלית לייצוג מועיל

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

הד מוקדם לשיטות אימון-עצמי מודרניות

העיקרון "לפגום במכוון ולדרוש שחזור נקי" חוזר, בגרסאות שונות, בשיטות אימון-עצמי (self-supervised) מרכזיות הרבה יותר מאוחר — שנים לפני שהמונח הזה עצמו התבסס. מודלים כמו BERT מסתירים מילים אקראיות בטקסט ומאמנים את הרשת לנחש אותן בחזרה, ורשתות-Vision מבוססות מסכה (Masked Autoencoders) מסתירות חלקים גדולים מתמונה ומאמנות את הרשת לשחזר אותם. שתי הגישות האלה הן, במהותן, הרחבה של אותו רעיון בדיוק שהוצג במקודד אוטומטי מכווץ-רעש ב-2008 — רק בקנה-מידה גדול הרבה יותר ועם ארכיטקטורות מודרניות.

שימושים בפועל

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

שאלות נפוצות ❓

מה ההבדל בין מקודד אוטומטי מכווץ-רעש למקודד אוטומטי רגיל?

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

אילו סוגי רעש משתמשים בהם באימון?

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

מה הקשר בין הרעיון הזה לשיטות אימון-עצמי מודרניות כמו BERT?

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

האם מקודד אוטומטי מכווץ-רעש עדיין משמש בפועל?

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