ערכת ה-SDK של Vertex AI כוללת כמה מחלקות שבהן משתמשים כשמאמנים את המודל. רוב הכיתות של האימון משמשות ליצירה, לאימון ולהחזרה של המודל שלכם. משתמשים בפרמטרים HyperparameterTuningJob כדי לכוונן את ההיפר-פרמטרים של משימת האימון. אפשר להשתמש ב-PipelineJob כדי לנהל את תהליך העבודה של למידת מכונה (ML), וכך לבצע אוטומציה של מערכות ה-ML ולעקוב אחריהן.
בנושאים הבאים מופיע תיאור כללי של כל מחלקה שקשורה לאימון ב-Vertex AI SDK.
שיעורי הדרכה בנושא AutoML לנתונים מובְנים
Vertex AI SDK כולל את המחלקות הבאות שמשמשות לאימון מודל AutoML מובנה.
AutoMLForecastingTrainingJob
המחלקות AutoMLForecastingTrainingJob משתמשות בשיטת האימון AutoML כדי לאמן ולהפעיל מודל חיזוי.
שיטת האימון AutoML היא בחירה טובה לרוב תרחישי השימוש בתחזיות. אם תרחיש השימוש שלכם לא נהנה משיטת האימון Seq2seq או Temporal fusion transformer שמוצעת בכיתות SequenceToSequencePlusForecastingTrainingJob ו-TemporalFusionTransformerForecastingTrainingJob בהתאמה, אז סביר להניח ש-AutoML היא שיטת האימון הטובה ביותר לחיזויים שלכם.
כדי לראות קוד לדוגמה שמראה איך להשתמש ב-AutoMLForecastingTrainingJob, אפשר לעיין ביצירת דוגמה של צינור עיבוד נתונים לאימון לחיזוי ב-GitHub.
AutoMLTabularTrainingJob
המחלקות AutoMLTabularTrainingJob מייצגות עבודה שיוצרת, מאמנת ומחזירה מודל טבלאי AutoML.
מידע נוסף על אימון מודלים של נתונים טבלאיים ועל Gemini Enterprise Agent Platform זמין במאמרים נתונים טבלאיים וסקירה כללית על נתונים טבלאיים.
בקטע הקוד הבא מוצגת דוגמה לאופן השימוש ב-Vertex AI SDK כדי ליצור ולהריץ AutoML מודל טבלאי:
dataset = aiplatform.TabularDataset('projects/my-project/location/us-central1/datasets/{DATASET_ID}')
job = aiplatform.AutoMLTabularTrainingJob(
display_name="train-automl",
optimization_prediction_type="regression",
optimization_objective="minimize-rmse",
)
model = job.run(
dataset=dataset,
target_column="target_column_name",
training_fraction_split=0.6,
validation_fraction_split=0.2,
test_fraction_split=0.2,
budget_milli_node_hours=1000,
model_display_name="my-automl-model",
disable_early_stopping=False,
)
SequenceToSequencePlusForecastingTrainingJob
המחלקות
SequenceToSequencePlusForecastingTrainingJob
משתמשות בשיטת האימון Seq2seq+ כדי לאמן ולהפעיל מודל חיזוי.
שיטת האימון Seq2seq+ היא בחירה טובה לניסויים. האלגוריתם שלה פשוט יותר והיא משתמשת במרחב חיפוש קטן יותר מאשר האפשרות AutoML.
Seq2seq+ היא אפשרות טובה אם אתם רוצים לקבל תוצאות מהירות וקבוצות הנתונים שלכם קטנות מ-1GB.
קוד לדוגמה שמראה איך להשתמש ב-SequenceToSequencePlusForecastingTrainingJob זמין ב-GitHub במאמר יצירת צינור עיבוד נתונים לאימון של תחזית Seq2seq.
TemporalFusionTransformerForecastingTrainingJob
במחלקת TemporalFusionTransformerForecastingTrainingJob נעשה שימוש בשיטת האימון Temporal Fusion Transformer (TFT) כדי לאמן ולהפעיל מודל חיזוי. שיטת האימון של TFT מיישמת מודל של רשת נוירונים עמוקה (DNN) שמבוסס על תשומת לב ומשתמש במשימת חיזוי רב-אופקית כדי ליצור תחזיות.
קוד לדוגמה שמראה איך להשתמש ב-TemporalFusionTransformerForecastingTrainingJob זמין בדוגמה ליצירת צינור עיבוד נתונים לאימון של תחזית טרנספורמציה של מיזוג זמני ב-GitHub.
TimeSeriesDenseEncoderForecastingTrainingJob
המחלקות
TimeSeriesDenseEncoderForecastingTrainingJob
משתמשות בשיטת האימון Time-series Dense Encoder (TiDE) כדי לאמן ולהפעיל מודל לחיזוי. TiDE משתמש בפרספטרון רב-שכבתי (MLP) כדי לספק את המהירות של מודלים ליניאריים לחיזוי עם משתנים מסבירים ותלות לא ליניארית.
מידע נוסף על TiDE זמין במאמר Recent advances in deep long-horizon forecasting ובפוסט הזה בבלוג בנושא TiDE.
שיעורי הדרכה של AutoML לנתונים לא מובנים
Vertex AI SDK כולל את המחלקות הבאות לאימון מודלים של תמונות לא מובנות:
AutoMLImageTrainingJob
משתמשים במחלקת AutoMLImageTrainingJob כדי ליצור מודל תמונה, לאמן אותו ולהחזיר אותו. מידע נוסף על עבודה עם מודלים של נתוני תמונות בפלטפורמת הסוכנים של Gemini Enterprise זמין במאמר בנושא נתוני תמונות.
דוגמה לשימוש במחלקה AutoMLImageTrainingJob מופיעה במדריך בנושא סיווג תמונות ב-AutoML.
סיווגים של אימון נתונים בהתאמה אישית
אתם יכולים להשתמש ב-Vertex AI SDK כדי להפוך לאוטומטי את תהליך העבודה של אימון מודל בהתאמה אישית. מידע על שימוש ב-Gemini Enterprise Agent Platform כדי להפעיל אפליקציות של אימון מותאם אישית זמין במאמר סקירה כללית על אימון מותאם אישית.
חבילת ה-SDK של Vertex AI כוללת שלוש מחלקות שיוצרות צינור עיבוד נתונים מותאם אישית לאימון. פייפליין אימון מקבל קלט של קבוצת נתונים שמנוהל על ידי Gemini Enterprise Agent Platform, ומשתמש בו כדי לאמן מודל. לאחר מכן, היא מחזירה את המודל אחרי שפעולת האימון מסתיימת. כל אחת משלוש המחלקות של צינורות אימון בהתאמה אישית יוצרת צינור אימון באופן שונה.
CustomTrainingJob משתמש בסקריפט Python, CustomContainerTrainingJob משתמש במאגר מותאם אישית ו-CustomPythonPackageTrainingJob משתמש בחבילת Python ובמאגר מוכן מראש.
המחלקות CustomJob יוצרות משימת אימון בהתאמה אישית, אבל הן לא צינורות. בניגוד לצינור אימון מותאם אישית, המחלקה CustomJob יכולה להשתמש במערך נתונים שלא מנוהל על ידי פלטפורמת הסוכנים של Gemini Enterprise כדי לאמן מודל, והיא לא מחזירה את המודל המאומן. מכיוון שהמחלקה מקבלת סוגים שונים של מערכי נתונים ולא מחזירה מודל מאומן, היא פחות אוטומטית וגמישה יותר מצינור אימון בהתאמה אישית.
CustomContainerTrainingJob
אפשר להשתמש במחלקה CustomContainerTrainingJob
כדי להשתמש במאגר להפעלת צינור עיבוד נתונים מותאם אישית לאימון ב-Gemini Enterprise Agent Platform.
דוגמה לשימוש במחלקה CustomContainerTrainingJob מופיעה במדריך PyTorch Image Classification Multi-Node Distributed Data Parallel Training on GPU using Gemini Enterprise Agent Platform Training with Custom Container.
CustomJob
אפשר להשתמש במחלקה CustomJob כדי להפעיל סקריפט להפעלת משימת אימון מותאמת אישית ב-Gemini Enterprise Agent Platform.
משימת אימון היא גמישה יותר מפייפליין אימון, כי אתם לא מוגבלים לטעינת הנתונים שלכם בסט נתונים שמנוהל על ידי Gemini Enterprise Agent Platform, והפניה למודל שלכם לא נרשמת אחרי שמשימת האימון מסתיימת. לדוגמה, אפשר להשתמש במחלקה CustomJob, בשיטה from_local_script ובסקריפט כדי לטעון מערך נתונים מ-scikit-learn או מ-TensorFlow. אולי תרצו לנתח או לבדוק את המודל שאומן לפני שתירשמו ל-Gemini Enterprise Agent Platform.
מידע נוסף על משימות אימון בהתאמה אישית, כולל הדרישות לפני שליחת משימת אימון בהתאמה אישית, מה כוללת משימה בהתאמה אישית ודוגמה לקוד Python, זמין במאמר יצירת משימות אימון בהתאמה אישית.
מכיוון שהפונקציה CustomJob.run לא מחזירה את המודל שאומן, צריך להשתמש בסקריפט כדי לכתוב את ארטיפקט המודל למיקום מסוים, כמו קטגוריה של Cloud Storage. מידע נוסף זמין במאמר בנושא ייצוא של מודל ML שאומן.
בדוגמת הקוד הבאה אפשר לראות איך ליצור ולהריץ משימה בהתאמה אישית באמצעות מפרט לדוגמה של מאגר עובדים. הקוד כותב את המודל שאומן לקטגוריה של Cloud Storage בשם artifact-bucket.
# Create a worker pool spec that specifies a TensorFlow cassava dataset and
# includes the machine type and Docker image. The Google Cloud project ID
# is 'project-id'.
worker_pool_specs=[
{
"replica_count": 1,
"machine_spec": { "machine_type": "n1-standard-8",
"accelerator_type": "NVIDIA_TESLA_V100",
"accelerator_count": 1
},
"container_spec": {"image_uri": "gcr.io/{project-id}/multiworker:cassava"}
},
{
"replica_count": 1,
"machine_spec": { "machine_type": "n1-standard-8",
"accelerator_type": "NVIDIA_TESLA_V100",
"accelerator_count": 1
},
"container_spec": {"image_uri": "gcr.io/{project-id}/multiworker:cassava"}
}
]
# Use the worker pool spec to create a custom training job. The custom training
# job artifacts are stored in the Cloud Storage bucket
# named 'artifact-bucket'.
your_custom_training_job = aiplatform.CustomJob(
display_name='multiworker-cassava-sdk',
worker_pool_specs=worker_pool_specs,
staging_bucket='gs://{artifact-bucket}')
# Run the training job. This method doesn't return the trained model.
my_multiworker_job.run()
CustomPythonPackageTrainingJob
אפשר להשתמש במחלקה
CustomPythonPackageTrainingJob
כדי להשתמש בחבילת Python להפעלת צינור עיבוד נתונים מותאם אישית ב-Gemini Enterprise Agent Platform.
דוגמה לשימוש במחלקה CustomPythonPackageTrainingJob מופיעה במדריך Custom training using Python package, managed text dataset, and TensorFlow serving container (אימון מותאם אישית באמצעות חבילת Python, מערך נתונים מנוהל של טקסט וקונטיינר TensorFlow serving) ב-notebook.
CustomTrainingJob
אפשר להשתמש במחלקה CustomTrainingJob כדי להפעיל צינור הדרכה מותאם אישית ב-Gemini Enterprise Agent Platform באמצעות סקריפט.
דוגמה לשימוש במחלקה CustomTrainingJob מופיעה במדריך Custom training image classification model for online prediction with explainability (מודל סיווג תמונות לאימון בהתאמה אישית לחיזוי אונליין עם יכולת הסבר) במחברת.
Hyperparameter training class
Vertex AI SDK כולל מחלקה לכוונון היפר-פרמטרים. כוונון היפר-פרמטרים מאפשר למקסם את דיוק החיזוי של המודל באמצעות אופטימיזציה של משתנים (שנקראים היפר-פרמטרים) ששולטים בתהליך האימון. מידע נוסף זמין במאמר סקירה כללית על אופטימיזציה של היפרפרמטרים.
HyperparameterTuningJob
אפשר להשתמש במחלקה HyperparameterTuningJob כדי לבצע אופטימיזציה אוטומטית של היפרפרמטרים באפליקציית אימון.
במדריך Hyperparameter tuning ב-GitHub מוסבר איך להשתמש במחלקה HyperparameterTuningJob כדי ליצור מודל שאומן בהתאמה אישית ולבצע בו אופטימיזציה.
כדי ללמוד איך להשתמש במחלקה HyperparameterTuningJob כדי להריץ משימת כוונון של היפר-פרמטרים של מודל TensorFlow ב-Gemini Enterprise Agent Platform, אפשר לעיין במדריך הפעלת כוונון של היפר-פרמטרים של מודל TensorFlow ב-GitHub.
שיעור בהדרכה על צינורות עיבוד נתונים
צינור (pipeline) מתזמר את תהליך העבודה של ה-ML ב-Gemini Enterprise Agent Platform. אתם יכולים להשתמש בצינור כדי להפוך את מערכות למידת המכונה לאוטומטיות, לעקוב אחריהן ולנהל אותן. מידע נוסף על צינורות ב-Gemini Enterprise Agent Platform זמין במאמר מבוא לצינורות ב-Agent Platform.
PipelineJob
מופע של המחלקה PipelineJob מייצג צינור של Gemini Enterprise Agent Platform.
יש כמה מחברות הדרכה שמדגימות איך להשתמש במחלקה PipelineJob:
כדי ללמוד איך להריץ צינור עיבוד נתונים של Kubeflow Pipelines (KFP), אפשר לעיין במדריך Pipeline control structures using the KFP SDK ב-GitHub.
במדריך אימון וחיזוי באצווה עם מקור ויעד BigQuery למודל מותאם אישית של סיווג טבלאי ב-GitHub מוסבר איך לאמן מודל סיווג טבלאי של scikit-learn וליצור משימת חיזוי באצווה באמצעות צינור של Gemini Enterprise Agent Platform.
כדי ללמוד איך ליצור מודל לסיווג תמונות באמצעות AutoML ואיך להשתמש בצינור עיבוד נתונים של Gemini Enterprise Agent Platform, אפשר לעיין במדריך בנושא צינורות עיבוד נתונים לסיווג תמונות באמצעות AutoML באמצעות google-cloud-pipeline-components ב-GitHub.
עוד נוטבוקים להדרכה זמינים במאמר נוטבוקים להדרכה של Gemini Enterprise Agent Platform.
המאמרים הבאים
- מידע נוסף על Vertex AI SDK