Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasikan dan Luncurkan Job Tuning Hyperparameter
penting
Kebijakan IAM khusus yang memungkinkan Amazon SageMaker Studio atau Amazon SageMaker Studio Classic membuat SageMaker sumber daya Amazon juga harus memberikan izin untuk menambahkan tag ke sumber daya tersebut. Izin untuk menambahkan tag ke sumber daya diperlukan karena Studio dan Studio Classic secara otomatis menandai sumber daya apa pun yang mereka buat. Jika kebijakan IAM memungkinkan Studio dan Studio Classic membuat sumber daya tetapi tidak mengizinkan penandaan, kesalahan "AccessDenied" dapat terjadi saat mencoba membuat sumber daya. Untuk informasi selengkapnya, lihat Berikan izin untuk menandai sumber daya AI SageMaker .
AWS kebijakan terkelola untuk Amazon SageMaker AIyang memberikan izin untuk membuat SageMaker sumber daya sudah menyertakan izin untuk menambahkan tag saat membuat sumber daya tersebut.
Hyperparameter adalah parameter tingkat tinggi yang mempengaruhi proses pembelajaran selama pelatihan model. Untuk mendapatkan prediksi model terbaik, Anda dapat mengoptimalkan konfigurasi hyperparameter atau menetapkan nilai hyperparameter. Proses menemukan konfigurasi optimal disebut tuning hyperparameter. Untuk mengonfigurasi dan meluncurkan pekerjaan penyetelan hyperparameter, selesaikan langkah-langkah dalam panduan ini.
Topik
Pengaturan untuk pekerjaan tuning hyperparameter
Untuk menentukan pengaturan untuk pekerjaan tuning hyperparameter, tentukan objek JSON saat Anda membuat pekerjaan penyetelan. Berikan objek JSON ini sebagai nilai HyperParameterTuningJobConfig
parameter ke CreateHyperParameterTuningJob
API.
Dalam objek JSON ini, tentukan yang berikut ini:
Dalam objek JSON ini, Anda menentukan:
-
HyperParameterTuningJobObjective
— Metrik objektif yang digunakan untuk mengevaluasi kinerja pekerjaan pelatihan yang diluncurkan oleh pekerjaan tuning hyperparameter. -
ParameterRanges
— Rentang nilai yang dapat digunakan oleh hyperparameter yang dapat disetel selama pengoptimalan. Untuk informasi selengkapnya, silakan lihat Tentukan Rentang Hyperparameter -
RandomSeed
— Nilai yang digunakan untuk menginisialisasi generator bilangan pseudo-acak. Menyetel seed acak akan memungkinkan strategi pencarian tuning hyperparameter menghasilkan konfigurasi yang lebih konsisten untuk pekerjaan penyetelan yang sama (opsional). -
ResourceLimits
— Jumlah maksimum pekerjaan pelatihan dan pelatihan paralel yang dapat digunakan oleh pekerjaan tuning hyperparameter.
catatan
Jika Anda menggunakan algoritme Anda sendiri untuk penyetelan hyperparameter, daripada algoritme bawaan SageMaker AI, Anda harus menentukan metrik untuk algoritme Anda. Untuk informasi selengkapnya, lihat Tentukan metrik.
Contoh kode berikut menunjukkan cara mengkonfigurasi pekerjaan tuning hyperparameter menggunakan algoritma bawaanXGBoost. Contoh kode menunjukkan cara menentukan rentang untuketa
,, alpha
min_child_weight
, dan max_depth
hyperparameters. Untuk informasi lebih lanjut tentang ini dan hiperparameter lainnya, lihat XGBoostParameter
Dalam contoh kode ini, metrik objektif untuk pekerjaan tuning hyperparameter menemukan konfigurasi hyperparameter yang memaksimalkan. validation:auc
SageMaker Algoritma bawaan AI secara otomatis menulis metrik objektif ke CloudWatch Log. Contoh kode berikut juga menunjukkan cara mengaturRandomSeed
.
tuning_job_config = { "ParameterRanges": { "CategoricalParameterRanges": [], "ContinuousParameterRanges": [ { "MaxValue": "1", "MinValue": "0", "Name": "eta" }, { "MaxValue": "2", "MinValue": "0", "Name": "alpha" }, { "MaxValue": "10", "MinValue": "1", "Name": "min_child_weight" } ], "IntegerParameterRanges": [ { "MaxValue": "10", "MinValue": "1", "Name": "max_depth" } ] }, "ResourceLimits": { "MaxNumberOfTrainingJobs": 20, "MaxParallelTrainingJobs": 3 }, "Strategy": "Bayesian", "HyperParameterTuningJobObjective": { "MetricName": "validation:auc", "Type": "Maximize" }, "RandomSeed" : 123 }
Konfigurasikan pekerjaan pelatihan
Pekerjaan tuning hyperparameter akan meluncurkan pekerjaan pelatihan untuk menemukan konfigurasi hiperparameter yang optimal. Pekerjaan pelatihan ini harus dikonfigurasi menggunakan SageMaker AI CreateHyperParameterTuningJob
API.
Untuk mengonfigurasi pekerjaan pelatihan, tentukan objek JSON dan berikan sebagai nilai TrainingJobDefinition
parameter di dalamnyaCreateHyperParameterTuningJob
.
Dalam objek JSON ini, Anda dapat menentukan yang berikut:
-
AlgorithmSpecification
— Jalur registri gambar Docker yang berisi algoritma pelatihan dan metadata terkait. Untuk menentukan algoritme, Anda dapat menggunakan algoritme buatan khusus Anda sendiri di dalam wadah Dockeratau algoritme bawaan SageMaker AI (wajib). -
InputDataConfig
— Konfigurasi input, termasukChannelName
,ContentType
, dan sumber data untuk data pelatihan dan pengujian Anda (wajib). -
InputDataConfig
— Konfigurasi input, termasukChannelName
,ContentType
, dan sumber data untuk data pelatihan dan pengujian Anda (wajib). -
Lokasi penyimpanan untuk output algoritma. Tentukan bucket S3 tempat Anda ingin menyimpan output dari pekerjaan pelatihan.
-
RoleArn
— Nama Sumber Daya Amazon (ARN) dari peran AWS Identity and Access Management (IAM) yang digunakan SageMaker AI untuk melakukan tugas. Tugas termasuk membaca data input, mengunduh gambar Docker, menulis artefak model ke bucket S3, menulis CloudWatch log ke Amazon Logs, dan menulis metrik ke CloudWatch Amazon (wajib). -
StoppingCondition
— Runtime maksimum dalam hitungan detik yang dapat dijalankan oleh pekerjaan pelatihan sebelum dihentikan. Nilai ini harus lebih besar dari waktu yang dibutuhkan untuk melatih model Anda (wajib). -
MetricDefinitions
— Nama dan ekspresi reguler yang mendefinisikan metrik apa pun yang dipancarkan oleh pekerjaan pelatihan. Tentukan metrik hanya jika Anda menggunakan algoritma pelatihan khusus. Contoh dalam kode berikut menggunakan algoritma bawaan, yang sudah memiliki metrik yang ditentukan. Untuk informasi tentang mendefinisikan metrik (opsional), lihat. Tentukan metrik -
TrainingImage
— Gambar kontainer Dockeryang menentukan algoritma pelatihan (opsional). -
StaticHyperParameters
— Nama dan nilai hyperparameters yang tidak disetel dalam pekerjaan tuning (opsional).
Contoh kode berikut menetapkan nilai statis untuk eval_metric
num_round
,objective
,rate_drop
,, dan tweedie_variance_power
parameter algoritma XGBoost algoritma dengan Amazon SageMaker AI bawaan.
Beri nama dan luncurkan pekerjaan penyetelan hyperparameter
Setelah mengonfigurasi tugas tuning hyperparameter, Anda dapat meluncurkannya dengan memanggil API. CreateHyperParameterTuningJob
Contoh kode berikut menggunakan tuning_job_config
dantraining_job_definition
. Ini didefinisikan dalam dua contoh kode sebelumnya untuk membuat pekerjaan tuning hyperparameter.
tuning_job_name = "MyTuningJob" smclient.create_hyper_parameter_tuning_job(HyperParameterTuningJobName = tuning_job_name, HyperParameterTuningJobConfig = tuning_job_config, TrainingJobDefinition = training_job_definition)
Lihat Status Pekerjaan Pelatihan
Untuk melihat status pekerjaan pelatihan yang diluncurkan oleh pekerjaan tuning hyperparameter
-
Dalam daftar pekerjaan tuning hyperparameter, pilih pekerjaan yang Anda luncurkan.
-
Pilih pekerjaan Pelatihan.
-
Lihat status setiap pekerjaan pelatihan. Untuk melihat detail lebih lanjut tentang pekerjaan, pilih di daftar pekerjaan pelatihan. Untuk melihat ringkasan status semua pekerjaan pelatihan yang diluncurkan oleh pekerjaan tuning hyperparameter, lihat Penghitung status pekerjaan pelatihan.
Pekerjaan pelatihan dapat berupa:
-
Completed
—Pekerjaan pelatihan berhasil diselesaikan. -
InProgress
—Pekerjaan pelatihan sedang berlangsung. -
Stopped
—Pekerjaan pelatihan dihentikan secara manual sebelum selesai. -
Failed (Retryable)
—Pekerjaan pelatihan gagal, tetapi dapat dicoba lagi. Pekerjaan pelatihan yang gagal dapat dicoba kembali hanya jika gagal karena kesalahan layanan internal terjadi. -
Failed (Non-retryable)
—Pekerjaan pelatihan gagal dan tidak dapat dicoba lagi. Pekerjaan pelatihan yang gagal tidak dapat dicoba lagi ketika kesalahan klien terjadi.
catatan
Pekerjaan tuning hyperparameter dapat dihentikan dan sumber daya yang mendasarinya dihapus, tetapi pekerjaan itu sendiri tidak dapat dihapus.
-
Lihat Training Job Terbaik
Pekerjaan tuning hyperparameter menggunakan metrik objektif yang dikembalikan oleh setiap pekerjaan pelatihan untuk mengevaluasi pekerjaan pelatihan. Sementara pekerjaan tuning hyperparameter sedang berlangsung, pekerjaan pelatihan terbaik adalah pekerjaan yang telah mengembalikan metrik objektif terbaik sejauh ini. Setelah pekerjaan tuning hyperparameter selesai, pekerjaan pelatihan terbaik adalah pekerjaan yang mengembalikan metrik objektif terbaik.
Untuk melihat pekerjaan pelatihan terbaik, pilih Pekerjaan pelatihan terbaik.

Untuk menerapkan pekerjaan pelatihan terbaik sebagai model yang dapat Anda host di titik akhir SageMaker AI, pilih Buat model.