עם Vertex AI Pipelines אפשר להפוך לאוטומטיים את מערכות למידת המכונה (ML), לנטר אותן ולשלוט בהן באופן בלי שרת (serverless), באמצעות צינורות עיבוד נתונים של ML לתזמור תהליכי העבודה של ML. אפשר להריץ צינורות עיבוד נתונים של למידת מכונה שהוגדרו באמצעות Kubeflow Pipelines או TensorFlow Extended (TFX). כדי ללמוד איך לבחור מסגרת להגדרת צינור ה-ML, אפשר לעיין במאמר בנושא ממשקים להגדרת צינור.
בדף הזה מפורטים הנושאים הבאים:
מהו צינור ML?
צינור עיבוד נתונים של למידת מכונה הוא תיאור נייד וניתן להרחבה של תהליך עבודה של MLOps כסדרה של שלבים שנקראים משימות בצינור עיבוד הנתונים. כל משימה מבצעת שלב ספציפי בתהליך העבודה של אימון מודל למידת מכונה ופריסתו.
בעזרת צינורות עיבוד נתונים של למידת מכונה, אתם יכולים להחיל אסטרטגיות MLOps כדי להפוך לאוטומטיים תהליכים שחוזרים על עצמם ולעקוב אחריהם בתהליך למידת המכונה. לדוגמה, אפשר להשתמש מחדש בהגדרת צינור עיבוד נתונים כדי לאמן מחדש באופן רציף מודל על נתוני הייצור העדכניים ביותר. מידע נוסף על MLOps ב-Vertex AI זמין במאמר MLOps ב-Vertex AI.
המבנה של צינור עיבוד נתונים של למידת מכונה
צינור עיבוד נתונים של ML הוא גרף אציקלי מכוון (DAG) של משימות צינור עיבוד נתונים בקונטיינרים שמחוברות זו לזו באמצעות יחסי תלות של קלט-פלט. אפשר ליצור כל משימה ב-Python או כתמונות קונטיינר מוכנות מראש.
אפשר להגדיר את צינור עיבוד הנתונים כ-DAG באמצעות Kubeflow Pipelines SDK או TFX SDK, לקמפל אותו ל-YAML לייצוג ביניים ואז להריץ את צינור עיבוד הנתונים. כברירת מחדל, המשימות בצינור העיבוד פועלות במקביל. אפשר לקשר בין המשימות כדי להפעיל אותן ברצף. מידע נוסף על משימות בצינור זמין במאמר משימה בצינור. מידע נוסף על תהליך העבודה להגדרה, לקומפילציה ולהרצה של צינור העברת הנתונים זמין במאמר מחזור החיים של צינור להעברת נתונים של למידת מכונה.
משימות ורכיבים של צינורות
משימה בצינור עיבוד נתונים היא מופע של רכיב בצינור עיבוד נתונים עם קלט ספציפי. כשמגדירים צינור ML, אפשר לקשר בין כמה משימות כדי ליצור DAG, על ידי ניתוב הפלט של משימת צינור אחת לקלט של משימת הצינור הבאה בתהליך העבודה של ה-ML. אפשר גם להשתמש בקלט של צינור עיבוד הנתונים של ה-ML כקלט למשימה בצינור עיבוד הנתונים.
רכיב של צינור המכירות
רכיב של צינור הוא קבוצה עצמאית של קוד שמבצע שלב ספציפי בתהליך העבודה של למידת מכונה, כמו עיבוד מקדים של נתונים, אימון מודל או פריסת מודל. רכיב בדרך כלל כולל את המאפיינים הבאים:
קלט: יכול להיות שלרכיב יהיו פרמטרים וארטיפקטים של קלט.
פלט: לכל רכיב יש פרמטרים או ארטיפקטים של פלט.
לוגיקה: זהו קוד ההפעלה של הרכיב. לרכיבים מבוססי-קונטיינר, הלוגיקה מכילה גם את ההגדרה של הסביבה, או קובץ אימג' של קונטיינר, שבה הרכיב פועל.
רכיבים הם הבסיס להגדרת משימות בצינור ML. כדי להגדיר משימות של צינורות, אפשר להשתמש ברכיבי צינור מוגדרים מראש שלGoogle Cloud Pipeline או ליצור רכיבים מותאמים אישית.
רכיבים מוגדרים מראש
אם רוצים להשתמש בתכונות של Vertex AI, כמו AutoML, בצינור עיבוד הנתונים, אפשר להשתמש ב-Pipeline Components מוגדרים מראש. Google Cloud כדי ללמוד איך להשתמש ב Google Cloud רכיבי צינור עיבוד נתונים להגדרת צינור עיבוד נתונים, אפשר לעיין במאמר יצירת צינור עיבוד נתונים.
רכיבים בהתאמה אישית
אתם יכולים ליצור רכיבים מותאמים אישית משלכם לשימוש בצינור ה-ML. מידע נוסף על יצירת רכיבים מותאמים אישית זמין במאמר יצירת רכיבי צינור משלכם.
כדי ללמוד איך ליצור רכיבים מותאמים אישית של Kubeflow Pipelines, אפשר לעיין ב-notebook של הדרכה בנושא Pipelines with lightweight components based on Python functions (צינורות עם רכיבים פשוטים שמבוססים על פונקציות Python) ב-GitHub. כדי ללמוד איך ליצור רכיבי TFX בהתאמה אישית, אפשר לעיין במדריך ליצירת רכיבי פונקציות Python ב-TFX במדריכים בנושא TensorFlow Extended ב-Production.
משימה פוטנציאלית
משימה בצינור עיבוד הנתונים היא מופע של רכיב בצינור עיבוד הנתונים, והיא מבצעת שלב ספציפי בתהליך העבודה של למידת מכונה. אפשר ליצור משימות של צינורות ML באמצעות Python או כקובצי אימג' מקונטיינרים מוכנים מראש.
בתוך משימה, אפשר להסתמך על יכולות ה-Compute על פי דרישה של Vertex AI עם Kubernetes כדי להריץ את הקוד בצורה מדרגית, או להעביר את עומס העבודה למנוע ביצוע אחר, כמו BigQuery, Dataflow אוGoogle Cloud Serverless for Apache Spark.
מחזור החיים של צינור עיבוד נתונים של למידת מכונה
מחזור החיים של צינור עיבוד נתונים של ML, מההגדרה ועד להרצה ולמעקב, כולל את השלבים הכלליים הבאים:
הגדרה: התהליך של הגדרת צינור עיבוד נתונים של למידת מכונה והמשימה שלו נקרא גם פיתוח צינור עיבוד נתונים. בשלב הזה, צריך לבצע את הפעולות הבאות:
בחירת מסגרת ML: Vertex AI Pipelines תומך בצינורות ML שמוגדרים באמצעות המסגרת TFX או Kubeflow Pipelines. במאמר ממשקים להגדרת צינור מוסבר איך לבחור מסגרת לבניית צינור.
הגדרת משימות בצינור עיבוד הנתונים והגדרת צינור עיבוד הנתונים: מידע נוסף זמין במאמר יצירת צינור עיבוד נתונים.
קומפילציה: בשלב הזה, צריך לבצע את הפעולות הבאות:
יוצרים את ההגדרה של צינור עיבוד הנתונים של למידת המכונה בקובץ YAML שעבר קומפילציה לייצוג ביניים, שאפשר להשתמש בו כדי להריץ את צינור עיבוד הנתונים של למידת המכונה.
אופציונלי: אפשר להעלות את קובץ ה-YAML שעבר קומפילציה כתבנית של צינור עיבוד נתונים למאגר, ולהשתמש בו שוב כדי ליצור הפעלות של צינורות עיבוד נתונים של ML.
הפעלה: יצירת מופע הפעלה של צינור עיבוד נתונים של למידת מכונה באמצעות קובץ YAML שעבר קומפילציה או תבנית של צינור עיבוד נתונים. מופע ההפעלה של הגדרת צינור עיבוד נתונים נקרא הפעלת צינור עיבוד נתונים.
אפשר ליצור הפעלה חד-פעמית של צינור עיבוד נתונים או להשתמש בAPI של מתזמן כדי ליצור הפעלות חוזרות של צינור עיבוד נתונים מאותה הגדרה של צינור עיבוד נתונים ללמידת מכונה. אפשר גם לשכפל הרצה קיימת של צינור. במאמר ממשקים להרצת צינור נתונים מוסבר איך לבחור ממשק להרצת צינור נתונים של ML. מידע נוסף על יצירת הרצה של צינור זמין במאמר הרצת צינור.
מעקב אחרי הרצות, הצגה חזותית וניתוח שלהן: אחרי שיוצרים הרצת צינור עיבוד נתונים, אפשר לבצע את הפעולות הבאות כדי לעקוב אחרי הביצועים, הסטטוס והעלויות של הרצות:
הגדרת התראות באימייל על כשלים בצינורות עיבוד נתונים. מידע נוסף זמין במאמר בנושא הגדרת התראות באימייל.
להשתמש ב-Cloud Logging כדי ליצור רשומות ביומן למעקב אחר אירועים. מידע נוסף זמין במאמר בנושא הצגת יומני עבודות של צינורות.
הצגה חזותית של הרצות של צינורות, ניתוח שלהן והשוואה ביניהן. מידע נוסף זמין במאמר בנושא הצגה חזותית וניתוח של תוצאות צינורות.
אתם יכולים להשתמש בייצוא של נתוני החיוב ב-Cloud ל-BigQuery כדי לנתח את העלויות של הרצת צינורות. מידע נוסף זמין במאמר הסבר על העלויות של הרצת צינורות.
אופציונלי: עצירה או מחיקה של הרצות של צינורות עיבוד נתונים: אין הגבלה על משך הזמן שבו אפשר להשאיר הרצה של צינור עיבוד נתונים פעילה. אפשר גם לבצע את הפעולות הבאות:
הפסקה של הרצת צינור עיבוד נתונים.
השהיה או המשך של לוח זמנים להרצת צינור.
מחיקת תבנית קיימת של צינור, הפעלה של צינור או תזמון של הפעלה של צינור.
מהי הרצת צינור?
הרצת צינור עיבוד נתונים היא מופע של הפעלה של הגדרת צינור עיבוד הנתונים של למידת המכונה. כל הרצה של צינור מזוהה באמצעות שם הרצה ייחודי. אפשר להשתמש ב-Vertex AI Pipelines כדי ליצור הרצה של צינור עיבוד נתונים ללמידת מכונה בדרכים הבאות:
שימוש בהגדרת YAML שעברה קומפילציה של צינור עיבוד נתונים
שימוש בתבנית של צינור נתונים מגלריית התבניות
מידע נוסף על יצירת הפעלה של צינור זמין במאמר הפעלת צינור. מידע נוסף על יצירת הרצת צינור מתבנית של צינור זמין במאמר יצירה, העלאה ושימוש בתבנית של צינור.
מידע על תיעוד ואחסון של מטא-נתונים של הפעלת צינורות באמצעות Vertex ML Metadata זמין במאמר שימוש ב-Vertex ML Metadata כדי לעקוב אחרי השתלשלות של ארטיפקטים של למידת מכונה.
למידע על שימוש בהרצות של צינורות כדי לבצע ניסויים בתהליך העבודה של למידת מכונה באמצעות Vertex AI Experiments, אפשר לעיין במאמר בנושא הוספת הרצות של צינורות לניסויים.
מעקב אחר שרשרת המקור של פריטי ML
הרצת צינור מכילה כמה ארטיפקטים ופרמטרים, כולל מטא-נתונים של צינור. כדי להבין שינויים בביצועים או בדיוק של מערכת למידת המכונה (ML), צריך לנתח את המטא-נתונים ואת שרשרת היוחסין של ארטיפקטים של למידת מכונה מהרצות של צינור הנתונים של למידת המכונה. השיוך של ארטיפקט ML כולל את כל הגורמים שתרמו ליצירתו, יחד עם מטא-נתונים והפניות לארטיפקטים שנגזרים ממנו.
תרשימי שושלת עוזרים לכם לנתח את שורש הבעיה במעלה הזרם ואת ההשפעה במורד הזרם. כל הפעלה של צינור מייצרת תרשים של שושלת פרמטרים וארטיפקטים שמוזנים להפעלה, ממומשים בה ומוצאים ממנה. המטא-נתונים שמרכיבים את תרשים השושלת הזה מאוחסנים ב-Vertex ML Metadata. אפשר גם לסנכרן את המטא-נתונים האלה עם Dataplex Universal Catalog.
שימוש ב-Vertex ML Metadata כדי לעקוב אחרי שושלת של ארטיפקטים של פייפליין
כשמריצים צינור עיבוד נתונים באמצעות Vertex AI Pipelines, כל הפרמטרים ומטא-נתוני הארטיפקטים שנצרכים ונוצרים על ידי צינור עיבוד הנתונים מאוחסנים ב-Vertex ML Metadata. Vertex ML Metadata הוא הטמעה מנוהלת של ספריית ML Metadata ב-TensorFlow, והוא תומך ברישום ובכתיבה של סכימות מטא-נתונים מותאמות אישית. כשיוצרים הפעלה של צינור ב-Vertex AI Pipelines, המטא-נתונים מהפעלת הצינור נשמרים במאגר המטא-נתונים שמוגדר כברירת מחדל לפרויקט ולאזור שבהם מפעילים את הצינור.
שימוש ב-Dataplex Universal Catalog כדי לעקוב אחרי מקורות של ארטיפקטים של צינורות עיבוד נתונים
Dataplex Universal Catalog הוא מארג נתונים גלובלי וחוצה פרויקטים שמשולב עם מערכות רבות ב- Google Cloud, כמו Vertex AI, BigQuery ו-Cloud Composer. ב-Dataplex Universal Catalog, אפשר לחפש ארטיפקט של צינור עיבוד נתונים ולראות את תרשים השושלת שלו. שימו לב: כדי למנוע קונפליקטים בין ארטיפקטים, כל משאב שמתווסף לקטלוג Dataplex Universal Catalog מזוהה באמצעות שם מלא (FQN).
למידע נוסף על מעקב אחר השתלשלות של ארטיפקטים של ML באמצעות Vertex ML Metadata ו-Dataplex Universal Catalog, אפשר לעיין במאמר מעקב אחר השתלשלות של ארטיפקטים של צינורות.
מידע נוסף על הדמיה, ניתוח והשוואה של הרצות של צינורות זמין במאמר הדמיה וניתוח של תוצאות צינורות. רשימה של סוגי ארטיפקטים מאינטראקציה ישירה (First-Party) שמוגדרים ב Google Cloud רכיבי צינורות, מופיעה במאמר סוגי ארטיפקטים של מטא-נתונים של ML.
הוספת הרצות של צינורות לניסויים
בעזרת Vertex AI Experiments אפשר לעקוב אחרי ארכיטקטורות שונות של מודלים, היפר-פרמטרים וסביבות אימון ולנתח אותם כדי למצוא את המודל הכי טוב לתרחיש השימוש שלכם בלמידת מכונה. אחרי שיוצרים הפעלה של צינור עיבוד נתונים של למידת מכונה, אפשר לשייך אותה לניסוי או להפעלה של ניסוי. כך תוכלו להתנסות במערכי משתנים שונים, כמו היפרפרמטרים, מספר שלבי האימון או איטרציות.
מידע נוסף על ניסויים בתהליכי עבודה של למידת מכונה באמצעות Vertex AI Experiments זמין במאמר מבוא ל-Vertex AI Experiments.
המאמרים הבאים
מידע על הממשקים שבהם אפשר להשתמש כדי להגדיר ולהפעיל צינורות נתונים באמצעות Vertex AI Pipelines
כדי להתחיל, כדאי ללמוד איך להגדיר צינור עיבוד נתונים באמצעות Kubeflow Pipelines SDK.
שיטות מומלצות להטמעה של מודלים של ML שעברו אימון בהתאמה אישית ב-Vertex AI