הטמעות: השגת הטמעות

הקטע הזה מתמקד בשתי שיטות נפוצות לקבלת הטמעה:

  • צמצום ממדים
  • חילוץ הטמעה ממודל גדול יותר של רשת נוירונים

שיטות להפחתת ממדים

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

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

אימון הטמעה כחלק מרשת נוירונים

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

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

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

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

איור 12. רשת נוירונים לקידוד לוהט של נקניקייה. השכבה הראשונה היא
    שכבת קלט עם 5 צמתים, שלכל אחת מהן יש סמל של האוכל.
    שמייצג (בורשט, נקניקייה, סלט, ... ושווארמה). לצמתים האלה יש
    הערכים [0, 1, 0, ..., 0] בהתאמה, שמייצגים את הנקודה החמה אחת
    לקידוד של 'נקניקייה'. שכבת הקלט מחוברת להטמעה בת 3 צמתים
    , שהצמתים שלה מכילים את הערכים 2.98, -0.75 ו-0, בהתאמה. 
    של שכבת ההטמעה מחוברת לשכבה נסתרת בעלת 5 צמתים,
    שמחובר לשכבת פלט עם 5 צמתים.
איור 12. קידוד חם אחד של hot dog כקלט לרשת נוירונים עמוקה. שכבת הטמעה מתרגמת את הקידוד החד-פעמי לווקטור ההטמעה התלת-ממדית [2.98, -0.75, 0]

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

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

אימון של הטמעת מילים

בקטע הקודם, סקרתם להמחשה של קשרים סמנטיים שטח הטמעה של word2vec.

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

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

הטמעות סטטיות לעומת הטמעות לפי הקשר

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

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