Daftar Aturan Built-in Debugger - Amazon SageMaker

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

Daftar Aturan Built-in Debugger

Gunakan aturan bawaan Debugger yang disediakan oleh Amazon SageMaker Debugger dan analisis metrik dan tensor yang dikumpulkan saat melatih model Anda. 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 API tingkat rendah SageMaker . 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, notebook Jupyter, JupyterLab atau lingkungan Anda, jalankan kode berikut untuk menginstal versi terbaru dari pustaka dan restart 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 classmethod. Rule.sagemaker

Aturan bawaan debugger untuk menghasilkan laporan pelatihan
Lingkup Validitas Aturan bawaan
Laporan Pelatihan untuk pekerjaan pelatihan SageMaker XGBoost
Aturan bawaan debugger untuk men-debug data pelatihan model (tensor keluaran)
Lingkup Validitas Aturan bawaan
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.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.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.

CreateXgboostLaporkan

CreateXgboostReport Aturan tersebut mengumpulkan tensor keluaran dari pekerjaan pelatihan XGBoost dan membuat laporan pelatihan yang komprehensif secara otomatis. Anda dapat mengunduh laporan pembuatan profil yang komprehensif saat pekerjaan pelatihan sedang berjalan atau setelah pekerjaan pelatihan selesai, dan memeriksa kemajuan pelatihan atau hasil akhir dari pekerjaan pelatihan. CreateXgboostReport Aturan 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 Aturan CreateXgboostReport
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 aktivasi mereka 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 Aturan DeadRelu
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 dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: ".*relu_output"

threshold_inactivity

Mendefinisikan tingkat aktivitas di bawah mana ReLU dianggap mati. Sebuah ReLU mungkin aktif di awal percobaan dan kemudian perlahan-lahan 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

Mengembalikan True jika persentase RelU tidak aktif dalam lapisan lebih besar dari. threshold_layer

Mengembalikan False jika persentase RelU tidak aktif dalam lapisan kurang dari. threshold_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, lihatKonfigurasikan Aturan Built-in 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 non-terbatas terdeteksi, aturan kembali. True

Deskripsi Parameter untuk Aturan ExplodingTensor
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 oleh aturan.

Opsional

Nilai valid: String

Nilai default: None

tensor_regex

Daftar pola regex yang digunakan untuk membatasi perbandingan ini dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar 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, lihatKonfigurasikan Aturan Built-in Debugger.

catatan

Aturan ini tidak tersedia untuk algoritma XGBoost.

PoorWeightInisialisasi

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. Inisialisasi seperti Xavier bertujuan untuk menjaga varians konstan di seluruh aktivasi, yang sangat relevan untuk melatih jaring 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 Aturan PoorWeightInitialization
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

activation_inputs_regex

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

Opsional

Nilai valid: String

Nilai default: ".*relu_input"

threshold

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

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, lihatKonfigurasikan Aturan Built-in 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 akan kembaliTrue.

Deskripsi Parameter untuk Aturan SaturatedActivation
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 oleh 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 dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar 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 bawah mana 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

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

Mengembalikan False 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, lihatKonfigurasikan Aturan Built-in 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 akan kembaliTrue.

Deskripsi Parameter untuk Aturan VanishingGradient
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

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, lihatKonfigurasikan Aturan Built-in Debugger.

catatan

Aturan ini tidak tersedia untuk algoritma XGBoost.

WeightUpdateRasio

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 dengan. num_steps

Deskripsi Parameter untuk Aturan WeightUpdateRatio
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

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 tersimpan sebelumnya. Jika Anda mengganti default dengan meneruskan nilai untuk parameter ini, perbandingan dilakukan antara bobot pada langkah s dan 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 digunakan untuk memastikan bahwa Debugger tidak membagi dengan nol saat menghitung pembaruan rasio untuk ditimbang.

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, lihatKonfigurasikan Aturan Built-in 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, PyTorch dan) atau ke algoritma XGBoost. Anda harus menentukan tensor_regex parameter collection_names atau. Jika kedua parameter ditentukan, aturan memeriksa penyatuan tensor dari kedua set.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan AllZero
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 oleh 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 dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar 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 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 melempar kesalahan jika ketidakseimbangan melebihi ambang batas atau jika terlalu banyak kesalahan prediksi untuk kelas yang kurang terwakili terjadi sebagai akibat dari ketidakseimbangan.

Model klasifikasi membutuhkan kelas yang seimbang dalam kumpulan data pelatihan atau bobot/pengambilan sampel kelas 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 resampling 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, PyTorch dan) atau ke algoritma XGBoost.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan ClassImbalance
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

threshold_imbalance

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

Opsional

Nilai yang valid: Float

Nilai default: 10

threshold_misprediction

Batas pada fraksi misprediksi diperbolehkan 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 telah 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 kumpulan data 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" } ) ] ) ]

LossNotMenurunnya

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

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

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan LossNotDecreasing
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 oleh 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 dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: None

use_losses_collection

Jika diatur keTrue, cari kerugian dalam koleksi bernama “kerugian” saat koleksi hadir.

Opsional

Nilai yang benar: Boolean

Nilai default: True

num_steps

Jumlah minimum langkah setelah aturan memeriksa apakah kerugian telah menurun. Evaluasi aturan terjadi setiapnum_steps. Aturan membandingkan kerugian untuk langkah ini dengan kerugian pada langkah yang setidaknya di num_steps belakang langkah saat ini. Misalnya, misalkan kerugian diselamatkan 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 bahwa kerugian dibiarkan 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 diteruskan, aturan 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" } ) ] ) ]

Overfit

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

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

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatKonfigurasikan Aturan Built-in 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 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 dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

Nilai default: Tidak ada

start_step

Langkah dari mana untuk mulai membandingkan validasi dan kehilangan pelatihan.

Opsional

Nilai yang valid: Integer

Nilai default: 0

patience

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

Opsional

Nilai yang valid: Integer

Nilai default: 1

ratio_threshold

Rasio maksimum perbedaan antara kehilangan validasi rata-rata dan kehilangan pelatihan rata-rata terhadap kerugian pelatihan rata-rata. Jika ambang batas ini terlampaui untuk patience sejumlah langkah, model sedang overfit dan aturan kembali. True

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" } ) ] ) ]

Latihan berlebihan

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

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

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatKonfigurasikan Aturan Built-in Debugger.

catatan

Overtraining 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 Mengaktifkan 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 diatur ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger.

Diperlukan

Nilai valid: String

patience_train

Jumlah langkah untuk menunggu sebelum kehilangan pelatihan dianggap tidak membaik lagi.

Opsional

Nilai yang valid: Integer

Nilai default: 5

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

Opsional

Nilai yang valid: Integer

Nilai default: 10

delta

Ambang 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" } ) ] ) ]

SimilarAcrossBerjalan

Aturan ini membandingkan tensor yang dikumpulkan dari uji coba dasar dengan tensor dari uji coba lain.

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

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan SimilarAcrossRuns
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

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 oleh 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 dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar 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" } ) ] ) ]

StalledTrainingAturan

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

Deskripsi Parameter untuk Aturan StalledTrainingRule
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

threshold

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

Opsional

Nilai yang valid: Integer

Nilai default: 1800

stop_training_on_fire

Jika disetel keTrue, perhatikan apakah pekerjaan pelatihan dasar mengeluarkan tensor dalam detik "”threshold.

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 per 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 jika 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 meledak. Gunakan aturan ini untuk mendeteksi masalah tersebut sejak dini.

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

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan TensorVariance
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 oleh 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 dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar 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 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 di seluruh 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, PyTorch dan) atau ke algoritma XGBoost. Anda harus menentukan tensor_regex parameter collection_names atau. Jika kedua parameter ditentukan, aturan memeriksa penyatuan tensor dari kedua set.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan UnchangedTensor
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 oleh 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 dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar 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 itu 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 sama. JikaTrue, NaNs dalam array input a dianggap sama dengan NaNs dalam array input b dalam array output. 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" } ) ] ) ]

CheckInputGambar

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

Aturan ini berlaku untuk aplikasi pembelajaran mendalam.

Untuk contoh cara mengonfigurasi dan menerapkan aturan bawaan, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan CheckInputImages
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

threshold_mean

Ambang batas yang menentukan seberapa besar 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 tidak akan 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 larik bentuk tensor input.

Opsional

Nilai yang valid: Integer

Nilai default: 1 (misalnya, MxNet mengharapkan data masukan 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" } ) ] ) ]

NLP SequenceRatio

Aturan ini menghitung rasio token tertentu mengingat sisa urutan input yang berguna untuk mengoptimalkan kinerja. Misalnya, Anda dapat menghitung persentase token padding end-of-sentence (EOS) 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, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan SequenceRatio NLP
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 dengan tensor bernilai skalar tertentu. Aturan hanya memeriksa tensor yang cocok dengan pola regex yang ditentukan dalam daftar. Jika tidak ada pola yang diteruskan, aturan membandingkan semua tensor yang dikumpulkan dalam uji coba secara default. Hanya tensor bernilai skalar yang dapat dicocokkan.

Opsional

Nilai yang valid: Daftar string atau string yang dipisahkan koma

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

token_values

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

Opsional

Nilai yang valid: String nilai numerik yang dipisahkan koma

Nilai default: 0

token_thresholds_percent

Sebuah string dari daftar ambang batas (dalam persentase) yang sesuai dengan masing-masing. token_values Misalnya, “50,0, 50,0”.

Opsional

Nilai yang valid: String float yang dipisahkan koma

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 menciptakan matriks ukuran category_no*category_no dan mengisinya dengan data yang berasal dari (labels,predictions) pasangan. Untuk setiap pasangan (labels,predictions), hitungan dalam confusion[labels][predictions] bertambah 1. Ketika matriks terisi penuh, rasio data nilai on-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, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan Kebingungan
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

category_no

Jumlah kategori.

Opsional

Nilai yang valid: Integer ≥2

Nilai default: "None"

labels

Koleksi labels tensor atau vektor 1-d dari label sejati.

Opsional

Nilai valid: String

Nilai default: "labels"

predictions

Koleksi predictions tensor atau vektor 1-d dari label yang diperkirakan.

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 dari 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.

FeatureImportanceKelebihan berat badan

Aturan ini mengakumulasi bobot 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, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan FeatureImportanceOverweight
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

threshold

Mendefinisikan ambang batas untuk proporsi jumlah kumulatif dari fitur terbesar. n Angka n tersebut 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) tensor menamai 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 perpecahan jika mereka 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, lihatKonfigurasikan Aturan Built-in Debugger.

Deskripsi Parameter untuk Aturan TreeDepth
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

depth

Kedalaman pohon. Kedalaman pohon diperoleh dengan menghitung logaritma basis 2 dari ID node 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" } ) ] ) ]