כיצד Amp באמזון השתמשה בנתונים כדי להגביר את מעורבות הלקוחות, חלק 2: בניית פלטפורמת המלצות למופעים מותאמת אישית באמצעות Amazon SageMaker PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

כיצד Amp באמזון השתמשה בנתונים כדי להגביר את מעורבות הלקוחות, חלק 2: בניית פלטפורמת המלצות למופעים מותאמת אישית באמצעות Amazon SageMaker

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

Amp משתמש בלמידה חישובית (ML) כדי לספק המלצות מותאמות אישית למופעי Amp בשידור חי וקרובים בדף הבית של האפליקציה. ההמלצות מחושבות באמצעות מודל Random Forest תוך שימוש בתכונות המייצגות את הפופולריות של תוכנית (כגון האזנה וספירת לייקים), הפופולריות של יוצר (כגון מספר הפעמים הכולל שהתוכניות האחרונות הושמעו), והזיקה האישית של משתמש לנושא וליוצר של תוכנית. הזיקה מחושבת באופן מרומז מנתוני ההתנהגות של המשתמש או באופן מפורש מתוך נושאי עניין (כגון מוזיקת ​​פופ, בייסבול או פוליטיקה) כפי שסופקו בפרופילי המשתמש שלו.

זהו חלק 2 של סדרה על שימוש בניתוח נתונים ו-ML עבור Amp ויצירת פלטפורמת רשימת המלצות מופע אישית. הפלטפורמה הראתה דחיפה של 3% למדדי מעורבות לקוחות שמעקבים אחריהם (אהבתי לתוכנית, מעקב אחר יוצר, מה שמאפשר הודעות על התוכנית הקרובה) מאז השקתה במאי 2022.

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

סקירת פתרונות

לממליץ ההצגות המבוסס על ML עבור Amp יש חמישה רכיבים עיקריים, כפי שמוצג בתרשים הארכיטקטורה הבא:

  1. אפליקציית Amp לנייד.
  2. שירותי קצה אחוריים האוספים את נתוני ההתנהגות, כמו לייקים ועוקבים, כמו גם משדרים מידע הקשור לתוכנית כמו עדכוני סטטוס כאשר תוכניות עולות לאוויר.
  3. קליטה בזמן אמת של נתוני התנהגות ומופעים, ותכונות מחשוב ואחסון בזמן אמת (מקוון).
  4. אצווה (לא מקוון) תכונה מחשוב ואחסון.
  5. מערכת ממליצים המטפלת בבקשות נכנסות מהקצה האחורי של האפליקציה לקבלת רשימת מופעים. זה כולל הסקה בזמן אמת לדירוג מופעים על סמך תכונות מותאמות אישית ולא מותאמות אישית.

פוסט זה מתמקד בחלקים 3, 4 ו-5 במאמץ לפרט את הדברים הבאים:

התרשים הבא מציג את הארכיטקטורה ברמה גבוהה ומרכיביה.

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

מחשוב תכונות בזמן אמת

יש להזרים תכונות מסוימות, כגון ספירת לייקים וספירת האזנות לתוכנית, ברציפות ולהשתמש בהן כפי שהן, בעוד שאחרות, כגון מספר הפעלות האזנה ארוכות מ-5 דקות, צריכות להשתנות בזמן אמת כנתונים גולמיים עבור הפעלות זורם. סוגים אלה של תכונות שבהן יש לחשב ערכים בזמן ההסקה נקראים נקודה בזמן (PIT) תכונות. יש לעדכן את הנתונים עבור תכונות PIT במהירות, ואת הגרסה העדכנית ביותר יש לכתוב ולקרוא עם זמן אחזור נמוך (מתחת ל-20 אלפיות השנייה למשתמש עבור 1,000 הופעות). הנתונים צריכים להיות גם באחסון עמיד מכיוון שחסרים או נתונים חלקיים עלולים לגרום להמלצות לרעה ולחוויית לקוח לקויה. בנוסף לאחזור הקריאה/כתיבה, תכונות PIT דורשות גם זמן השתקפות נמוך. זמן השתקפות הוא הזמן שלוקח לפיצ'ר להיות זמין לקריאה לאחר שהאירועים התורמים נפלטו, למשל, הזמן שבין מאזין שאוהב תוכנית ועד לעדכון תכונת PIT LikeCount.

מקורות הנתונים הם שירותי הקצה המשרתים ישירות את האפליקציה. חלק מהנתונים הופכים למדדים המשודרים לאחר מכן באמצעות שירות התראה פשוט של אמזון (Amazon SNS) למאזינים במורד הזרם כגון צינור הטרנספורמציה של תכונות ML. מסד נתונים בזיכרון כגון MemoryDB הוא שירות אידיאלי לאחסון עמיד וביצועים מהירים במיוחד בנפחים גבוהים. רכיב המחשוב שהופך וכותב תכונות ל-MemoryDB הוא Lambda. תעבורת האפליקציה עוקבת אחר דפוסים יומיים ושבועיים של שיאים וצניחה בהתאם לשעה וליום. Lambda מאפשרת קנה מידה אוטומטי לנפח אירועים נכנסים. האופי העצמאי של כל טרנספורמציה מטרית אינדיבידואלית גם הופך את Lambda, שהוא שירות חסר מדינה בפני עצמו, להתאים היטב לבעיה זו. לשים שירות תורים פשוט של אמזון (Amazon SQS) בין Amazon SNS ו-Lambda לא רק מונע אובדן הודעות אלא גם משמש כחיץ להתפרצויות בלתי צפויות של תעבורה שייתכן כי מגבלות מקבילות של Lambda שהוגדרו מראש לא יספיקו לשרת.

מחשוב תכונות אצווה

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

לאיסוף נתונים גולמיים עבור מחשוב תכונות אצווה אין את דרישת זמן השתקפות של תת-דקות שיש לתכונות PIT, מה שמאפשר לאמץ את האירועים ולשנות מדדים באצווה. פתרון זה השתמש ב-Kinesis Data Firehose, שירות מנוהל להטמעת נתונים זורמים במהירות למספר יעדים, כולל שירות אחסון פשוט של אמזון (Amazon S3) עבור מדדים מתמשכים לאגם הנתונים S3 לשימוש בחישובים לא מקוונים. Kinesis Data Firehose מספק מאגר אירועים ואינטגרציה של Lambda כדי לאסוף בקלות, להמיר אצווה ולהתמיד במדדים אלה לאמזון S3 כדי לנצל מאוחר יותר על ידי מחשוב תכונת האצווה. לחישובי תכונות אצווה אין אותן דרישות קריאה/כתיבה נמוכות כמו תכונות PIT, מה שהופך את Amazon S3 לבחירה הטובה יותר מכיוון שהוא מספק אחסון עמיד בעלות נמוכה לאחסון נפחים גדולים אלה של מדדים עסקיים.

מודל ה-ML הראשוני שלנו משתמש ב-21 תכונות אצווה המחושבות מדי יום באמצעות נתונים שנלכדו ב-2 החודשים האחרונים. נתונים אלה כוללים גם היסטוריית הפעלה וגם היסטוריית מעורבות באפליקציה לכל משתמש, וגדלים עם מספר המשתמשים ותדירות השימוש באפליקציה. הנדסת תכונות בקנה מידה זה דורשת תהליך אוטומטי כדי למשוך את נתוני הקלט הנדרשים, לעבד אותם במקביל ולייצא את התוצאה לאחסון מתמשך. תשתית העיבוד נחוצה רק למשך החישובים. עיבוד SageMaker מספק תמונות Docker שנבנו מראש הכוללות Apache Spark ותלות אחרות הדרושים להפעלת עבודות עיבוד נתונים מבוזרות בקנה מידה גדול. התשתית הבסיסית לעבודת עיבוד מנוהלת במלואה על ידי SageMaker. משאבי אשכול מסופקים למשך משך העבודה שלך, ומנקים כאשר עבודה הושלמה.

כל שלב בתהליך האצווה - איסוף נתונים, הנדסת תכונות, התמדה בתכונות - הוא חלק מזרימת עבודה הדורשת טיפול בשגיאות, נסיונות חוזרים ומעברי מצב ביניהם. עם פונקציות שלב AWS, אתה יכול ליצור מכונת מצב ולפצל את זרימת העבודה שלך למספר שלבים של עיבוד מקדים ואחרי עיבוד, כמו גם שלב כדי להתמיד בתכונות לתוך SageMaker Feature Store או לשאר הנתונים לאמזון S3. ניתן להפעיל מכונת מצב ב-Step Functions באמצעות אמזון EventBridge כדי להפוך מחשוב אצווה לאוטומטי להפעלה בלוח זמנים מוגדר, כגון פעם בכל יום בשעה 10:00 UTC.

לאחר חישוב התכונות, יש לשנות אותן ולאחסן אותן כדי לקרוא אותן במהלך הסקת מסקנות כמו גם אימון מחדש של המודל. במקום לבנות שירות אחסון וניהול תכונות משלך, אתה יכול להשתמש ב- SageMaker Feature Store. Feature Store הוא מאגר מנוהל במלואו, בנוי במיוחד לאחסון, שיתוף וניהול תכונות עבור דגמי ML. הוא מאחסן היסטוריה של תכונות ML בחנות הלא מקוונת (Amazon S3) וגם מספק ממשקי API לחנות מקוונת כדי לאפשר קריאה עם אחזור נמוך של התכונות האחרונות. החנות הלא מקוונת יכולה לשרת את הנתונים ההיסטוריים להכשרת מודלים וניסויים נוספים, וניתן לקרוא לחנות המקוונת על ידי ממשקי API מול הלקוחות שלך כדי לקבל תכונות להסקת מסקנות בזמן אמת. ככל שאנו מפתחים את השירותים שלנו כדי לספק תוכן מותאם אישית יותר, אנו צופים הכשרה של מודלים נוספים של ML ובעזרת Feature Store, חיפוש, גילוי ושימוש חוזר בתכונות בין הדגמים הללו.

הסקה בזמן אמת

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

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

בריאות תפעולית

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

מדידת התוצאה

לפני המלצת התוכנית מבוססת ML המתואר בפוסט זה, אלגוריתם היוריסטי פשוט יותר דירג את Amp על סמך נושאי העניין האישיים של המשתמש המדווחים בפרופיל שלו. הגדרנו מבחן A/B כדי למדוד את ההשפעה של המעבר לממליצים מבוססי ML עם נתונים של משתמש מאינטראקציות קודמות עם אפליקציות. זיהינו שיפורים במדדים כמו משך האזנה ומספר פעולות מעורבות (אהבתי לתכנית, מעקב אחר יוצר תכנית, הפעלת התראות) כאינדיקטורים להצלחה. בדיקות A/B עם 50% מהמשתמשים שקיבלו המלצות למופעים שדורגו עבורם דרך המליץ ​​מבוסס ML הראו חיזוק של 3% למדדי מעורבות הלקוחות ושיפור של 0.5% במשך ההשמעה.

סיכום

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

בדיקת A/B של הגרסה הראשונה של הממליץ המבוסס על ML של Amp מול גישה מבוססת כללים (הממיינת מופעים לפי נושאי העניין של הלקוח בלבד) הראתה שהממליץ מבוסס ה-ML חושף לקוחות לתוכן איכותי יותר מנושאים מגוונים יותר. , מה שמביא למספר גבוה יותר של מעקבים והתראות מופעלות. צוות Amp פועל ללא הרף לשיפור המודלים כדי לספק המלצות רלוונטיות ביותר.

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


על המחברים

כיצד Amp באמזון השתמשה בנתונים כדי להגביר את מעורבות הלקוחות, חלק 2: בניית פלטפורמת המלצות למופעים מותאמת אישית באמצעות Amazon SageMaker PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.טוליפ גופטה הוא אדריכל פתרונות בשירותי האינטרנט של אמזון. היא עובדת עם אמזון כדי לתכנן, לבנות ולפרוס פתרונות טכנולוגיים ב-AWS. היא מסייעת ללקוחות באימוץ שיטות עבודה מומלצות תוך פריסת פתרונות ב-AWS, וחובבת Analytics ו-ML. בזמנה הפנוי היא נהנית לשחות, לטייל ולשחק במשחקי לוח.

כיצד Amp באמזון השתמשה בנתונים כדי להגביר את מעורבות הלקוחות, חלק 2: בניית פלטפורמת המלצות למופעים מותאמת אישית באמצעות Amazon SageMaker PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.דיוויד קואו הוא אדריכל פתרונות בשירותי האינטרנט של אמזון. הוא עובד עם לקוחות AWS כדי לתכנן, לבנות ולפרוס פתרונות טכנולוגיים ב-AWS. הוא עובד עם לקוחות מדיה ובידור ויש לו תחומי עניין בטכנולוגיות למידת מכונה. בזמנו הפנוי הוא תוהה מה עליו לעשות בזמנו הפנוי.

כיצד Amp באמזון השתמשה בנתונים כדי להגביר את מעורבות הלקוחות, חלק 2: בניית פלטפורמת המלצות למופעים מותאמת אישית באמצעות Amazon SageMaker PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.מנוליה מקורמיק הוא מהנדס פיתוח תוכנה Sr עבור Amp באמזון. היא מעצבת ובונה מערכות מבוזרות באמצעות AWS לשרת יישומים מול לקוחות. היא נהנית לקרוא ולבשל מתכונים חדשים בזמנה הפנוי.

כיצד Amp באמזון השתמשה בנתונים כדי להגביר את מעורבות הלקוחות, חלק 2: בניית פלטפורמת המלצות למופעים מותאמת אישית באמצעות Amazon SageMaker PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.ג'ף כריסטופרסן הוא מהנדס נתונים ראשוני עבור Amp באמזון. הוא פועל לתכנון, בנייה ופריסה של פתרונות Big Data ב-AWS המניעים תובנות ניתנות לפעולה. הוא מסייע לצוותים פנימיים באימוץ פתרונות מדרגיים ואוטומטיים, וחובב אנליטיקס וביג דאטה. בזמנו הפנוי, כשהוא לא על זוג מגלשיים אפשר למצוא אותו על אופני ההרים שלו.

בול זמן:

עוד מ למידת מכונות AWS