Vertex AI SDK menyertakan beberapa class yang digunakan saat
melatih model Anda. Sebagian besar class pelatihan digunakan untuk membuat, melatih, dan menampilkan model Anda. Gunakan HyperparameterTuningJob
untuk menyesuaikan hyperparameter tugas pelatihan. Gunakan PipelineJob
untuk mengelola alur kerja machine learning (ML) agar Anda dapat mengotomatiskan dan memantau sistem ML Anda.
Topik-topik berikut memberikan deskripsi tingkat tinggi dari setiap class terkait pelatihan di Vertex AI SDK.
Class pelatihan AutoML untuk data terstruktur
Vertex AI SDK menyertakan class berikut yang digunakan untuk melatih model AutoML terstruktur.
AutoMLForecastingTrainingJob
Class AutoMLForecastingTrainingJob
menggunakan metode pelatihan AutoML
untuk melatih dan menjalankan model perkiraan.
Metode pelatihan AutoML
adalah pilihan yang baik untuk sebagian besar kasus penggunaan perkiraan. Jika kasus penggunaan
Anda tidak mendapatkan manfaat dariSeq2seq
atau
Temporal fusion transformer
metode pelatihan yang ditawarkan
SequenceToSequencePlusForecastingTrainingJob
dan
TemporalFusionTransformerForecastingTrainingJob
kelas masing-masing, AutoML
kemungkinan besar merupakan metode pelatihan terbaik
untuk prediksi perkiraan Anda.
Untuk mengetahui kode contoh yang menunjukkan cara menggunakan AutoMLForecastingTrainingJob
, lihat Membuat contoh perkiraan pipeline pelatihan di GitHub.
AutoMLTabularTrainingJob
Class AutoMLTabularTrainingJob
merepresentasikan tugas yang membuat, melatih, dan menampilkan model tabel AutoML
.
Untuk mengetahui informasi selengkapnya tentang melatih model tabular dan Vertex AI, lihat
Data tabular dan Ringkasan data
tabular.
Contoh cuplikan kode berikut menunjukkan cara menggunakan
Vertex AI SDK untuk membuat dan menjalankan model tabel 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
Kelas
SequenceToSequencePlusForecastingTrainingJob
menggunakan metode pelatihan Seq2seq+
untuk melatih dan menjalankan model perkiraan.
Metode pelatihan Seq2seq+
adalah pilihan yang baik untuk eksperimen. Algoritmanya
lebih sederhana dan menggunakan ruang penelusuran yang lebih kecil daripada opsi AutoML
.
Seq2seq+
adalah opsi yang bagus jika Anda menginginkan hasil yang cepat dan set data Anda berukuran lebih kecil dari 1 GB.
Untuk mengetahui kode contoh yang menunjukkan cara menggunakan
SequenceToSequencePlusForecastingTrainingJob
, lihat Membuat contoh Seq2seq perkiraan pipeline pelatihan di GitHub.
TemporalFusionTransformerForecastingTrainingJob
Class TemporalFusionTransformerForecastingTrainingJob
menggunakan metode pelatihan Temporal Fusion Transformer (TFT) untuk melatih dan menjalankan model perkiraan. Metode pelatihan TFT mengimplementasikan model jaringan neural dalam (DNN) berbasis atensi yang menggunakan tugas perkiraan multi-horizon untuk menghasilkan prediksi.
Untuk kode contoh yang menunjukkan cara menggunakan
TemporalFusionTransformerForecastingTrainingJob
,
lihat Buat contoh transformer fusi temporer perkiraan pipeline
pelatihan di GitHub.
TimeSeriesDenseEncoderForecastingTrainingJob
Class
TimeSeriesDenseEncoderForecastingTrainingJob
menggunakan metode pelatihan Time-series Dense Encoder (TiDE) untuk melatih dan menjalankan
model perkiraan. TiDE menggunakan
perseptron multi-lapisan (MLP) untuk memberikan
kecepatan perkiraan model linear dengan dependensi kovariat dan non-linear.
Untuk mengetahui informasi selengkapnya tentang TiDE, lihat
Kemajuan terbaru dalam perkiraan deep Horizon yang mendalam
dan
postingan blog TiDE ini.
Class pelatihan AutoML untuk data yang tidak terstruktur
Vertex AI SDK menyertakan class berikut untuk melatih model gambar, teks, dan video yang tidak terstruktur:
AutoMLImageTrainingJob
Gunakan kelas AutoMLImageTrainingJob
untuk
membuat, melatih, dan menampilkan model gambar. Untuk mengetahui informasi selengkapnya tentang cara menggunakan
model data gambar di Vertex AI, lihat
Data gambar.
Untuk mengetahui contoh cara menggunakan class
AutoMLImageTrainingJob
, lihat
tutorial di notebook klasifikasi
gambar AutoML.
AutoMLTextTrainingJob
Gunakan class AutoMLTextTrainingJob
untuk
membuat, melatih, dan menampilkan model teks. Untuk mengetahui informasi selengkapnya tentang cara bekerja
dengan model data teks di Vertex AI, lihat
Data teks.
Untuk contoh cara menggunakan kelas AutoMLTextTrainingJob
, lihat tutorial di notebook model ekstraksi entity teks pelatihan AutoML untuk prediksi
online.
AutoMLVideoTrainingJob
Gunakan class AutoMLVideoTrainingJob
untuk
membuat, melatih, dan menampilkan model video. Untuk mengetahui informasi selengkapnya tentang cara menggunakan
model data video di Vertex AI, lihat
Data video.
Untuk mengetahui contoh cara menggunakan class AutoMLVideoTrainingJob
, lihat tutorial di notebook Model pengenalan tindakan video pelatihan AutoML untuk prediksi batch
.
Kelas pelatihan data kustom
Anda dapat menggunakan Vertex AI SDK untuk mengotomatiskan alur kerja pelatihan kustom. Untuk mengetahui informasi tentang penggunaan Vertex AI untuk menjalankan aplikasi pelatihan kustom, lihat Ringkasan pelatihan kustom.
Vertex AI SDK mencakup tiga kelas yang membuat pipeline
pelatihan kustom. Pipeline pelatihan menerima set data terkelola Vertex AI
input yang digunakan untuk melatih model. Selanjutnya, tugas ini menampilkan model setelah tugas pelatihan selesai. Masing-masing dari tiga class pipeline pelatihan kustom membuat pipeline pelatihan secara berbeda.
CustomTrainingJob
menggunakan skrip Python,
CustomContainerTrainingJob
menggunakan container khusus, dan
CustomPythonPackageTrainingJob
menggunakan paket Python dan container bawaan.
Class CustomJob
membuat tugas pelatihan kustom, tetapi bukan pipeline. Tidak seperti pipeline pelatihan kustom, class
CustomJob
dapat menggunakan set data yang bukan merupakan
set data yang dikelola Vertex AI untuk melatih model, dan tidak menampilkan model terlatih. Karena class ini menerima berbagai jenis set data dan tidak menampilkan model yang dilatih, set data ini kurang otomatis dan lebih fleksibel dibandingkan pipeline pelatihan kustom.
CustomContainerTrainingJob
Gunakan class CustomContainerTrainingJob
untuk menggunakan container guna meluncurkan pipeline pelatihan kustom di Vertex AI.
Untuk contoh cara menggunakan class
CustomContainerTrainingJob
,
lihat tutorial di notebook Pelatihan Paralel Data Terdistribusi Multi-Node
Klasifikasi Gambar PyTorch di GPU menggunakan Vertex AI Training dengan
Container Kustom.
CustomJob
Gunakan class CustomJob
untuk menggunakan skrip guna meluncurkan
tugas pelatihan kustom di Vertex AI.
Tugas pelatihan lebih fleksibel daripada pipeline pelatihan karena Anda tidak
dibatasi untuk memuat data dalam set data yang dikelola Vertex AI dan
referensi ke model Anda tidak terdaftar setelah tugas pelatihan selesai. Misalnya, Anda mungkin ingin menggunakan class CustomJob
, metode
from_local_script
, dan skrip untuk memuat set data dari scikit-learn atau TensorFlow. Atau, Anda mungkin ingin menganalisis atau menguji
model terlatih sebelum didaftarkan ke Vertex AI.
Untuk informasi selengkapnya tentang tugas pelatihan kustom, termasuk persyaratan sebelum mengirim tugas pelatihan kustom, apa saja yang tercakup dalam tugas kustom, dan contoh kode Python, lihat Membuat tugas pelatihan kustom.
Karena
CustomJob.run
tidak menampilkan model yang dilatih, Anda perlu menggunakan skrip untuk menulis artefak
model ke lokasi, seperti bucket Cloud Storage. Untuk informasi lebih lanjut, lihat Mengekspor model ML terlatih.
Kode contoh berikut menunjukkan cara membuat dan menjalankan tugas kustom menggunakan contoh spesifikasi kumpulan worker. Kode tersebut menulis model yang telah dilatih ke bucket Cloud Storage yang bernama 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
Gunakan class
CustomPythonPackageTrainingJob
untuk menggunakan paket Python guna meluncurkan pipeline pelatihan kustom di
Vertex AI.
Untuk contoh cara menggunakan class CustomPythonPackageTrainingJob
, lihat tutorial di notebook Pelatihan kustom menggunakan paket Python, set data teks terkelola, dan container TensorFlow serving
.
CustomTrainingJob
Gunakan class CustomTrainingJob
untuk meluncurkan
pipeline pelatihan kustom di Vertex AI dengan skrip.
Untuk mengetahui contoh cara menggunakan class CustomTrainingJob
, lihat tutorial di notebook Model klasifikasi gambar pelatihan kustom untuk prediksi online dengan penjelasan.
Kelas pelatihan hyperparameter
Vertex AI SDK menyertakan class untuk penyesuaian hyperparameter. Penyesuaian hyperparameter memaksimalkan akurasi prediktif model Anda dengan mengoptimalkan variabel (dikenal sebagai hyperparameter) yang mengatur proses pelatihan. Untuk mengetahui informasi selengkapnya, lihat Ringkasan penyesuaian hyperparameter.
HyperparameterTuningJob
Gunakan class HyperparameterTuningJob
untuk mengotomatiskan penyesuaian hyperparameter pada aplikasi pelatihan.
Untuk mempelajari cara menggunakan class HyperparameterTuningJob
untuk membuat dan menyesuaikan model terlatih kustom, lihat tutorial
Penyesuaian hyperparameter di GitHub.
Guna mempelajari cara menggunakan class HyperparameterTuningJob
untuk menjalankan tugas penyesuaian hyperparameter Vertex AI untuk model TensorFlow, baca tutorial Menjalankan penyesuaian hyperparameter untuk model TensorFlow di GitHub.
Class pelatihan pipeline
Pipeline mengatur alur kerja ML Anda di Vertex AI. Anda dapat menggunakan pipeline untuk mengotomatiskan, memantau, dan mengatur sistem machine learning Anda. Untuk mempelajari pipeline di Vertex AI lebih lanjut, lihat Pengantar Vertex AI pipeline.
PipelineJob
Instance class PipelineJob
mewakili pipeline Vertex AI.
Ada beberapa notebook tutorial yang menunjukkan cara menggunakan class PipelineJob
:
Untuk mempelajari cara menjalankan pipeline Kubeflow Pipelines (KFP), lihat tutorial Struktur kontrol pipeline menggunakan KFP SDK di GitHub.
Untuk mempelajari cara melatih model klasifikasi tabulasi scikit-learn dan membuat tugas prediksi batch dengan pipeline Vertex AI, lihat tutorial Pelatihan dan prediksi batch dengan sumber dan tujuan BigQuery untuk model klasifikasi tabulasi kustom di GitHub.
Untuk mempelajari cara mem-build model klasifikasi gambar AutoML dan menggunakan pipeline Vertex AI, lihat tutorial pipeline klasifikasi gambar AutoML menggunakan google-cloud-pipeline-components di GitHub.
Untuk mempelajari cara menggunakan pipeline guna mem-build model klasifikasi teks AutoML, lihat tutorial pipeline klasifikasi teks AutoML menggunakan google-cloud-pipeline-components di GitHub.
Untuk notebook tutorial lainnya, lihat Tutorial notebook Vertex AI.
Langkah selanjutnya
- Pelajari Vertex AI SDK.