View a markdown version of this page

Memahami strategi penyetelan hyperparameter yang tersedia di Amazon AI SageMaker - Amazon SageMaker AI

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memahami strategi penyetelan hyperparameter yang tersedia di Amazon AI SageMaker

Ketika Anda membangun sistem pembelajaran mesin yang kompleks seperti jaringan saraf pembelajaran mendalam, menjelajahi semua kemungkinan kombinasi tidak praktis. Penyetelan hyperparameter dapat mempercepat produktivitas Anda dengan mencoba banyak variasi model. Ini mencari model terbaik secara otomatis dengan berfokus pada kombinasi nilai hyperparameter yang paling menjanjikan dalam rentang yang Anda tentukan. Untuk mendapatkan hasil yang baik, Anda harus memilih rentang yang tepat untuk dijelajahi. Halaman ini memberikan penjelasan singkat tentang berbagai strategi penyetelan hyperparameter yang dapat Anda gunakan dengan Amazon SageMaker AI.

Gunakan panduan referensi API untuk memahami cara berinteraksi dengan penyetelan hyperparameter. Anda dapat menggunakan strategi penyetelan yang dijelaskan di halaman ini dengan HyperbandStrategyConfig API HyperParameterTuningJobConfig dan.

catatan

Karena algoritma itu sendiri stokastik, model penyetelan hyperparameter mungkin gagal menyatu pada jawaban terbaik. Hal ini dapat terjadi bahkan jika kombinasi nilai terbaik berada dalam rentang yang Anda pilih.

Saat menggunakan pencarian grid, penyetelan hyperparameter memilih kombinasi nilai dari rentang nilai kategoris yang Anda tentukan saat membuat pekerjaan. Hanya parameter kategoris yang didukung saat menggunakan strategi pencarian grid. Anda tidak perlu menentukanMaxNumberOfTrainingJobs. Jumlah pekerjaan pelatihan yang dibuat oleh pekerjaan penyetelan secara otomatis dihitung menjadi jumlah total kombinasi kategori berbeda yang mungkin. Jika ditentukan, nilai MaxNumberOfTrainingJobs harus sama dengan jumlah total kombinasi kategoris yang berbeda yang mungkin.

Saat menggunakan pencarian acak, penyetelan hyperparameter memilih kombinasi acak nilai hyperparameter dalam rentang yang Anda tentukan untuk setiap pekerjaan pelatihan yang diluncurkan. Pilihan nilai hyperparameter tidak tergantung pada hasil pekerjaan pelatihan sebelumnya. Akibatnya, Anda dapat menjalankan jumlah maksimum pekerjaan pelatihan bersamaan tanpa mengubah kinerja penyetelan.

Untuk contoh notebook yang menggunakan pencarian acak, lihat Pencarian acak dan penskalaan hyperparameter dengan SageMaker XGBoost dan notebook Tuning Model Otomatis. https://github.com/aws/amazon-sagemaker-examples-community/blob/215215eb25b40eadaf126d055dbb718a245d7603/training/sagemaker-automatic-model-tuning/hpo_xgboost_random_log.ipynb

Optimasi Bayesian

Optimasi Bayesian memperlakukan penyetelan hyperparameter seperti masalah regresi . Diberikan serangkaian fitur input (hyperparameter), penyetelan hyperparameter mengoptimalkan model untuk metrik yang Anda pilih. Untuk memecahkan masalah regresi, penyetelan hyperparameter membuat tebakan tentang kombinasi hyperparameter mana yang mungkin mendapatkan hasil terbaik. Kemudian menjalankan pekerjaan pelatihan untuk menguji nilai-nilai ini. Setelah menguji satu set nilai hyperparameter, penyetelan hyperparameter menggunakan regresi untuk memilih set nilai hyperparameter berikutnya untuk diuji.

Penyetelan hyperparameter menggunakan implementasi Amazon SageMaker AI dari optimasi Bayesian.

Saat memilih hyperparameter terbaik untuk pekerjaan pelatihan berikutnya, penyetelan hyperparameter mempertimbangkan semua yang diketahui tentang masalah ini sejauh ini. Kadang-kadang memilih kombinasi nilai hyperparameter yang dekat dengan kombinasi yang menghasilkan pekerjaan pelatihan terbaik sebelumnya untuk meningkatkan kinerja secara bertahap. Hal ini memungkinkan penyetelan hyperparameter untuk menggunakan hasil yang paling dikenal. Di lain waktu, ia memilih satu set nilai hyperparameter yang jauh dari yang telah dicoba. Hal ini memungkinkannya untuk mengeksplorasi kisaran nilai hyperparameter untuk mencoba menemukan area baru yang belum dipahami dengan baik. Peng explore/exploit orbanan umum terjadi pada banyak masalah pembelajaran mesin.

Untuk informasi selengkapnya tentang pengoptimalan Bayesian, lihat berikut ini:

Hyperband

Hyperband adalah strategi penyetelan berbasis multi-fidelitas yang secara dinamis mengalokasikan sumber daya. Hyperband menggunakan hasil menengah dan akhir dari pekerjaan pelatihan untuk mengalokasikan kembali zaman ke konfigurasi hyperparameter yang digunakan dengan baik dan secara otomatis menghentikan yang berkinerja buruk. Ini juga dapat diskalakan dengan mulus untuk menggunakan banyak pekerjaan pelatihan paralel. Fitur-fitur ini dapat secara signifikan mempercepat penyetelan hyperparameter melalui pencarian acak dan strategi pengoptimalan Bayesian.

Hyperband hanya boleh digunakan untuk menyetel algoritma iteratif yang mempublikasikan hasil pada tingkat sumber daya yang berbeda. Misalnya, Hyperband dapat digunakan untuk menyetel jaringan saraf untuk klasifikasi gambar yang menerbitkan metrik akurasi setelah setiap zaman.

Untuk informasi lebih lanjut tentang Hyperband, lihat tautan berikut:

Hyperband dengan penghentian awal

Pekerjaan pelatihan dapat dihentikan lebih awal ketika mereka tidak mungkin meningkatkan metrik objektif dari pekerjaan penyetelan hyperparameter. Ini dapat membantu mengurangi waktu komputasi dan menghindari model Anda yang terlalu pas. Hyperband menggunakan mekanisme internal canggih untuk menerapkan penghentian dini. Parameter TrainingJobEarlyStoppingType dalam HyperParameterTuningJobConfig API harus disetel OFF saat menggunakan fitur penghentian awal internal Hyperband.

catatan

Penyetelan hyperparameter mungkin tidak meningkatkan model Anda. Ini adalah alat canggih untuk membangun solusi mesin. Dengan demikian, itu harus dianggap sebagai bagian dari proses pengembangan ilmiah.