דוגמה ליצירת הטמעות

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

נניח שיש לכם קבוצת נתונים של דיור שבה השתמשתם כשיצרתם מידת דמיון ידנית:

התכונהסוג
מחירמספר שלם חיובי
גודל ערך נקודה צפה (floating-point) חיובי ביחידות של מטרים רבועים
מיקודמספר שלם
מספר חדרי שינהמספר שלם
סוג הביתערך טקסט מ"סינג_משפחה", "כמה משפחות", "דירה", "דירות"
חניה0/1 עבור לא/כן
צבעיםסיווג רב-ערך: ערך אחד או יותר בצבעים רגילים "לבן", "צהוב", "ירוק" וכו'.

עיבוד מוקדם של הנתונים

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

התכונהסוג או הפצהפעולה
מחירהפצת פויסון לכמת ולהתאים ל-[0,1].
גודלהפצת פויסון לכמת ולהתאים ל-[0,1].
מיקודקטגורית המרה לקו אורך וקו רוחב, מכמת ו משנים את הגודל ל-[0,1].
מספר חדרי שינהמספר שלם חיתוך של נקודות בולטות ושינוי הגודל ל-[0,1].
סוג הביתקטגורית המרה לקידוד חם אחד.
חניה0 או 1 להשאיר ללא שינוי.
צבעיםקטגורית ממירים את ערכי ה-RGB ומעבדים אותם כנתונים מספריים.

למידע נוסף על קידוד חם, עיינו בקטע הטמעות: נתוני קלט קטגורית.

בחירת חיזוי או מקודד אוטומטי

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

הכשרה של חזאי

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

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

אימון מקודד אוטומטי

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

  1. מוודאים שהשכבות המוסתרות של המקודד האוטומטי קטנות משכבות הקלט והפלט.
  2. מחשבים את אובדן הנתונים של כל פלט לפי ההגדרה של מידת הדמיון בפיקוח.
  3. כדי ליצור את פונקציית ההפסדים, צריך לחשב את ההפסדים של כל פלט. חשוב להקפיד שהמשקל של כל פיצ'ר יהיה שווה. לדוגמה, כי נתוני הצבעים מעובדים ל-RGB, שקלול כל אחת פלטי ה-RGB ב-1/3.
  4. אימון ה-DNN.

חילוץ הטמעות מה-DNN

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

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