מעמיק: מערכת המלצת התוכן שפיתחה החברה מאחורי טיק טוק
בשנת 2022 פורסם מאמר שמסביר את הרעיון מאחורי מערכת המלצת התוכן של טיק טוק. למרות הזמן שעבר, המאמר מסביר כיצד עובדת המערכת שמשפיעה על מיליוני משתמשים בעולם
מערכות המלצה הן חלק בלתי נפרד מחיי היום-יום שלנו, בין אם מדובר בסרטונים שמוצעים לנו בפלטפורמות כמו טיקטוק או במוצרים שאנו רוכשים באתרי מסחר מקוון. עם זאת, מאחורי הקלעים קיימים אתגרים מורכבים שהופכים את יצירת ההמלצות המדויקות בזמן אמת למשימה לא פשוטה כלל. חברת Bytedance, המוכרת בעיקר בזכות טיקטוק, פיתחה מערכת בשם Monolith, שמביאה גישה חדשנית להתמודדות עם האתגרים הללו ומשפרת משמעותית את ביצועי מערכות ההמלצה.
אחד האתגרים המרכזיים של מערכות ההמלצה הוא הדינמיות הגבוהה של נתוני המשתמשים. בניגוד לתחומים כמו עיבוד שפה או ראייה ממוחשבת, שבהם הנתונים יציבים יחסית, במערכות המלצה ההעדפות של המשתמשים משתנות לעיתים קרובות בתוך דקות או שעות. בעיה נוספת היא גודל הנתונים – מספר המשתמשים והפריטים שנדרשים לניהול עצום, ומוביל לעומס על מערכות המיפוי שבהן נשמרים הפרמטרים של המודלים. בנוסף, מערכות ההמלצה נאלצות להתמודד עם תופעה שנקראת “Concept Drift”, שבה דפוסי הנתונים משתנים לאורך זמן, מה שגורם למודלים ישנים להפוך ללא רלוונטיים.
Monolith פותרת את האתגרים האלו באמצעות מספר חידושים משמעותיים. ראשית, המערכת עושה שימוש בטבלאות מיפוי ללא התנגשויות (Collisionless Embedding Tables). בטבלאות אלו נשמרים נתונים על משתמשים ופריטים באופן שמונע התנגשויות – מצב שבו מזהים שונים חולקים משאב אחסון משותף, מה שפוגע באיכות המודל. המערכת מבוססת על טכנולוגיית Cuckoo Hashing, שמאפשרת לאחסן את הנתונים בצורה יעילה יותר, תוך חיסכון בזיכרון ושיפור ביצועי המודלים.
שנית, המערכת משלבת בין אימון אצווה לאימון מקוון. באימון האצווה, המערכת לומדת מנתונים היסטוריים כדי לשפר את המודל הכללי. באימון המקוון, המערכת מתעדכנת בזמן אמת על בסיס נתונים חדשים שמגיעים ממשתמשים – כמו צפייה בסרטון או לחיצה על פרסומת – ומתאימה את ההמלצות שלה בהתאם. שילוב זה מאפשר למערכת לספק המלצות מדויקות יותר ולהגיב במהירות לשינויים בהעדפות המשתמשים.
בנוסף, Monolith מציגה מנגנון סנכרון פרמטרים יעיל שמונע הפרעות לשירות בזמן עדכון המודלים. במערכות מסורתיות, עדכון פרמטרים עלול לדרוש עצירה זמנית של השירות, מה שפוגע בחוויית המשתמש. לעומת זאת, במונולית, עדכונים נעשים באופן הדרגתי וללא צורך בהפסקת הפעולה. המערכת גם מציעה עמידות גבוהה לתקלות – היא מבצעת גיבוי יומי של כל הפרמטרים, כך שגם במקרה של תקלה חמורה, ניתן לשחזר את המודלים במהירות ולמנוע פגיעה משמעותית באיכות ההמלצות.
התוצאות בשטח מרשימות. בניסויים שנערכו על בסיס נתונים ציבוריים ופנימיים, Monolith הצליחה לשפר משמעותית את דיוק המודלים בהשוואה לפתרונות קיימים. למשל, המערכת הראתה שיפור עקבי במדד AUC, המשמש למדידת דיוק המודלים. כמו כן, המערכת הוכיחה יכולת להתמודד עם שינויים בדפוסי הנתונים (Concept Drift) תוך שמירה על ביצועים גבוהים לאורך זמן.
מעבר ליכולות הטכניות המרשימות, היתרון המשמעותי של Monolith הוא הפשטות שלה. המערכת פותחה כך שתוכל להשתלב בקלות בפלטפורמות קיימות כמו TensorFlow, ולהתאים לצרכים משתנים בתעשייה. בזכות זאת, היא מתאימה לא רק לחברות ענק כמו Bytedance, אלא גם לארגונים קטנים יותר שזקוקים לפתרונות המלצה מתקדמים.
מערכת Monolith היא לא רק עוד חידוש טכנולוגי – היא מביאה עמה גישה חדשה לשיפור חוויית המשתמש. באמצעות שילוב של טכנולוגיות מתקדמות, סנכרון בזמן אמת ויכולת עמידות גבוהה, היא מציבה סטנדרט חדש בתעשיית ההמלצות. עם הטמעתה המוצלחת בשירותים כמו BytePlus Recommend, Monolith מוכיחה שהיא לא רק טכנולוגיה של העתיד, אלא פתרון שפועל כבר היום, ומגדיר מחדש את הדרך שבה אנו חווים תכנים מותאמים אישית.