לוגו זפירנט

דריפט מודלים בלמידת מכונות - איך להתמודד עם זה בביג דאטה

תאריך:

דריפט מודלים בלמידת מכונות - איך להתמודד עם זה בביג דאטה

Rendezvous Architecture עוזר לך להריץ ולבחור תפוקות מדגם צ'מפיון ודגמי צ'לנג'ר רבים הפועלים במקביל ללא תקורות רבות. הגישה המקורית עובדת היטב עבור מערכי נתונים קטנים יותר, אז איך רעיון זה יכול להסתגל לצינורות Big Data?


By סאי גיתה, מומחה להנדסת ביג דאטה ומדעי הנתונים.

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

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

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

דוגמנית להיסחף

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

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

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

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

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

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

דוגמניות אלופות-צ'לנג'ר

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

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

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

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

צינור אלפא-בטא טיפוסי ייראה כך:

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

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

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

זה ייראה כך:

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

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

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

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

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

אדריכלות מפגש

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

תן לי להסביר כעת פרק אחר קטע בארכיטקטורה זו.

חלק 1:

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

חלק 2:

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

חלק 3:

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

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

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

חלק 4:

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

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

חלק 5:

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

אז, השגנו כאן שני דברים:

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

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

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

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

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

סיכום

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

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

<br> סיכום

ארכיטקטורת המפגש נותנת גמישות רבה ברמות שונות.

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

הפניות

  1. לוגיסטיקה של למידת מכונה מאת טד דאנינג; אלן פרידמן - פרק שלישי בנושא "הארכיטקטורה המפגש ללמידת מכונה"
  2. כתבה על לכיוון datascience.com"ארכיטקטורה מפגשת למדעי הנתונים בייצור"מאת יאן טייכמן

מְקוֹרִי. פורסם מחדש באישור.

Bio you סאי גיתה (@saigeethamn) הוא אדריכל בעל ניסיון ביצירת מפות דרכים אסטרטגיות וחדשנות המבוססת על צרכי הארגון והטכנולוגיות המובילות. מומחה ביג דאטה בעל ידע במדעי הנתונים שיכול לגשר על הפער בין שני העולמות ולהביא הצלחה לכל יוזמת נתונים גדולה בארגון שלך.

מידע נוסף:


PlatoAi. Web3 מחדש. מודיעין נתונים מוגבר.
לחץ כאן לגישה.

מקור: https://www.kdnuggets.com/2021/08/model-drift-machine-learning-big-data.html

ספוט_ימג

המודיעין האחרון

ספוט_ימג