ערכת ה-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 משתמש ב-multi-layer perceptron (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 כדי להפעיל אפליקציות אימון מותאמות אישית זמין במאמר סקירה כללית על אימון מותאם אישית.
Vertex AI SDK כולל שלוש מחלקות שיוצרות צינור עיבוד נתונים מותאם אישית לאימון. צינור עיבוד נתונים לאימון מקבל מערך נתונים מנוהל של Gemini Enterprise Agent Platform שמשמש לאימון מודל. לאחר מכן, הוא מחזיר את המודל אחרי שמשימת האימון מסתיימת. כל אחת משלוש המחלקות של צינור עיבוד הנתונים המותאם אישית לאימון יוצרת צינור עיבוד נתונים לאימון באופן שונה. המחלקה CustomTrainingJob משתמשת בסקריפט Python, המחלקה CustomContainerTrainingJob משתמשת בקונטיינר מותאם אישית והמחלקה CustomPythonPackageTrainingJob משתמשת בחבילת Python ובקונטיינר מוכן מראש.
המחלקות CustomJob יוצרות משימת אימון בהתאמה אישית, אבל לא צינור. בניגוד לצינור אימון מותאם אישית, המחלקה CustomJob יכולה להשתמש במערך נתונים שלא מנוהל על ידי Gemini Enterprise Agent Platform כדי לאמן מודל, והיא לא מחזירה את המודל המאומן. מכיוון שהמחלקה מקבלת סוגים שונים של מערכי נתונים ולא מחזירה מודל מאומן, היא פחות אוטומטית וגמישה יותר מצינור אימון בהתאמה אישית.
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. אתם יכולים להשתמש בצינור כדי להפוך את מערכות למידת המכונה לאוטומטיות, לעקוב אחריהן ולנהל אותן. מידע נוסף על צינורות (pipelines) ב-Gemini Enterprise 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