Class pelatihan

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. CustomTrainingJobmenggunakan 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 notebook tutorial lainnya, lihat Tutorial notebook Vertex AI.

Langkah selanjutnya