Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan tindakan bawaan Debugger untuk aturan
Gunakan tindakan bawaan Debugger untuk menanggapi masalah yang ditemukan oleh. Aturan debugger rule_configs
Kelas Debugger menyediakan alat untuk mengonfigurasi daftar tindakan, termasuk menghentikan tugas pelatihan secara otomatis dan mengirim notifikasi menggunakan Amazon Simple Notification Service SNS (Amazon) saat aturan Debugger menemukan masalah pelatihan. Topik berikut membawa Anda melalui langkah-langkah untuk menyelesaikan tugas-tugas ini.
Topik
Siapkan AmazonSNS, buat SMDebugRules
topik, dan berlangganan topik
Bagian ini memandu Anda melalui cara mengatur SNS SMDebugRules
topik Amazon, berlangganan, dan mengonfirmasi langganan untuk menerima pemberitahuan dari aturan Debugger.
catatan
Untuk informasi selengkapnya tentang penagihan AmazonSNS, lihat SNSharga Amazon
Untuk membuat SMDebugRules topik
Masuk ke AWS Management Console dan buka SNS konsol Amazon di https://console.aws.amazon.com/sns/v3/home
. -
Di panel navigasi kiri, pilih Topics (Topik).
-
Di halaman Topics (Topik), pilih Create topic (Buat topik).
-
Di halaman Create topic (Buat topik), di bagian Details (Detail), lakukan hal-hal berikut:
-
Untuk Jenis, pilih Standar untuk jenis topik.
-
Di Nama, masukkan
SMDebugRules
.
-
-
Lewati semua pengaturan opsional lainnya dan pilih Buat topik. Jika Anda ingin mempelajari setelan opsional lebih lanjut, lihat Membuat SNS topik Amazon.
Untuk berlangganan SMDebugRules topik
Buka SNS konsol Amazon di https://console.aws.amazon.com/sns/v3/home
. -
Di panel navigasi kiri, pilih Subscriptions (Langganan).
-
Di halaman Subscriptions (Langganan), pilih Create subscription (Buat langganan).
-
Di halaman Create subscription (Buat langganan), di bagian Details (Detail), lakukan:
-
Untuk Topik ARN, pilih SMDebugRulestopikARN. ARNHarus dalam format
arn:aws:sns:<region-id>:111122223333:SMDebugRules
. -
Untuk Protokol, pilih Email atau SMS.
-
Untuk Endpoint, masukkan nilai endpoint, seperti alamat email atau nomor telepon yang ingin Anda terima notifikasi.
catatan
Pastikan Anda mengetik alamat email dan nomor telepon yang benar. Nomor telepon harus menyertakan
+
, kode negara, dan nomor telepon, tanpa karakter atau spasi khusus. Misalnya, nomor telepon +1 (222) 333-4444 diformat sebagai.+12223334444
-
-
Lewati semua pengaturan opsional lainnya dan pilih Buat langganan. Jika Anda ingin mempelajari setelan opsional lebih lanjut, lihat Berlangganan SNS topik Amazon.
Setelah Anda berlangganan SMDebugRulestopik, Anda menerima pesan konfirmasi berikut di email atau melalui telepon:
Untuk informasi selengkapnya tentang AmazonSNS, lihat Pesan teks seluler (SMS) dan Pemberitahuan email di Panduan SNS Pengembang Amazon.
Siapkan IAM peran Anda untuk melampirkan kebijakan yang diperlukan
Pada langkah ini, Anda menambahkan kebijakan yang diperlukan ke IAM peran Anda.
Untuk menambahkan kebijakan yang diperlukan ke IAM peran Anda
Masuk ke AWS Management Console dan buka IAM konsol di https://console.aws.amazon.com/iam/
. -
Di panel navigasi kiri, pilih Kebijakan, dan pilih Buat kebijakan.
-
Pada halaman Buat kebijakan, lakukan hal berikut untuk membuat kebijakan akses sns baru:
-
Pilih JSONtab.
-
Tempel JSON string yang diformat dengan huruf tebal dalam kode berikut ke dalam
"Statement"
, ganti ID akun 12 digit dengan ID AWS akun Anda AWS .{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "sns:Publish", "sns:CreateTopic", "sns:Subscribe" ], "Resource": "arn:aws:sns:*:
111122223333
:SMDebugRules" } ] } -
Di bagian bawah halaman, pilih Kebijakan tinjauan.
-
Pada halaman Tinjau kebijakan, untuk Nama, masukkan
sns-access
. -
Di bagian bawah halaman, pilih Buat kebijakan.
-
-
Kembali ke IAM konsol, dan pilih Peran di panel navigasi kiri.
-
Cari IAM peran yang Anda gunakan untuk pelatihan SageMaker model dan pilih IAM peran itu.
-
Pada tab Izin pada halaman Ringkasan, pilih Lampirkan kebijakan.
-
Cari kebijakan akses sns, pilih kotak centang di sebelah kebijakan, lalu pilih Lampirkan kebijakan.
Untuk lebih banyak contoh pengaturan IAM kebijakan untuk AmazonSNS, lihat Contoh kasus untuk kontrol SNS akses Amazon.
Konfigurasikan aturan Debugger dengan tindakan bawaan
Setelah berhasil menyelesaikan pengaturan yang diperlukan pada langkah-langkah sebelumnya, Anda dapat mengonfigurasi tindakan bawaan Debugger untuk aturan debugging seperti yang ditunjukkan pada contoh skrip berikut. Anda dapat memilih tindakan bawaan mana yang akan digunakan saat membangun objek actions
daftar. rule_configs
Ini adalah modul pembantu yang menyediakan alat tingkat tinggi untuk mengonfigurasi aturan dan tindakan bawaan Debugger. Tindakan bawaan berikut tersedia untuk Debugger:
-
rule_configs.StopTraining()
— Menghentikan pekerjaan pelatihan ketika aturan Debugger menemukan masalah. -
rule_configs.Email("
— Mengirim pemberitahuan melalui email ketika aturan Debugger menemukan masalah. Gunakan alamat email yang Anda gunakan saat menyiapkan langganan SNS topik.abc@abc.com
") -
rule_configs.SMS("
— Mengirim pemberitahuan melalui pesan teks ketika aturan Debugger menemukan masalah. Gunakan nomor telepon yang Anda gunakan saat mengatur langganan SNS topik.+1234567890
")catatan
Pastikan Anda mengetik alamat email dan nomor telepon yang benar. Nomor telepon harus menyertakan
+
, kode negara, dan nomor telepon, tanpa karakter atau spasi khusus. Misalnya, nomor telepon +1 (222) 333-4444 diformat sebagai.+12223334444
Anda dapat menggunakan semua tindakan bawaan atau subset tindakan dengan membungkusnya menggunakan rule_configs.ActionList()
metode, yang mengambil tindakan bawaan dan mengonfigurasi daftar tindakan.
Untuk menambahkan ketiga tindakan bawaan ke satu aturan
Jika Anda ingin menetapkan ketiga tindakan bawaan ke satu aturan, konfigurasikan daftar tindakan bawaan Debugger saat membuat estimator. Gunakan template berikut untuk membuat estimator, dan Debugger akan menghentikan pekerjaan pelatihan dan mengirim pemberitahuan melalui email dan teks untuk aturan apa pun yang Anda gunakan untuk memantau kemajuan pekerjaan pelatihan Anda.
from sagemaker.debugger import Rule, rule_configs # Configure an action list object for Debugger rules
actions
= rule_configs.ActionList(rule_configs.StopTraining()
,rule_configs.Email("abc@abc.com")
,rule_configs.SMS("+1234567890")
) # Configure rules for debugging with the actions parameterrules
= [ Rule.sagemaker( base_config=rule_configs.built_in_rule
(), # Required rule_parameters={"paramter_key
":value
}, # Optional actions=actions
) ] estimator = Estimator(...
rules =rules
) estimator.fit(wait=False)
Untuk membuat beberapa objek aksi bawaan untuk menetapkan tindakan yang berbeda ke satu aturan
Jika Anda ingin menetapkan tindakan bawaan yang akan dipicu pada nilai ambang batas yang berbeda dari satu aturan, Anda dapat membuat beberapa objek tindakan bawaan seperti yang ditunjukkan pada skrip berikut. Untuk menghindari kesalahan konflik dengan menjalankan aturan yang sama, Anda harus mengirimkan nama pekerjaan aturan yang berbeda (tentukan string yang berbeda untuk name
atribut aturan) seperti yang ditunjukkan pada contoh templat skrip berikut. Contoh ini menunjukkan cara mengatur StalledTrainingRule untuk mengambil dua tindakan berbeda: mengirim email ke abc@abc.com
saat pekerjaan pelatihan berhenti selama 60 detik, dan menghentikan pekerjaan pelatihan jika berhenti selama 120 detik.
from sagemaker.debugger import Rule, rule_configs import time base_job_name_prefix= 'smdebug-stalled-demo-' + str(int(time.time())) # Configure an action object for StopTraining
action_stop_training
= rule_configs.ActionList( rule_configs.StopTraining() ) # Configure an action object for Emailaction_email
= rule_configs.ActionList( rule_configs.Email("abc@abc.com
") ) # Configure a rule with the Email built-in action to trigger if a training job stalls for 60 secondsstalled_training_job_rule_email
= Rule.sagemaker( base_config=rule_configs.stalled_training_rule(), rule_parameters={ "threshold": "60
", "training_job_name_prefix": base_job_name_prefix }, actions=action_email
) stalled_training_job_rule_text.name="StalledTrainingJobRuleEmail
" # Configure a rule with the StopTraining built-in action to trigger if a training job stalls for 120 secondsstalled_training_job_rule
= Rule.sagemaker( base_config=rule_configs.stalled_training_rule(), rule_parameters={ "threshold": "120
", "training_job_name_prefix": base_job_name_prefix }, actions=action_stop_training
) stalled_training_job_rule.name="StalledTrainingJobRuleStopTraining
" estimator = Estimator(...
rules = [stalled_training_job_rule_email
,stalled_training_job_rule
] ) estimator.fit(wait=False)
Saat pekerjaan pelatihan sedang berjalan, tindakan bawaan Debugger mengirimkan email notifikasi dan pesan teks setiap kali aturan menemukan masalah dengan pekerjaan pelatihan Anda. Tangkapan layar berikut menunjukkan contoh pemberitahuan email untuk pekerjaan pelatihan yang memiliki masalah pekerjaan pelatihan yang macet.
Tangkapan layar berikut menunjukkan contoh pemberitahuan teks yang dikirim Debugger saat aturan menemukan masalah. StalledTraining
Pertimbangan untuk menggunakan tindakan bawaan Debugger
-
Untuk menggunakan tindakan bawaan Debugger, koneksi internet diperlukan. Fitur ini tidak didukung dalam mode isolasi jaringan yang disediakan oleh Amazon SageMaker atau AmazonVPC.
-
Tindakan bawaan tidak dapat digunakan untukAturan profiler.
-
Tindakan bawaan tidak dapat digunakan pada pekerjaan pelatihan dengan gangguan pelatihan spot.
-
Dalam pemberitahuan email atau teks,
None
muncul di akhir pesan. Ini tidak memiliki arti apa pun, sehingga Anda dapat mengabaikan teksNone
.