אחזור

נניח שיש לכם מודל להטמעה. למשתמש, איך היית רוצה להחליט על אילו פריטים להמליץ?

בזמן ההצגה, בהתאם לשאילתה, מתחילים באחת מהפעולות הבאות:

  • עבור מודל חישובי המטריצות, השאילתה (או המשתמש) מוטמעת באופן סטטי, והמערכת יכולה פשוט לחפש אותה מתוך מטריצת ההטמעה של המשתמש.
  • עבור מודל DNN, המערכת מחשבת את הטמעת השאילתה \(\psi(x)\) בזמן ההצגה על ידי הפעלת הרשת בכלי של וקטור התכונות \(x\).

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

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

אתם יכולים להשתמש בגישה דומה בהמלצות לגבי פריטים קשורים. לדוגמה, כשהמשתמש צופה בסרטון ב-YouTube, המערכת יכולה קודם כול לחפש את ההטמעה של הפריט הזה, ולאחר מכן לחפש הטמעות של פריטים אחרים,\(V_j\) שקרובים לחלל ההטמעה.

אחזור בקנה מידה גדול

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

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