Lacak dan tetapkan kriteria penyelesaian untuk pekerjaan penyetelan Anda - Amazon SageMaker

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

Lacak dan tetapkan kriteria penyelesaian untuk pekerjaan penyetelan Anda

Anda dapat menggunakan kriteria penyelesaian untuk menginstruksikan Penyetelan model otomatis (AMT) untuk menghentikan pekerjaan penyetelan Anda jika kondisi tertentu terpenuhi. Dengan kondisi ini, Anda dapat menetapkan kinerja model minimum atau jumlah maksimum pekerjaan pelatihan yang tidak membaik ketika dievaluasi terhadap metrik objektif. Anda juga dapat melacak kemajuan pekerjaan penyetelan Anda dan memutuskan untuk membiarkannya berlanjut atau menghentikannya secara manual. Panduan ini menunjukkan kepada Anda cara menetapkan kriteria penyelesaian, memeriksa kemajuan dan menghentikan pekerjaan penyetelan Anda secara manual.

Tetapkan kriteria penyelesaian untuk pekerjaan tuning Anda

Selama optimasi hyperparameter, pekerjaan tuning akan meluncurkan beberapa pekerjaan pelatihan di dalam satu loop. Pekerjaan tuning akan melakukan hal berikut.

  • Periksa pekerjaan pelatihan Anda untuk penyelesaian dan perbarui statistik yang sesuai

  • Tentukan kombinasi hiperparameter apa yang akan dievaluasi selanjutnya.

AMTakan terus memeriksa pekerjaan pelatihan yang diluncurkan dari pekerjaan penyetelan Anda untuk memperbarui statistik. Statistik ini termasuk tuning job runtime dan pekerjaan pelatihan terbaik. Kemudian, AMT tentukan apakah itu harus menghentikan pekerjaan sesuai dengan kriteria penyelesaian Anda. Anda juga dapat memeriksa statistik ini dan menghentikan pekerjaan Anda secara manual. Untuk informasi selengkapnya tentang menghentikan pekerjaan secara manual, lihat Menghentikan pekerjaan penyetelan Anda secara manual bagian.

Misalnya, jika pekerjaan tuning Anda memenuhi tujuan Anda, Anda dapat berhenti menyetel lebih awal untuk menghemat sumber daya atau memastikan kualitas model. AMTmemeriksa kinerja pekerjaan Anda terhadap kriteria penyelesaian Anda dan menghentikan pekerjaan tuning jika ada yang terpenuhi.

Anda dapat menentukan jenis kriteria penyelesaian berikut:

  • MaxNumberOfTrainingJobs— Jumlah maksimum pekerjaan pelatihan yang harus dijalankan sebelum penyetelan dihentikan.

  • MaxNumberOfTrainingJobsNotImproving— Jumlah maksimum pekerjaan pelatihan yang tidak meningkatkan kinerja terhadap metrik objektif dari pekerjaan pelatihan terbaik saat ini. Sebagai contoh, jika pekerjaan pelatihan terbaik mengembalikan metrik objektif yang memiliki akurasi90%, dan MaxNumberOfTrainingJobsNotImproving diatur ke10. Dalam contoh ini, penyetelan akan berhenti setelah pekerjaan 10 pelatihan gagal mengembalikan akurasi yang lebih tinggi dari90%.

  • MaxRuntimeInSeconds— Batas atas waktu jam dinding dalam hitungan detik berapa lama pekerjaan penyetelan dapat berjalan.

  • TargetObjectiveMetricValue— Nilai metrik objektif yang digunakan untuk mengevaluasi pekerjaan penyetelan. Setelah nilai ini terpenuhi, AMT hentikan pekerjaan penyetelan.

  • CompleteOnConvergence- Bendera untuk berhenti menyetel setelah algoritme internal menentukan bahwa pekerjaan penyetelan tidak mungkin meningkat lebih dari 1% dibandingkan metrik objektif dari pekerjaan pelatihan terbaik.

Memilih kriteria penyelesaian

Anda dapat memilih satu atau beberapa kriteria penyelesaian untuk menghentikan pekerjaan penyetelan hiperparameter Anda setelah suatu kondisi terpenuhi. Petunjuk berikut menunjukkan kepada Anda cara memilih kriteria penyelesaian dan cara memutuskan mana yang paling tepat untuk kasus penggunaan Anda.

  • Gunakan MaxNumberOfTrainingJobs dalam ResourceLimitsAPIuntuk menetapkan batas atas untuk jumlah pekerjaan pelatihan yang dapat dijalankan sebelum pekerjaan tuning Anda dihentikan. Mulailah dengan jumlah besar dan sesuaikan berdasarkan kinerja model terhadap tujuan pekerjaan penyetelan Anda. Sebagian besar pengguna memasukkan nilai sekitar 50 atau lebih pekerjaan pelatihan untuk menemukan konfigurasi hyperparameter yang optimal. Pengguna yang mencari tingkat kinerja model yang lebih tinggi akan menggunakan 200 atau lebih banyak pekerjaan pelatihan.

  • Gunakan MaxNumberOfTrainingJobsNotImproving di BestObjectiveNotImprovingAPIlapangan untuk menghentikan pelatihan jika kinerja model gagal meningkat setelah sejumlah pekerjaan tertentu. Kinerja model dievaluasi terhadap fungsi objektif. Setelah MaxNumberOfTrainingJobsNotImproving terpenuhi, AMT akan menghentikan pekerjaan tuning. Pekerjaan tuning cenderung membuat kemajuan paling besar di awal pekerjaan. Meningkatkan kinerja model terhadap fungsi objektif akan membutuhkan lebih banyak pekerjaan pelatihan menjelang akhir penyetelan. Pilih nilai MaxNumberOfTrainingJobsNotImproving dengan memeriksa kinerja pekerjaan pelatihan serupa terhadap metrik tujuan Anda.

  • Gunakan MaxRuntimeInSeconds di ResourceLimitsAPIuntuk menetapkan batas atas untuk jumlah waktu jam dinding yang mungkin diperlukan oleh pekerjaan penyetelan. Gunakan bidang ini untuk memenuhi tenggat waktu dimana pekerjaan penyetelan harus diselesaikan atau untuk membatasi sumber daya komputasi.

    Untuk mendapatkan perkiraan total waktu komputasi dalam hitungan detik untuk pekerjaan penyetelan, gunakan rumus berikut:

    Perkiraan waktu komputasi maks dalam detik= * * MaxRuntimeInSeconds MaxParallelTrainingJobs MaxInstancesPerTrainingJob

    catatan

    Durasi sebenarnya dari pekerjaan penyetelan mungkin sedikit menyimpang dari nilai yang ditentukan dalam bidang ini.

  • Gunakan TargetObjectiveMetricValue dalam TuningJobCompletionCriteriaAPIuntuk menghentikan pekerjaan tuning Anda. Anda menghentikan pekerjaan penyetelan setelah pekerjaan pelatihan apa pun yang diluncurkan oleh pekerjaan penyetelan mencapai nilai metrik objektif ini. Gunakan bidang ini jika kasus penggunaan Anda bergantung pada pencapaian tingkat kinerja tertentu, daripada menghabiskan sumber daya komputasi untuk menemukan model terbaik.

  • Gunakan CompleteOnConvergence TuningJobCompletionCriteriaAPIuntuk menghentikan pekerjaan penyetelan setelah AMT mendeteksi bahwa pekerjaan penyetelan telah menyatu, dan tidak mungkin membuat kemajuan signifikan lebih lanjut. Gunakan bidang ini jika tidak jelas nilai apa untuk kriteria penyelesaian lainnya yang harus digunakan. AMTmenentukan konvergensi berdasarkan algoritma yang dikembangkan dan diuji pada berbagai tolok ukur yang beragam. Pekerjaan tuning didefinisikan telah menyatu ketika tidak ada pekerjaan pelatihan yang menghasilkan peningkatan yang signifikan (1% atau kurang). Peningkatan diukur terhadap metrik objektif yang dikembalikan oleh pekerjaan berkinerja tertinggi, sejauh ini.

Menggabungkan kriteria penyelesaian yang berbeda

Anda juga dapat menggabungkan salah satu kriteria penyelesaian yang berbeda dalam pekerjaan penyetelan yang sama. AMTakan menghentikan pekerjaan tuning ketika salah satu kriteria penyelesaian terpenuhi. Misalnya, jika Anda ingin menyetel model Anda hingga memenuhi metrik objektif, tetapi tidak ingin terus menyetel jika pekerjaan Anda telah konvergen, gunakan panduan berikut.

  • Tentukan TargetObjectiveMetricValue dalam TuningJobCompletionCriteriaAPIuntuk menetapkan nilai metrik tujuan target yang akan dicapai.

  • Setel CompleteOnConvergenceEnableduntuk menghentikan pekerjaan penyetelan jika AMT telah menentukan bahwa kinerja model tidak mungkin meningkat.

Lacak kemajuan pekerjaan tuning

Anda dapat menggunakan DescribeHyperParameterTuningJob API untuk melacak kemajuan pekerjaan penyetelan Anda kapan saja saat sedang berjalan. Anda tidak perlu menentukan kriteria penyelesaian untuk mendapatkan informasi pelacakan untuk pekerjaan penyetelan Anda. Gunakan bidang berikut untuk mendapatkan statistik tentang pekerjaan tuning Anda.

  • BestTrainingJob— Objek yang menggambarkan pekerjaan pelatihan terbaik yang diperoleh sejauh ini, dievaluasi berdasarkan metrik tujuan Anda. Gunakan bidang ini untuk memeriksa kinerja model Anda saat ini dan nilai metrik objektif dari pekerjaan pelatihan terbaik ini.

  • ObjectiveStatusCounters— Objek yang menentukan jumlah total pekerjaan pelatihan yang diselesaikan dalam pekerjaan tuning. Untuk memperkirakan durasi rata-rata pekerjaan penyetelan, gunakan ObjectiveStatusCounters dan total runtime pekerjaan penyetelan. Anda dapat menggunakan durasi rata-rata untuk memperkirakan berapa lama pekerjaan tuning Anda akan berjalan.

  • ConsumedResources— Total sumber daya, sepertiRunTimeInSeconds, dikonsumsi oleh pekerjaan tuning Anda. BandingkanConsumedResources, ditemukan di DescribeHyperParameterTuningJob API, melawan BestTrainingJob dalam hal yang samaAPI. Anda juga dapat ConsumedResources membandingkan dengan respons dari ListTrainingJobsForHyperParameterTuningJobAPIuntuk menilai apakah pekerjaan tuning Anda membuat kemajuan yang memuaskan mengingat sumber daya yang dikonsumsi.

  • TuningJobCompletionDetails— Menyetel informasi penyelesaian pekerjaan yang mencakup hal-hal berikut:

    • Stempel waktu kapan konvergensi terdeteksi jika pekerjaan telah konvergen.

    • Jumlah pekerjaan pelatihan yang belum meningkatkan kinerja model. Kinerja model dievaluasi terhadap metrik objektif dari pekerjaan pelatihan terbaik.

    Gunakan kriteria penyelesaian pekerjaan tuning untuk menilai seberapa besar kemungkinan pekerjaan tuning Anda untuk meningkatkan kinerja model Anda. Kinerja model dievaluasi terhadap metrik objektif terbaik jika dijalankan hingga selesai.

Menghentikan pekerjaan penyetelan Anda secara manual

Anda dapat menentukan apakah Anda harus membiarkan pekerjaan tuning berjalan sampai selesai atau apakah Anda harus menghentikan pekerjaan penyetelan secara manual. Untuk menentukan ini, gunakan informasi yang dikembalikan oleh parameter di DescribeHyperParameterTuningJobAPI, seperti yang ditunjukkan di bagian Tracking tuning job progress sebelumnya. Misalnya, jika kinerja model Anda tidak membaik setelah beberapa pekerjaan pelatihan selesai, Anda dapat memilih untuk menghentikan pekerjaan penyetelan. Kinerja model dievaluasi terhadap metrik objektif terbaik.

Untuk menghentikan pekerjaan penyetelan secara manual, gunakan StopHyperParameterTuningJobAPIdan berikan nama pekerjaan penyetelan yang akan dihentikan.