מדריך למתחילים בנושא אימון בהתאמה אישית

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

יעדי למידה

רמת הניסיון ב-Gemini Enterprise Agent Platform: מתחילים

זמן קריאה משוער: 15 דקות

מה תלמדו:

  • היתרונות של שימוש בשירות מנוהל לאימון בהתאמה אישית.
  • שיטות מומלצות לאריזת קוד אימון.
  • איך שולחים עבודת אימון ועוקבים אחריה.

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

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

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

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

סקירה כללית של אימון בהתאמה אישית

ההדרכה של מודלים בהתאמה אישית ב-Gemini Enterprise Agent Platform מתבצעת לפי תהליך העבודה הסטנדרטי הבא:

  1. יוצרים חבילה של קוד אפליקציית האימון.

  2. מגדירים ושולחים משימת אימון בהתאמה אישית.

  3. מעקב אחרי משימת אימון בהתאמה אישית.

אריזת קוד אפליקציה של אימון

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

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

‫Gemini Enterprise Agent Platform מספק קונטיינרים מוכנים מראש ל-TensorFlow,‏ PyTorch,‏ XGBoost ו-Scikit-learn. המיכלים האלה מתעדכנים באופן קבוע וכוללים ספריות נפוצות שאולי תצטרכו בקוד האימון. אתם יכולים להריץ את קוד האימון עם אחד מהקונטיינרים האלה, או ליצור קונטיינר בהתאמה אישית שבו קוד האימון והתלויות מותקנים מראש.

יש שלוש אפשרויות לאריזת הקוד ב-Gemini Enterprise Agent Platform:

  1. שולחים קובץ Python יחיד.
  2. יוצרים הפצה של מקור ב-Python.
  3. שימוש במאגרי תגים מותאמים אישית.

קובץ Python

האפשרות הזו מתאימה לניסויים מהירים. אתם יכולים להשתמש באפשרות הזו אם כל הקוד שנדרש להפעלת אפליקציית האימון נמצא בקובץ Python אחד, ואחד מממשקי ה-API של Gemini Enterprise Agent Platform מכיל את כל הספריות שנדרשות להפעלת האפליקציה. דוגמה לאריזה של אפליקציית אימון כקובץ Python יחיד מופיעה במדריך ל-Notebook Custom training and batch inference (אימון בהתאמה אישית והסקת מסקנות באצווה).

Python Source Distribution

אפשר ליצור הפצה של קוד מקור ב-Python שמכילה את אפליקציית האימון. תאחסנו את הפצת המקור עם קוד ההדרכה והתלות בקטגוריה של Cloud Storage. דוגמה לאריזה של אפליקציית אימון כהפצה של קוד מקור ב-Python אפשר לראות במדריך בנושא notebook‏ Training, tuning and deploying a PyTorch classification model (אימון, כוונון ופריסה של מודל סיווג ב-PyTorch).

מאגר תגים בהתאמה אישית

האפשרות הזו שימושית כשרוצים שליטה רבה יותר באפליקציה, או כשרוצים להריץ קוד שלא נכתב ב-Python. במקרה כזה, צריך לכתוב Dockerfile, ליצור תמונה בהתאמה אישית ולהעלות אותה ל-Artifact Registry. דוגמה להוספת אפליקציית אימון לקונטיינר מופיעה במדריך Profile model training performance using Profiler (ניתוח ביצועים של אימון מודלים באמצעות Profiler).

אם בוחרים לארוז את הקוד כהפצה של קוד מקור ב-Python או כקונטיינר בהתאמה אישית, מומלץ לבנות את האפליקציה במבנה הבא:

training-application-dir/
....setup.py
....Dockerfile
....trainer/
........task.py
........model.py
........utils.py

יוצרים ספרייה לאחסון כל קוד האפליקציה של האימון, במקרה הזה, training-application-dir. הספרייה הזו תכיל קובץ setup.py אם משתמשים בהפצת מקור של Python, או קובץ Dockerfile אם משתמשים במאגר מותאם אישית.

בשני התרחישים, בספרייה ברמה הגבוהה יהיה גם תיקיית משנה trainer, שמכילה את כל הקוד להרצת האימון. בתוך trainer, הקובץ task.py הוא נקודת הכניסה הראשית לאפליקציה. הקובץ הזה מריץ את אימון המודל. אפשר להוסיף את כל הקוד לקובץ הזה, אבל באפליקציות לייצור סביר להניח שיהיו קבצים נוספים, למשל model.py, data.py, utils.py ועוד.

אימון בהתאמה אישית

משימות אימון ב-Gemini Enterprise Agent Platform מקצות באופן אוטומטי משאבי מחשוב, מריצות את קוד אפליקציית האימון ומוודאות שמחיקת משאבי המחשוב מתבצעת אחרי שמשימת האימון מסתיימת.

כשיוצרים תהליכי עבודה מורכבים יותר, סביר להניח שתשתמשו ב-Agent Platform SDK for Python כדי להגדיר, לשלוח ולעקוב אחרי משימות ההכשרה. עם זאת, בפעם הראשונה שמריצים משימת הכשרה בהתאמה אישית, יכול להיות שיהיה לכם קל יותר להשתמש במסוף. Google Cloud

  1. נכנסים לדף Training במסוף Google Cloud .

    להדרכה

  2. לוחצים על Train new model (אימון מודל חדש).

  3. בקטע 'מודל', בוחרים באפשרות שיטת אימון ואז באפשרות אימון מותאם אישית (מתקדם).

    צריך לציין את שיטת ההדרכה

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

    מציינים מאגר תגים לאימון

  5. בקטע Compute and pricing (חישוב ומחירים), מציינים את החומרה של משימת האימון. באימון של צומת יחיד, צריך להגדיר רק את Worker Pool 0. אם אתם רוצים להריץ אימון מבוזר, תצטרכו להבין את מאגרי העובדים האחרים. מידע נוסף זמין במאמר בנושא אימון מבוזר.

    חישובים לאימון

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

מעקב אחרי משימות אימון

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

לוח הבקרה של האימונים

קובצי Notebook

וידאו