Bagikan melalui


BanditPolicy Kelas

Tentukan kebijakan penghentian dini berdasarkan kriteria slack, dan frekuensi serta interval penundaan untuk evaluasi.

Menginisialisasi BanditPolicy dengan faktor kendur, slack_amount, dan interval evaluasi.

Warisan
azureml.train.hyperdrive.policy.EarlyTerminationPolicy
BanditPolicy

Konstruktor

BanditPolicy(evaluation_interval=1, slack_factor=None, slack_amount=None, delay_evaluation=0)

Parameter

Nama Deskripsi
slack_factor

Rasio yang digunakan untuk menghitung jarak yang diizinkan dari eksekusi eksperimen dengan performa terbaik.

Nilai default: None
slack_amount

Jarak absolut yang diizinkan dari eksekusi dengan performa terbaik.

Nilai default: None
evaluation_interval
int

Frekuensi untuk menerapkan kebijakan.

Nilai default: 1
delay_evaluation
int

Jumlah interval untuk menunda evaluasi kebijakan pertama. Jika ditentukan, kebijakan berlaku pada setiap kelipatan evaluation_interval yang lebih besar dari atau sama dengan delay_evaluation.

Nilai default: 0
slack_factor
Diperlukan

Rasio yang digunakan untuk menghitung jarak yang diizinkan dari eksekusi eksperimen dengan performa terbaik.

slack_amount
Diperlukan

Jarak absolut yang diizinkan dari eksekusi dengan performa terbaik.

evaluation_interval
Diperlukan
int

Frekuensi untuk menerapkan kebijakan.

delay_evaluation
Diperlukan
int

Jumlah interval untuk menunda evaluasi kebijakan pertama. Jika ditentukan, kebijakan berlaku setiap kelipatan evaluation_interval yang lebih besar dari atau sama dengan delay_evaluation.

Keterangan

Kebijakan Bandit mengambil parameter konfigurasi berikut:

  • slack_factor: Jumlah slack yang diizinkan sehubungan dengan eksekusi pelatihan dengan performa terbaik. Faktor ini menentukan slack sebagai rasio.

  • slack_amount: Jumlah slack yang diizinkan sehubungan dengan eksekusi pelatihan dengan performa terbaik. Faktor ini menentukan slack sebagai jumlah absolut.

  • evaluation_interval: Opsional. Frekuensi untuk menerapkan kebijakan. Setiap kali skrip pelatihan membuat log metrik utama dihitung sebagai satu interval.

  • delay_evaluation: Opsional. Jumlah interval untuk menunda evaluasi kebijakan. Gunakan parameter ini untuk menghindari penghentian dini eksekusi pelatihan. Jika ditentukan, kebijakan berlaku setiap kelipatan evaluation_interval yang lebih besar dari atau sama dengan delay_evaluation.

Setiap eksekusi yang tidak termasuk dalam faktor slack atau jumlah slack dari metrik evaluasi sehubungan dengan eksekusi dengan performa terbaik akan dihentikan.

Pertimbangkan kebijakan Bandit dengan slack_factor = 0,2 dan evaluation_interval = 100. Asumsikan bahwa eksekusi X adalah eksekusi dengan performa terbaik saat ini dengan AUC (metrik performa) 0,8 setelah 100 interval. Selanjutnya, asumsikan AUC terbaik yang dilaporkan untuk eksekusi adalah Y. Kebijakan ini membandingkan nilai (Y + Y * 0,2) dengan 0,8, dan jika lebih kecil, eksekusi dibatalkan. Jika delay_evaluation = 200, maka pertama kali kebijakan akan diterapkan adalah pada interval 200.

Sekarang, pertimbangkan kebijakan Bandit dengan slack_amount = 0,2 dan evaluation_interval = 100. Jika Eksekusi 3 adalah eksekusi dengan performa terbaik saat ini dengan AUC (metrik performa) 0,8 setelah 100 interval, maka semua eksekusi dengan AUC kurang dari 0,6 (0,8 - 0,2) setelah 100 perulangan akan dihentikan. Demikian pula, delay_evaluation juga dapat digunakan untuk menunda evaluasi kebijakan penghentian pertama untuk sejumlah urutan tertentu.

Untuk informasi selengkapnya tentang menerapkan kebijakan penghentian dini, lihat Menyesuaikan hyperparameter untuk model Anda.

Atribut

delay_evaluation

Tampilkan jumlah urutan tempat evaluasi pertama tertunda.

Mengembalikan

Jenis Deskripsi
int

Evaluasi penundaan.

evaluation_interval

Tampilkan nilai interval evaluasi.

Mengembalikan

Jenis Deskripsi
int

Interval evaluasi.

slack_factor

Tampilkan faktor slack sehubungan dengan eksekusi pelatihan dengan performa terbaik.

Mengembalikan

Jenis Deskripsi

Faktor slack.

POLICY_NAME

POLICY_NAME = 'Bandit'