View a markdown version of this page

Daftar aturan bawaan Debugger - Amazon SageMaker AI

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

Daftar aturan bawaan Debugger

catatan

Amazon SageMaker Debugger tidak lagi terbuka untuk pelanggan baru. Pelanggan yang sudah ada dapat terus menggunakan layanan seperti biasa. AWS terus berinvestasi dalam peningkatan keamanan dan ketersediaan untuk Debugger, tetapi kami tidak berencana untuk memperkenalkan fitur baru. Untuk informasi selengkapnya, lihat Perubahan ketersediaan debugger.

Anda dapat menggunakan aturan bawaan Debugger, yang disediakan oleh Amazon SageMaker Debugger, untuk menganalisis metrik dan tensor yang dikumpulkan saat melatih model Anda. Berikut ini mencantumkan aturan debugger, termasuk informasi dan contoh tentang cara mengkonfigurasi dan menerapkan setiap aturan bawaan.

Aturan bawaan Debugger memantau berbagai kondisi umum yang sangat penting untuk keberhasilan pekerjaan pelatihan. Anda dapat memanggil aturan bawaan menggunakan Amazon SageMaker Python SDK atau operasi SageMaker API tingkat rendah.

Tidak ada biaya tambahan untuk menggunakan aturan bawaan. Untuk informasi selengkapnya tentang penagihan, lihat halaman SageMaker Harga Amazon.

catatan

Jumlah maksimum aturan bawaan yang dapat Anda lampirkan ke pekerjaan pelatihan adalah 20. SageMaker Debugger sepenuhnya mengelola aturan bawaan dan menganalisis pekerjaan pelatihan Anda secara serempak.

penting

Untuk menggunakan fitur Debugger baru, Anda perlu memutakhirkan SageMaker Python SDK dan pustaka klien SMDebug. Di kernel IPython Anda, notebook Jupyter, atau JupyterLab lingkungan, jalankan kode berikut untuk menginstal versi terbaru dari pustaka dan memulai ulang kernel.

import sys import IPython !{sys.executable} -m pip install -U sagemaker smdebug IPython.Application.instance().kernel.do_shutdown(True)

Aturan debugger

Aturan berikut adalah aturan bawaan Debugger yang dapat dipanggil menggunakan metode kelas. Rule.sagemaker

Aturan bawaan debugger untuk menghasilkan laporan pelatihan

Lingkup Validitas Built-in Aturan
Laporan Pelatihan untuk pekerjaan pelatihan SageMaker AI XGBoost

Aturan bawaan debugger untuk men-debug data pelatihan model (tensor keluaran)

Lingkup Validitas Built-in Aturan
Kerangka kerja pembelajaran mendalam (TensorFlow, MXnet, dan PyTorch)
Kerangka kerja pembelajaran mendalam (TensorFlow, MXnet, dan PyTorch) dan algoritma XGBoost
Aplikasi pembelajaran mendalam
Algoritma XGBoost

Untuk menggunakan aturan bawaan dengan nilai parameter default - gunakan format konfigurasi berikut:

from sagemaker.core.debugger import Rule, ProfilerRule, rule_configs rules = [ Rule.sagemaker(rule_configs.built_in_rule_name_1()), Rule.sagemaker(rule_configs.built_in_rule_name_2()), ... Rule.sagemaker(rule_configs.built_in_rule_name_n()) ]

Untuk menggunakan aturan bawaan dengan menyesuaikan nilai parameter - gunakan format konfigurasi berikut:

from sagemaker.core.debugger import Rule, ProfilerRule, rule_configs rules = [ Rule.sagemaker( base_config=rule_configs.built_in_rule_name(), rule_parameters={ "key": "value" } collections_to_save=[ CollectionConfig( name="tensor_collection_name", parameters={ "key": "value" } ) ] ) ]

Untuk menemukan kunci yang tersedia untuk rule_parameters parameter, lihat tabel deskripsi parameter.

Contoh kode konfigurasi aturan disediakan untuk setiap aturan bawaan di bawah tabel deskripsi parameter.

CreateXgboostReport

A CreateXgboostReport turan mengumpulkan tensor keluaran dari pekerjaan pelatihan XGBoost dan secara otomatis menghasilkan laporan pelatihan komprehensif. Anda dapat mengunduh laporan profil komprehensif saat pekerjaan pelatihan sedang berjalan atau setelah pekerjaan pelatihan selesai, dan memeriksa kemajuan pelatihan atau hasil akhir dari pekerjaan pelatihan. A CreateXgboostReport turan mengumpulkan tensor keluaran berikut secara default:

  • hyperparameters— Menyimpan pada langkah pertama

  • metrics— Menghemat kerugian dan akurasi setiap 5 langkah

  • feature_importance— Menyimpan setiap 5 langkah

  • predictions— Menyimpan setiap 5 langkah

  • labels— Menyimpan setiap 5 langkah

Deskripsi Parameter untuk A CreateXgboostReport turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis diatur ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

rules=[ Rule.sagemaker( rule_configs.create_xgboost_report() ) ]

DeadRelu

Aturan ini mendeteksi ketika persentase fungsi aktivasi unit linier yang diperbaiki (ReLU) dalam percobaan dianggap mati karena aktivitas aktivasinya telah turun di bawah ambang batas. Jika persentase relU tidak aktif dalam lapisan lebih besar dari threshold_layer nilai relU tidak aktif, aturan akan kembali. True

Deskripsi Parameter untuk A DeadRelu turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis diatur ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: ".*relu_output"

threshold_inactivity

Mendefinisikan tingkat aktivitas di bawahnya ReLU dianggap mati. ReLU mungkin aktif di awal percobaan dan kemudian perlahan mati selama proses pelatihan. Jika ReLU aktif kurang darithreshold_inactivity, itu dianggap mati.

Opsional

Nilai yang valid: Float

Nilai default: 1.0 (dalam persentase)

threshold_layer

Meng True embalikan jika persentase relU tidak aktif dalam lapisan lebih besar darithreshold_layer.

Meng False embalikan jika persentase relU tidak aktif dalam lapisan kurang darithreshold_layer.

Opsional

Nilai yang valid: Float

Nilai default: 50.0 (dalam persentase)

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.dead_relu(), rule_parameters={ "tensor_regex": ".*relu_output|.*ReLU_output", "threshold_inactivity": "1.0", "threshold_layer": "50.0" }, collections_to_save=[ CollectionConfig( name="custom_relu_collection", parameters={ "include_regex: ".*relu_output|.*ReLU_output", "save_interval": "500" } ) ] ) ]

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

catatan

Aturan ini tidak tersedia untuk algoritma XGBoost.

ExplodingTensor

Aturan ini mendeteksi apakah tensor yang dipancarkan selama pelatihan memiliki nilai yang tidak terbatas, baik tak terbatas atau NaN (bukan angka). Jika nilai tidak terbatas terdeteksi, aturan kembaliTrue.

Deskripsi Parameter untuk A ExplodingTensor turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis diatur ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

collection_names

Daftar nama koleksi yang tensornya diperiksa aturan.

Opsional

Nilai valid: String

Nilai default: None

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai valid: String

Nilai default: None

only_nan

Trueuntuk memantau base_trial tensor hanya untuk NaN nilai dan bukan untuk tak terbatas.

Falseuntuk memperlakukan keduanya NaN dan tak terhingga sebagai nilai yang meledak dan untuk memantau keduanya.

Opsional

Nilai default: False

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.exploding_tensor(), rule_parameters={ "tensor_regex": ".*gradient", "only_nan": "False" }, collections_to_save=[ CollectionConfig( name="gradients", parameters={ "save_interval": "500" } ) ] ) ]

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

catatan

Aturan ini tidak tersedia untuk algoritma XGBoost.

PoorWeightInitialization

Aturan ini mendeteksi jika parameter model Anda telah diinisialisasi dengan buruk.

Inisialisasi yang baik memecah simetri bobot dan gradien dalam jaringan saraf dan mempertahankan varians aktivasi yang sepadan di seluruh lapisan. Jika tidak, jaringan saraf tidak belajar secara efektif. Penginisialisasi seperti Xavier bertujuan untuk menjaga varians konstan di seluruh aktivasi, yang sangat relevan untuk melatih jaringan saraf yang sangat dalam. Inisialisasi yang terlalu kecil dapat menyebabkan gradien menghilang. Inisialisasi yang terlalu besar dapat menyebabkan gradien meledak. Aturan ini memeriksa varians input aktivasi lintas lapisan, distribusi gradien, dan konvergensi kerugian untuk langkah awal untuk menentukan apakah jaringan saraf telah diinisialisasi dengan buruk.

Deskripsi Parameter untuk A PoorWeightInitialization turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

activation_inputs_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai valid: String

Nilai default: ".*relu_input"

threshold

Jika rasio antara varians bobot minimum dan maksimum per lapisan melebihi langkah threshold pada satu langkah, aturan kembaliTrue.

Opsional

Nilai yang valid: Float

Nilai default: 10.0

distribution_range

Jika perbedaan minimum antara persentil ke-5 dan ke-95 dari distribusi gradien kurang daridistribution_range, aturan akan kembali. True

Opsional

Nilai yang valid: Float

Nilai default: 0.001

patience

Jumlah langkah untuk menunggu sampai kerugian dianggap tidak lagi berkurang.

Opsional

Nilai yang valid: Integer

Nilai default: 5

steps

Jumlah langkah yang dianalisis aturan ini. Anda biasanya hanya perlu memeriksa beberapa iterasi pertama.

Opsional

Nilai yang valid: Float

Nilai default: 10

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.poor_weight_initialization(), rule_parameters={ "activation_inputs_regex": ".*relu_input|.*ReLU_input", "threshold": "10.0", "distribution_range": "0.001", "patience": "5", "steps": "10" }, collections_to_save=[ CollectionConfig( name="custom_relu_collection", parameters={ "include_regex": ".*relu_input|.*ReLU_input", "save_interval": "500" } ) ] ) ]

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

catatan

Aturan ini tidak tersedia untuk algoritma XGBoost.

SaturatedActivation

Aturan ini mendeteksi jika lapisan aktivasi tanh dan sigmoid menjadi jenuh. Lapisan aktivasi jenuh ketika input lapisan mendekati maksimum atau minimum fungsi aktivasi. Minimum dan maksimum fungsi aktivasi tanh dan sigmoid ditentukan oleh masing-masing min_threshold dan nilainya. max_thresholds Jika aktivitas node turun di bawah threshold_inactivity persentase, itu dianggap jenuh. Jika lebih dari satu threshold_layer persen node jenuh, aturan kembaliTrue.

Deskripsi Parameter untuk A SaturatedActivation turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

collection_names

Daftar nama koleksi yang tensornya diperiksa aturan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: Tidak ada

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai valid: String

Nilai default: ".*tanh_input|.*sigmoid_input".

threshold_tanh_min

Ambang batas minimum dan maksimum yang menentukan ekstrem input untuk fungsi aktivasi tanh, didefinisikan sebagai:(min_threshold, max_threshold). Nilai default ditentukan berdasarkan ambang gradien menghilang 0,0000001.

Opsional

Nilai yang valid: Float

Nilai default: -9.4999

threshold_tanh_max

Ambang batas minimum dan maksimum yang menentukan ekstrem input untuk fungsi aktivasi tanh, didefinisikan sebagai:(min_threshold, max_threshold). Nilai default ditentukan berdasarkan ambang gradien menghilang 0,0000001.

Opsional

Nilai yang valid: Float

Nilai default: 9.4999

threshold_sigmoid_min

Ambang batas minimum dan maksimum yang menentukan ekstrem input untuk fungsi aktivasi sigmoid, didefinisikan sebagai:. (min_threshold, max_threshold) Nilai default ditentukan berdasarkan ambang gradien menghilang 0,0000001.

Opsional

Nilai yang valid: Float

Nilai default: -23

threshold_sigmoid_max

Ambang batas minimum dan maksimum yang menentukan ekstrem input untuk fungsi aktivasi sigmoid, didefinisikan sebagai:. (min_threshold, max_threshold) Nilai default ditentukan berdasarkan ambang gradien menghilang 0,0000001.

Opsional

Nilai yang valid: Float

Nilai default: 16.99999

threshold_inactivity

Persentase ketidakaktifan di bawahnya lapisan aktivasi dianggap jenuh. Aktivasi mungkin aktif di awal percobaan dan kemudian perlahan-lahan menjadi kurang aktif selama proses pelatihan.

Opsional

Nilai yang valid: Float

Nilai default: 1.0

threshold_layer

Meng True embalikan jika jumlah aktivasi jenuh dalam lapisan lebih besar dari threshold_layer persentase.

Meng False embalikan jika jumlah aktivasi jenuh dalam lapisan kurang dari threshold_layer persentase.

Opsional

Nilai yang valid: Float

Nilai default: 50.0

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.saturated_activation(), rule_parameters={ "tensor_regex": ".*tanh_input|.*sigmoid_input", "threshold_tanh_min": "-9.4999", "threshold_tanh_max": "9.4999", "threshold_sigmoid_min": "-23", "threshold_sigmoid_max": "16.99999", "threshold_inactivity": "1.0", "threshold_layer": "50.0" }, collections_to_save=[ CollectionConfig( name="custom_activations_collection", parameters={ "include_regex": ".*tanh_input|.*sigmoid_input" "save_interval": "500" } ) ] ) ]

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

catatan

Aturan ini tidak tersedia untuk algoritma XGBoost.

VanishingGradient

Aturan ini mendeteksi jika gradien dalam percobaan menjadi sangat kecil atau turun ke magnitudo nol. Jika rata-rata nilai absolut gradien turun di bawah yang ditentukanthreshold, aturan kembaliTrue.

Deskripsi Parameter untuk A VanishingGradient turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

threshold Nilai di mana gradien ditentukan untuk menghilang.

Opsional

Nilai yang valid: Float

Nilai default:0.0000001.

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.vanishing_gradient(), rule_parameters={ "threshold": "0.0000001" }, collections_to_save=[ CollectionConfig( name="gradients", parameters={ "save_interval": "500" } ) ] ) ]

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

catatan

Aturan ini tidak tersedia untuk algoritma XGBoost.

WeightUpdateRatio

Aturan ini melacak rasio pembaruan terhadap bobot selama pelatihan dan mendeteksi apakah rasio itu terlalu besar atau terlalu kecil. Jika rasio pembaruan terhadap bobot lebih besar dari large_threshold value atau jika rasio ini lebih kecil darismall_threshold, aturan akan kembaliTrue.

Kondisi untuk pelatihan adalah yang terbaik ketika pembaruan sepadan dengan gradien. Pembaruan yang terlalu besar dapat mendorong bobot menjauh dari nilai optimal, dan pembaruan yang sangat kecil menghasilkan konvergensi yang sangat lambat. Aturan ini mengharuskan bobot tersedia untuk dua langkah pelatihan, dan train.save_interval perlu ditetapkan sama dengannum_steps.

Deskripsi Parameter untuk A WeightUpdateRatio turan

Nama Parameter, Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

num_steps

Jumlah langkah di mana aturan memeriksa untuk menentukan apakah tensor telah berubah.

Jumlah langkah di mana Anda ingin membandingkan rasio berat. Jika Anda tidak memberikan nilai, aturan berjalan secara default terhadap langkah saat ini dan langkah yang disimpan sebelumnya. Jika Anda mengganti default dengan meneruskan nilai untuk parameter ini, perbandingan dilakukan antara bobot pada langkah s dan pada langkah>= s - num_steps.

Opsional

Nilai yang valid: Integer

Nilai default: None

large_threshold

Nilai maksimum yang dapat diambil oleh rasio pembaruan terhadap bobot sebelum aturan kembaliTrue.

Opsional

Nilai yang valid: Float

Nilai default: 10.0

small_threshold

Nilai minimum yang dapat diambil oleh rasio pembaruan terhadap bobot, di bawahnya aturan dikembalikanTrue.

Opsional

Nilai yang valid: Float

Nilai default: 0.00000001

epsilon

Konstanta kecil yang digunakan untuk memastikan bahwa Debugger tidak membagi dengan nol saat menghitung pembaruan rasio untuk menimbang.

Opsional

Nilai yang valid: Float

Nilai default: 0.000000001

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.weight_update_ratio(), rule_parameters={ "num_steps": "100", "large_threshold": "10.0", "small_threshold": "0.00000001", "epsilon": "0.000000001" }, collections_to_save=[ CollectionConfig( name="weights", parameters={ "train.save_interval": "100" } ) ] ) ]

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

catatan

Aturan ini tidak tersedia untuk algoritma XGBoost.

AllZero

Aturan ini mendeteksi jika semua atau persentase tertentu dari nilai tensor adalah nol.

Aturan ini dapat diterapkan baik ke salah satu kerangka kerja pembelajaran mendalam yang didukung (TensorFlow, MXnet, dan PyTorch) atau ke algoritma XGBoost. Anda harus menentukan tensor_regex parameter collection_names atau. Jika kedua parameter ditentukan, aturan memeriksa penyatuan tensor dari kedua himpunan.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A AllZero turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

collection_names

Daftar nama koleksi yang tensornya diperiksa aturan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: None

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: None

threshold

Menentukan persentase nilai dalam tensor yang harus nol agar aturan ini dapat dipanggil.

Opsional

Nilai yang valid: Float

Nilai default: 100 (dalam persentase)

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.all_zero(), rule_parameters={ "tensor_regex": ".*", "threshold": "100" }, collections_to_save=[ CollectionConfig( name="all", parameters={ "save_interval": "500" } ) ] ) ]

ClassImbalance

Aturan ini mengukur ketidakseimbangan pengambilan sampel antara kelas dan menimbulkan kesalahan jika ketidakseimbangan melebihi ambang batas atau jika terlalu banyak kesalahan prediksi untuk kelas yang kurang terwakili terjadi sebagai akibat dari ketidakseimbangan.

Model klasifikasi memerlukan kelas yang seimbang dalam kumpulan data pelatihan atau kelas weighting/sampling yang tepat selama pelatihan. Aturan melakukan pemeriksaan berikut:

  • Ini menghitung kejadian per kelas. Jika rasio jumlah sampel antara kelas terkecil dan terbesar lebih besar darithreshold_imbalance, kesalahan dilemparkan.

  • Ini memeriksa akurasi prediksi per kelas. Jika pengambilan sampel ulang atau pembobotan belum diterapkan dengan benar, maka model dapat mencapai akurasi tinggi untuk kelas dengan banyak sampel pelatihan, tetapi akurasi rendah untuk kelas dengan sedikit sampel pelatihan. Jika sebagian kecil dari kesalahan prediksi untuk kelas tertentu di atasthreshold_misprediction, kesalahan dilemparkan.

Aturan ini dapat diterapkan baik ke salah satu kerangka kerja pembelajaran mendalam yang didukung (TensorFlow, MXnet, dan PyTorch) atau ke algoritma XGBoost.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A ClassImbalance turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

threshold_imbalance

Ketidakseimbangan yang dapat diterima antara jumlah sampel di kelas terkecil dan di kelas terbesar. Melebihi nilai ambang ini menimbulkan kesalahan.

Opsional

Nilai yang valid: Float

Nilai default: 10

threshold_misprediction

Batas pada fraksi kesalahan prediksi yang diizinkan untuk setiap kelas. Melebihi ambang batas ini menimbulkan kesalahan. Kelas yang kurang terwakili paling berisiko melewati ambang batas ini.

Opsional

Nilai yang valid: Float

Nilai default: 0.7

samples

Jumlah label yang harus diproses sebelum ketidakseimbangan dievaluasi. Aturan mungkin tidak dipicu sampai melihat sampel yang cukup di beberapa langkah. Semakin banyak kelas yang berisi kumpulan data Anda, semakin besar sample angka ini seharusnya.

Opsional

Nilai yang valid: Integer

Nilai default: 500 (dengan asumsi dataset seperti MNIST dengan 10 kelas)

argmax

JikaTrue, np.argmax diterapkan pada tensor prediksi. Diperlukan ketika Anda memiliki vektor probabilitas untuk setiap kelas. Ini digunakan untuk menentukan kelas mana yang memiliki probabilitas tertinggi.

Bersyarat

Nilai yang benar: Boolean

Nilai default: False

labels_regex

Nama tensor yang berisi label.

Opsional

Nilai valid: String

Nilai default: ".*labels"

predictions_regex

Nama tensor yang berisi prediksi.

Opsional

Nilai valid: String

Nilai default: ".*predictions"

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.class_imbalance(), rule_parameters={ "threshold_imbalance": "10", "threshold_misprediction": "0.7", "samples": "500", "argmax": "False", "labels_regex": ".*labels", "predictions_regex": ".*predictions" }, collections_to_save=[ CollectionConfig( name="custom_output_collection", parameters={ "include_regex": ".*labels|.*predictions", "save_interval": "500" } ) ] ) ]

LossNotDecreasing

Aturan ini mendeteksi ketika kerugian tidak menurun nilainya pada tingkat yang memadai. Kerugian ini harus berupa skalar.

Aturan ini dapat diterapkan baik ke salah satu kerangka kerja pembelajaran mendalam yang didukung (TensorFlow, MXnet, dan PyTorch) atau ke algoritma XGBoost. Anda harus menentukan tensor_regex parameter collection_names atau. Jika kedua parameter ditentukan, aturan memeriksa penyatuan tensor dari kedua himpunan.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A LossNotDecreasing turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

collection_names

Daftar nama koleksi yang tensornya diperiksa aturan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: None

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: None

use_losses_collection

Jika diset True el ke, cari kerugian dalam koleksi bernama “kerugian” saat koleksi hadir.

Opsional

Nilai yang benar: Boolean

Nilai default: True

num_steps

Jumlah langkah minimum setelah aturan memeriksa apakah kerugian telah menurun. Evaluasi aturan terjadi setiap kalinum_steps. Aturan membandingkan kerugian untuk langkah ini dengan kerugian pada langkah yang setidaknya berada di num_steps belakang langkah saat ini. Misalnya, misalkan kerugian disimpan setiap tiga langkah, tetapi num_steps diatur ke 10. Pada langkah 21, kerugian untuk langkah 21 dibandingkan dengan kerugian untuk langkah 9. Langkah selanjutnya di mana kerugian diperiksa adalah langkah 33, karena sepuluh langkah setelah langkah 21 adalah langkah 31, dan pada langkah 31 dan langkah 32 kerugian tidak disimpan.

Opsional

Nilai yang valid: Integer

Nilai default: 10

diff_percent

Perbedaan persentase minimum dimana kerugian harus berkurang di antaranyanum_steps.

Opsional

Nilai yang valid: 0.0 < float < 100

Nilai default: 0.1 (dalam persentase)

increase_threshold_percent

Persentase ambang batas maksimum kerugian yang diizinkan meningkat dalam kasus kerugian telah meningkat

Opsional

Nilai yang valid: 0 < float < 100

Nilai default: 5 (dalam persentase)

mode

Nama mode Debugger untuk menanyakan nilai tensor untuk pemeriksaan aturan. Jika ini tidak dilewati, aturan akan memeriksa secara default untukmode.EVAL, lalumode.TRAIN, dan kemudianmode.GLOBAL.

Opsional

Nilai yang valid: String (EVAL,TRAIN, atauGLOBAL)

Nilai default: GLOBAL

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.loss_not_decreasing(), rule_parameters={ "tensor_regex": ".*", "use_losses_collection": "True", "num_steps": "10", "diff_percent": "0.1", "increase_threshold_percent": "5", "mode": "GLOBAL" }, collections_to_save=[ CollectionConfig( name="losses", parameters={ "save_interval": "500" } ) ] ) ]

Terlalu fit

Aturan ini mendeteksi apakah model Anda terlalu cocok dengan data pelatihan dengan membandingkan kerugian validasi dan pelatihan.

Aturan ini dapat diterapkan baik ke salah satu kerangka kerja pembelajaran mendalam yang didukung (TensorFlow, MXnet, dan PyTorch) atau ke algoritma XGBoost.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

catatan

Cara standar untuk mencegah overfitting adalah dengan mengatur model Anda.

Deskripsi Parameter untuk Aturan Overfit

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: Tidak ada

start_step

Langkah untuk mulai membandingkan validasi dan kerugian pelatihan.

Opsional

Nilai yang valid: Integer

Nilai default: 0

patience

Jumlah langkah yang ratio_threshold diizinkan melebihi nilai yang ditetapkan sebelum model dianggap overfit.

Opsional

Nilai yang valid: Integer

Nilai default: 1

ratio_threshold

Rasio maksimum perbedaan antara kerugian validasi rata-rata dan kerugian pelatihan rata-rata dengan kerugian pelatihan rata-rata. Jika ambang batas ini terlampaui untuk patience sejumlah langkah, model menjadi overfit dan aturan kembaliTrue.

Opsional

Nilai yang valid: Float

Nilai default: 0.1

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.overfit(), rule_parameters={ "tensor_regex": ".*", "start_step": "0", "patience": "1", "ratio_threshold": "0.1" }, collections_to_save=[ CollectionConfig( name="losses", parameters={ "train.save_interval": "100", "eval.save_interval": "10" } ) ] ) ]

Pelatihan berlebihan

Aturan ini mendeteksi jika model sedang dilatih secara berlebihan. Setelah sejumlah iterasi pelatihan pada model yang berperilaku baik (baik pelatihan maupun kerugian validasi menurun), model mendekati fungsi kerugian minimum dan tidak membaik lagi. Jika model melanjutkan pelatihan, dapat terjadi kerugian validasi mulai meningkat, karena model mulai terlalu pas. Aturan ini menetapkan ambang batas dan kondisi untuk menentukan apakah model tidak membaik, dan mencegah masalah kelebihan pemasangan karena latihan berlebihan.

Aturan ini dapat diterapkan baik ke salah satu kerangka kerja pembelajaran mendalam yang didukung (TensorFlow, MXnet, dan PyTorch) atau ke algoritma XGBoost.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

catatan

Pelatihan berlebihan dapat dihindari dengan berhenti lebih awal. Untuk informasi tentang berhenti lebih awal, lihatHentikan Pekerjaan Pelatihan Lebih Awal. Untuk contoh yang menunjukkan cara menggunakan pelatihan spot dengan Debugger, lihat Aktifkan Pelatihan Spot dengan Amazon SageMaker Debugger.

Deskripsi Parameter untuk Aturan Overtraining

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

patience_train

Jumlah langkah yang harus menunggu sebelum kehilangan pelatihan dianggap tidak membaik lagi.

Opsional

Nilai yang valid: Integer

Nilai default: 5

patience_validation Jumlah langkah yang harus menunggu sebelum kehilangan validasi dianggap tidak membaik lagi.

Opsional

Nilai yang valid: Integer

Nilai default: 10

delta

Ambang batas minimum dengan seberapa banyak kesalahan harus ditingkatkan sebelum dianggap sebagai optimal baru.

Opsional

Nilai yang valid: Float

Nilai default: 0.01

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.overtraining(), rule_parameters={ "patience_train": "5", "patience_validation": "10", "delta": "0.01" }, collections_to_save=[ CollectionConfig( name="losses", parameters={ "save_interval": "500" } ) ] ) ]

SimilarAcrossRuns

Aturan ini membandingkan tensor yang dikumpulkan dari percobaan dasar dengan tensor dari percobaan lain.

Aturan ini dapat diterapkan baik ke salah satu kerangka kerja pembelajaran mendalam yang didukung (TensorFlow, MXnet, dan PyTorch) atau ke algoritma XGBoost.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A SimilarAcrossRuns turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

other_trials

Nama pekerjaan pelatihan lengkap yang tensornya ingin Anda bandingkan dengan tensor yang dikumpulkan dari arus. base_trial

Diperlukan

Nilai valid: String

collection_names

Daftar nama koleksi yang tensornya diperiksa aturan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: Tidak ada

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: Tidak ada

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.similar_across_runs(), rule_parameters={ "other_trials": "<specify-another-job-name>", "collection_names": "losses", "tensor_regex": ".*" }, collections_to_save=[ CollectionConfig( name="losses", parameters={ "save_interval": "500" } ) ] ) ]

StalledTrainingRule

StalledTrainingRule mendeteksi jika tidak ada kemajuan yang dibuat pada pekerjaan pelatihan, dan menghentikan pekerjaan pelatihan jika aturan diaktifkan. Aturan ini mengharuskan tensor disimpan secara berkala dalam interval waktu yang ditentukan oleh threshold parameternya. Aturan ini terus memantau tensor baru, dan jika tidak ada tensor baru yang dipancarkan untuk aturan interval ambang akan diaktifkan.

Deskripsi Parameter untuk A StalledTrainingRule turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

threshold

Ambang batas yang menentukan berapa banyak waktu dalam detik aturan menunggu keluaran tensor sampai memicu masalah pelatihan yang terhenti. Nilai default adalah 1800 detik.

Opsional

Nilai yang valid: Integer

Nilai default: 1800

stop_training_on_fire

Jika diset True el ke, perhatikan apakah pekerjaan pelatihan dasar mengeluarkan tensor dalam "threshold" detik.

Opsional

Nilai yang benar: Boolean

Nilai default: False

training_job_name_prefix

Awalan nama pekerjaan pelatihan dasar. Jika stop_training_on_fire benar, aturan mencari pekerjaan SageMaker pelatihan dengan awalan ini di akun yang sama. Jika ditemukan ketidakaktifan, aturan mengambil StopTrainingJob tindakan. Perhatikan jika ada beberapa pekerjaan yang ditemukan dengan awalan yang sama, aturan akan melewatkan penghentian. Adalah penting bahwa awalan ditetapkan unik untuk setiap pekerjaan pelatihan.

Opsional

Nilai valid: String

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.stalled_training_rule(), rule_parameters={ "threshold": "1800", "stop_training_on_fire": "True", "training_job_name_prefix": "<specify-training-base-job-name>" }, collections_to_save=[ CollectionConfig( name="losses", parameters={ "save_interval": "500" } ) ] ) ]

TensorVariance

Aturan ini mendeteksi apakah Anda memiliki tensor dengan varians yang sangat tinggi atau rendah. Varians yang sangat tinggi atau rendah dalam tensor dapat menyebabkan saturasi neuron, yang mengurangi kemampuan belajar jaringan saraf. Varians yang sangat tinggi dalam tensor juga pada akhirnya dapat menyebabkan tensor yang meledak. Gunakan aturan ini untuk mendeteksi masalah seperti itu lebih awal.

Aturan ini dapat diterapkan baik ke salah satu kerangka kerja pembelajaran mendalam yang didukung (TensorFlow, MXnet, dan PyTorch) atau ke algoritma XGBoost. Anda harus menentukan tensor_regex parameter collection_names atau. Jika kedua parameter ditentukan, aturan memeriksa penyatuan tensor dari kedua himpunan.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A TensorVariance turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

collection_names

Daftar nama koleksi yang tensornya diperiksa aturan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: Tidak ada

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: Tidak ada

max_threshold

Ambang batas atas varians tensor.

Opsional

Nilai yang valid: Float

Nilai default: Tidak ada

min_threshold

Ambang batas untuk batas bawah varians tensor.

Opsional

Nilai yang valid: Float

Nilai default: Tidak ada

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.tensor_variance(), rule_parameters={ "collection_names": "weights", "max_threshold": "10", "min_threshold": "0.00001", }, collections_to_save=[ CollectionConfig( name="weights", parameters={ "save_interval": "500" } ) ] ) ]

UnchangedTensor

Aturan ini mendeteksi apakah tensor tidak lagi berubah lintas langkah.

Aturan ini menjalankan metode numpy.allclose untuk memeriksa apakah tensor tidak berubah.

Aturan ini dapat diterapkan baik ke salah satu kerangka kerja pembelajaran mendalam yang didukung (TensorFlow, MXnet, dan PyTorch) atau ke algoritma XGBoost. Anda harus menentukan tensor_regex parameter collection_names atau. Jika kedua parameter ditentukan, aturan memeriksa penyatuan tensor dari kedua himpunan.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A UnchangedTensor turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

collection_names

Daftar nama koleksi yang tensornya diperiksa aturan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: Tidak ada

tensor_regex

Daftar pola regex digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: Tidak ada

num_steps

Jumlah langkah di mana aturan memeriksa untuk menentukan apakah tensor telah berubah.

Ini memeriksa yang terakhir num_steps yang tersedia. Mereka tidak perlu berturut-turut. Jika num_steps 2, pada langkah s tidak selalu memeriksa s-1 dan s. Jika s-1 tidak tersedia, ia memeriksa langkah terakhir yang tersedia bersama dengan s. Dalam hal ini, ia memeriksa langkah terakhir yang tersedia dengan langkah saat ini.

Opsional

Nilai yang valid: Integer

Nilai default: 3

rtol

Parameter toleransi relatif yang akan diteruskan ke numpy.allclose metode.

Opsional

Nilai yang valid: Float

Nilai default: 1e-05

atol

Parameter toleransi absolut yang akan diteruskan ke numpy.allclose metode.

Opsional

Nilai yang valid: Float

Nilai default: 1e-08

equal_nan

Apakah akan membandingkan NaNs sebagai setara. JikaTrue, NaNs dalam masukan array a dianggap sama dengan NaNs dalam masukan array b dalam array keluaran. Parameter ini diteruskan ke numpy.allclose metode.

Opsional

Nilai yang benar: Boolean

Nilai default: False

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.unchanged_tensor(), rule_parameters={ "collection_names": "losses", "tensor_regex": "", "num_steps": "3", "rtol": "1e-05", "atol": "1e-08", "equal_nan": "False" }, collections_to_save=[ CollectionConfig( name="losses", parameters={ "save_interval": "500" } ) ] ) ]

CheckInputImages

Aturan ini memeriksa apakah gambar input telah dinormalisasi dengan benar. Secara khusus, ini mendeteksi jika rata-rata data sampel berbeda lebih dari nilai ambang batas dari nol. Banyak model visi komputer mengharuskan data input memiliki rata-rata nol dan varians unit.

Aturan ini berlaku untuk aplikasi pembelajaran mendalam.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A CheckInputImages turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

threshold_mean

Ambang batas yang menentukan berapa banyak rata-rata data input dapat berbeda dari 0.

Opsional

Nilai yang valid: Float

Nilai default: 0.2

threshold_samples

Jumlah gambar yang harus diambil sampelnya sebelum kesalahan dapat dilemparkan. Jika nilainya terlalu rendah, estimasi rata-rata dataset akan tidak akurat.

Opsional

Nilai yang valid: Integer

Nilai default: 500

regex

Nama tensor data input.

Opsional

Nilai valid: String

Nilai default: ".*hybridsequential0_input_0" (nama tensor input untuk model Apache MXNet menggunakan) HybridSequential

channel

Posisi saluran warna dalam array bentuk tensor input.

Opsional

Nilai yang valid: Integer

Nilai default: 1 (misalnya, MXnet mengharapkan data input dalam bentuk (batch_size, channel, height, width))

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.check_input_images(), rule_parameters={ "threshold_mean": "0.2", "threshold_samples": "500", "regex": ".*hybridsequential0_input_0", "channel": "1" }, collections_to_save=[ CollectionConfig( name="custom_inputs_collection", parameters={ "include_regex": ".*hybridsequential0_input_0", "save_interval": "500" } ) ] ) ]

NLPSequenceRatio

Aturan ini menghitung rasio token tertentu mengingat sisa urutan input yang berguna untuk mengoptimalkan kinerja. Misalnya, Anda dapat menghitung persentase token akhir kalimat (EOS) padding dalam urutan input Anda. Jika jumlah token EOS terlalu tinggi, strategi bucketing alternatif harus dilakukan. Anda juga dapat menghitung persentase token yang tidak diketahui dalam urutan input Anda. Jika jumlah kata yang tidak diketahui terlalu tinggi, kosakata alternatif dapat digunakan.

Aturan ini berlaku untuk aplikasi pembelajaran mendalam.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A NLPSequenceRatio turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini ke tensor bernilai skala tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang dilewatkan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skala yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: ".*embedding0_input_0" (dengan asumsi embedding sebagai lapisan awal jaringan)

token_values

Sebuah string dari daftar nilai numerik token. Misalnya, “3, 0".

Opsional

Nilai yang valid: Comma-separated string nilai numerik

Nilai default: 0

token_thresholds_percent

Serangkaian daftar ambang batas (dalam persentase) yang sesuai dengan masing-masingtoken_values. Misalnya, “50,0, 50,0".

Opsional

Nilai yang valid: Comma-separated string pelampung

Nilai default: "50"

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.nlp_sequence_ratio(), rule_parameters={ "tensor_regex": ".*embedding0_input_0", "token_values": "0", "token_thresholds_percent": "50" }, collections_to_save=[ CollectionConfig( name="custom_inputs_collection", parameters={ "include_regex": ".*embedding0_input_0" } ) ] ) ]

Kebingungan

Aturan ini mengevaluasi kebaikan matriks kebingungan untuk masalah klasifikasi.

Ini membuat matriks ukuran category_no*category_no dan mengisinya dengan data yang berasal dari pasangan (labels,predictions). Untuk setiap pasangan (labels,predictions), hitungan confusion[labels][predictions] bertambah dengan 1. Ketika matriks terisi penuh, rasio nilai data pada diagonal dan nilai off-diagonal dievaluasi sebagai berikut:

  • Untuk elemen pada diagonal: confusion[i][i]/sum_j(confusion[j][j])>=min_diag

  • Untuk elemen di luar diagonal: confusion[j][i])/sum_j(confusion[j][i])<=max_off_diag

Aturan ini dapat diterapkan pada algoritma XGBoost.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk Aturan Kebingungan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

category_no

Jumlah kategori.

Opsional

Nilai yang valid: Integer ≥2

Nilai default: "None"

labels

Koleksi labels tensor atau vektor 1-d label sejati.

Opsional

Nilai valid: String

Nilai default: "labels"

predictions

Koleksi predictions tensor atau vektor 1-d dari perkiraan label.

Opsional

Nilai valid: String

Nilai default: "predictions"

labels_collection

Aturan memeriksa tensor dalam koleksi ini untuk. labels

Opsional

Nilai valid: String

Nilai default: "labels"

predictions_collection

Aturan memeriksa tensor dalam koleksi ini untuk. predictions

Opsional

Nilai valid: String

Nilai default: "predictions"

min_diag

Ambang minimum untuk rasio data pada diagonal.

Opsional

Nilai yang valid: 0 ≤float≤ 1

Nilai default: 0.9

max_off_diag

Ambang batas maksimum untuk rasio data di luar diagonal.

Opsional

Nilai yang valid: 0 ≤float≤ 1

Nilai default: 0.1

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.confusion(), rule_parameters={ "category_no": "10", "labels": "labels", "predictions": "predictions", "labels_collection": "labels", "predictions_collection": "predictions", "min_diag": "0.9", "max_off_diag": "0.1" }, collections_to_save=[ CollectionConfig( name="labels", parameters={ "save_interval": "500" } ), CollectionConfig( name="predictions", parameters={ "include_regex": "500" } ) ] ) ]
catatan

Aturan ini menyimpulkan nilai default untuk parameter opsional jika nilainya tidak ditentukan.

FeatureImportanceOverweight

Aturan ini mengakumulasi bobot dari n nilai kepentingan fitur terbesar per langkah dan memastikan bahwa mereka tidak melebihi ambang batas. Misalnya, Anda dapat mengatur ambang batas untuk 3 fitur teratas agar tidak menampung lebih dari 80 persen dari total bobot model.

Aturan ini hanya berlaku untuk algoritma XGBoost.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A FeatureImportanceOverweight turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

threshold

Mendefinisikan ambang batas untuk proporsi jumlah kumulatif dari fitur n terbesar. Ang n ka ditentukan oleh nfeatures parameter.

Opsional

Nilai yang valid: Float

Nilai default: 0.8

nfeatures

Jumlah fitur terbesar.

Opsional

Nilai yang valid: Integer

Nilai default: 3

tensor_regex

Ekspresi reguler (regex) dari tensor memberi nama aturan untuk dianalisis.

Opsional

Nilai valid: String

Nilai default: ".*feature_importance/weight"

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.feature_importance_overweight(), rule_parameters={ "threshold": "0.8", "nfeatures": "3", "tensor_regex": ".*feature_importance/weight" }, collections_to_save=[ CollectionConfig( name="feature_importance", parameters={ "save_interval": "500" } ) ] ) ]

TreeDepth

Aturan ini mengukur kedalaman pohon dalam model XGBoost. XGBoost menolak pemisahan jika tidak meningkatkan kerugian. Ini mengatur pelatihan. Akibatnya, pohon mungkin tidak tumbuh sedalam yang ditentukan oleh depth parameter.

Aturan ini hanya berlaku untuk algoritma XGBoost.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatCara mengkonfigurasi aturan bawaan Debugger.

Deskripsi Parameter untuk A TreeDepth turan

Nama Parameter Deskripsi
base_trial

Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

depth

Kedalaman pohon. Kedalaman pohon diperoleh dengan menghitung logaritma dasar 2 dari ID simpul terbesar.

Opsional

Nilai yang valid: Float

Nilai default: 4

built_in_rules = [ Rule.sagemaker( base_config=rule_configs.tree_depth(), rule_parameters={ "depth": "4" }, collections_to_save=[ CollectionConfig( name="tree", parameters={ "save_interval": "500" } ) ] ) ]