צלב תכונות: וקטורים חד-פעמיים מוצלבים

עד עכשיו התמקדנו במעבר של שתי תכונות שונות של צבירת נקודות. בפועל, מודלים של למידה חישובית משתמשים לעתים קרובות בתכונות רציפות. עם זאת, מודלים של למידה חישובית עוברים לעיתים קרובות וקטורים של תכונות חם אחד. אפשר לחשוב על צלבים של תכונות של וקטורים של תכונות חם כשילובים לוגיים. לדוגמה, נניח שיש לנו שתי תכונות: 'מדינה' ו'שפה'. קידוד אחד של כל אחד מהם יוצר וקטורים עם תכונות בינאריות שאפשר לפרש כ-country=USA, country=France או language=English, language=Spanish. לאחר מכן, אם תוסיפו צלב של הקידודים החמים האלה, תקבלו תכונות בינאריות שאפשר לפרש כשילובים לוגיים, כמו:

  country:usa AND language:spanish

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

  binned_latitude = [0, 0, 0, 1, 0]
  binned_longitude = [0, 1, 0, 0, 0]

נניח שיצרתם צלב תכונות של שני וקטורי התכונות האלה:

  binned_latitude X binned_longitude

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

נניח שאנחנו מכסים את קווי האורך והרוחב באופן גס יותר, כך:

binned_latitude(lat) = [
  0  < lat <= 10
  10 < lat <= 20
  20 < lat <= 30
]

binned_longitude(lon) = [
  0  < lon <= 15
  15 < lon <= 30
]

יצירת צלב תכונות של סלים גסים אלה תוביל לתכונות סינתטיות בעלות המשמעות הבאה:

binned_latitude_X_longitude(lat, lon) = [
  0  < lat <= 10 AND 0  < lon <= 15
  0  < lat <= 10 AND 15 < lon <= 30
  10 < lat <= 20 AND 0  < lon <= 15
  10 < lat <= 20 AND 15 < lon <= 30
  20 < lat <= 30 AND 0  < lon <= 15
  20 < lat <= 30 AND 15 < lon <= 30
]

עכשיו נניח שהמודל שלנו צריך לחזות מה מידת שביעות הרצון של הכלבים מהכלב על סמך שתי תכונות:

  • סוג התנהגות (נביחה, בכי, התעסקות וכו')
  • השעה ביום

אם נבנה צלב של שתי התכונות האלה:

  [behavior type X time of day]

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

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