‫Dataflow ML בתהליכי עבודה של למידת מכונה

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

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

  • להשתמש במסגרת תזמור שיש לה שילוב מובנה עם Apache Beam ועם Dataflow runner, כמו TensorFlow Extended ‏ (TFX) או Kubeflow Pipelines ‏ (KFP). האפשרות הזו היא הכי פשוטה.
  • יוצרים רכיב בהתאמה אישית בתבנית Dataflow ואז קוראים לתבנית מצינור ה-ML. הקריאה מכילה את קוד Apache Beam.
  • ליצור רכיב בהתאמה אישית לשימוש בצינור עיבוד הנתונים של ה-ML ולהוסיף את קוד ה-Python ישירות לרכיב. מגדירים צינור עיבוד נתונים מותאם אישית של Apache Beam ומשתמשים ב-Dataflow runner בתוך הרכיב המותאם אישית. האפשרות הזו היא המורכבת ביותר, ונדרש ניהול של יחסי התלות בצינור עיבוד הנתונים.

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

שימוש במאיצי למידת מכונה

לתהליכי עבודה של למידת מכונה שכוללים עיבוד נתונים עתיר חישובים, כמו הסקה עם מודלים גדולים, אפשר להשתמש במאיצים עם עובדי Dataflow. ‫Dataflow תומך בשימוש גם ב-GPU וגם ב-TPU.

יחידות GPU

אתם יכולים להשתמש ב-GPU של NVIDIA עם משימות Dataflow כדי להאיץ את העיבוד. ‫Dataflow תומך בסוגים שונים של מעבדי GPU של NVIDIA, כולל T4,‏ L4,‏ A100,‏ H100 ו-V100. כדי להשתמש ב-GPU, צריך להגדיר את הפייפליין באמצעות קובץ אימג' של קונטיינר בהתאמה אישית שבו מותקנים מנהלי ההתקנים (דרייברים) והספריות הדרושים של ה-GPU.

מידע מפורט על שימוש ביחידות GPU עם Dataflow זמין במאמר בנושא תמיכה ב-GPU ב-Dataflow.

TPUs

‫Dataflow תומך גם ב-Cloud TPU, שהם מאיצי AI בעיצוב מותאם אישית של Google שעברו אופטימיזציה למודלים גדולים של AI. יחידות TPU יכולות להיות בחירה טובה להאצת עומסי עבודה של הסקת מסקנות בפריימוורקים כמו PyTorch,‏ JAX ו-TensorFlow. ‫Dataflow תומך בהגדרות TPU של מארח יחיד, שבהן כל עובד מנהל מכשיר TPU אחד או יותר.

מידע נוסף זמין במאמר בנושא תמיכה ב-TPU ב-Dataflow.

תזמור תהליכי עבודה

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

גם TFX וגם Kubeflow Pipelines‏ (KFP) משתמשים ברכיבי Apache Beam.

אני רוצה להשתמש ב-Dataflow עם צינורות של Agent Platform

צינורות עיבוד נתונים ב-Agent Platform עוזרים לכם לבצע אוטומציה, ניטור וניהול של מערכות למידת מכונה (ML) באמצעות תזמור של תהליכי עבודה של למידת מכונה באופן serverless. אתם יכולים להשתמש ב-Agent Platform Pipelines כדי לתזמן תהליכי עבודה של גרפים מכוונים לא מחזוריים (DAG) שהוגדרו על ידי TFX או KFP, ולעקוב באופן אוטומטי אחרי ארטיפקטים של למידת מכונה באמצעות Vertex ML Metadata. כדי ללמוד איך לשלב את Dataflow עם TFX ו-KFP, אפשר להיעזר במידע שבקטעים הבאים.

אני רוצה להשתמש ב-Dataflow עם Kubeflow Pipelines

‫Kubeflow היא ערכת כלים ללמידת מכונה שמיועדת לפריסות של תהליכי עבודה של למידת מכונה ב-Kubernetes, כדי להפוך אותן לקלות יותר לשימוש, לניידות ולניתנות להרחבה. פייפליינים של Kubeflow הם תהליכי עבודה של למידת מכונה מקצה לקצה שאפשר לעשות בהם שימוש חוזר. הם נוצרים באמצעות Kubeflow Pipelines SDK.

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

כשמשתמשים ב-Dataflow עם KFP, אפשר להשתמש באופרטור DataflowPythonJobOP או באופרטור DataflowFlexTemplateJobOp. אפשר גם ליצור רכיב בהתאמה אישית מלאה. מומלץ להשתמש באופרטור DataflowPythonJobOP.

אם רוצים ליצור רכיב בהתאמה אישית מלאה, אפשר לעיין בדף רכיבי Dataflow במסמכי התיעוד של Gemini Enterprise Agent Platform.

אני רוצה להשתמש ב-Dataflow עם TFX

רכיבי צינור עיבוד הנתונים של TFX מבוססים על ספריות TFX, וספריות עיבוד הנתונים משתמשות ב-Apache Beam באופן ישיר. לדוגמה, TensorFlow Transform מתרגם את הקריאות של המשתמש ל-Apache Beam. לכן, אתם יכולים להשתמש ב-Apache Beam וב-Dataflow עם צינורות TFX בלי לבצע עבודת הגדרה נוספת. כדי להשתמש ב-TFX עם Dataflow, כשיוצרים את צינור עיבוד הנתונים של TFX, משתמשים ב-Dataflow runner. מידע נוסף זמין במקורות המידע הבאים: