

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

# Daftar aturan bawaan Debugger
<a name="debugger-built-in-rules"></a>

**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](debugger-availability-change.md). 

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 ](https://sagemaker.readthedocs.io/en/stable) atau operasi SageMaker API tingkat rendah. 

Tidak ada biaya tambahan untuk menggunakan aturan bawaan. Untuk informasi selengkapnya tentang penagihan, lihat [ halaman SageMaker Harga ](https://aws.amazon.com/sagemaker/pricing/) 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
<a name="debugger-built-in-rules-Rule"></a>

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 |  +  `create\_xgboost\_report`   | 

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


| Lingkup Validitas | Built-in Aturan | 
| --- | --- | 
| Kerangka kerja pembelajaran mendalam (TensorFlow, MXnet, dan PyTorch) |  +  `dead\_relu` <br />+  `exploding\_tensor` <br />+  `poor\_weight\_initialization` <br />+  `saturated\_activation` <br />+  `vanishing\_gradient` <br />+  `weight\_update\_ratio`   | 
| Kerangka kerja pembelajaran mendalam (TensorFlow, MXnet, dan PyTorch) dan algoritma XGBoost  |  +  `all\_zero` <br />+  `class\_imbalance` <br />+  `loss\_not\_decreasing` <br />+  `overfit` <br />+  `overtraining` <br />+  `similar\_across\_runs` <br />+  `stalled\_training\_rule` <br />+  `tensor\_variance` <br />+  `unchanged\_tensor`   | 
| Aplikasi pembelajaran mendalam |  +  `check\_input\_images` <br />+  `nlp\_sequence\_ratio`   | 
| Algoritma XGBoost |  +  `confusion` <br />+  `feature\_importance\_overweight` <br />+  `tree\_depth`   | 

**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.
+ Untuk instruksi lengkap dan contoh penggunaan aturan bawaan Debugger, lihat[Kode contoh aturan bawaan Debugger](debugger-built-in-rules-example.md#debugger-deploy-built-in-rules).
+ Untuk instruksi lengkap tentang menggunakan aturan bawaan dengan operasi SageMaker API tingkat rendah, lihat[Konfigurasikan Debugger menggunakan API SageMaker](debugger-createtrainingjob-api.md).

## CreateXgboostReport
<a name="create-xgboost-report"></a>

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.<br />**Diperlukan **<br />Nilai valid: String | 

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

## DeadRelu
<a name="dead-relu"></a>

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. <br />**Diperlukan **<br />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.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma <br />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 dari`threshold_inactivity`, itu dianggap mati.<br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: `1.0` (dalam persentase) | 
| threshold\_layer | Meng `True` embalikan jika persentase relU tidak aktif dalam lapisan lebih besar dari`threshold_layer`.<br />Meng `False` embalikan jika persentase relU tidak aktif dalam lapisan kurang dari`threshold_layer`.<br />**Opsional **<br />Nilai yang valid: Float<br />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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

**catatan**  
Aturan ini tidak tersedia untuk algoritma XGBoost.

## ExplodingTensor
<a name="exploding-tensor"></a>

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 kembali`True`.

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. <br />**Diperlukan **<br />Nilai valid: String | 
| collection\_names | Daftar nama koleksi yang tensornya diperiksa aturan.<br />**Opsional **<br />Nilai valid: String<br />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.<br />**Opsional **<br />Nilai valid: String <br />Nilai default: `None` | 
| only\_nan |  `True`untuk memantau `base_trial` tensor hanya untuk `NaN` nilai dan bukan untuk tak terbatas. <br />`False`untuk memperlakukan keduanya `NaN` dan tak terhingga sebagai nilai yang meledak dan untuk memantau keduanya.<br />**Opsional **<br />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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

**catatan**  
Aturan ini tidak tersedia untuk algoritma XGBoost.

## PoorWeightInitialization
<a name="poor-weight-initialization"></a>

 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. <br />**Diperlukan **<br />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.<br />**Opsional **<br />Nilai valid: String<br />Nilai default: `".*relu_input"` | 
| threshold | Jika rasio antara varians bobot minimum dan maksimum per lapisan melebihi langkah `threshold` pada satu langkah, aturan kembali`True`.<br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: `10.0` | 
| distribution\_range | Jika perbedaan minimum antara persentil ke-5 dan ke-95 dari distribusi gradien kurang dari`distribution_range`, aturan akan kembali. `True`<br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: `0.001` | 
| patience | Jumlah langkah untuk menunggu sampai kerugian dianggap tidak lagi berkurang.<br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `5` | 
| steps | Jumlah langkah yang dianalisis aturan ini. Anda biasanya hanya perlu memeriksa beberapa iterasi pertama.<br />**Opsional **<br />Nilai yang valid: Float<br />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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

**catatan**  
Aturan ini tidak tersedia untuk algoritma XGBoost.

## SaturatedActivation
<a name="saturated-activation"></a>

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 kembali`True`.

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. <br />**Diperlukan **<br />Nilai valid: String | 
| collection\_names | Daftar nama koleksi yang tensornya diperiksa aturan.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma<br />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.<br />**Opsional **<br />Nilai valid: String <br />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.<br />**Opsional **<br />Nilai yang valid: Float<br />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.<br />**Opsional **<br />Nilai yang valid: Float<br />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.<br />**Opsional **<br />Nilai yang valid: Float<br />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.<br />**Opsional **<br />Nilai yang valid: Float<br />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.<br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: `1.0` | 
| threshold\_layer | Meng `True` embalikan jika jumlah aktivasi jenuh dalam lapisan lebih besar dari `threshold_layer` persentase.<br />Meng `False` embalikan jika jumlah aktivasi jenuh dalam lapisan kurang dari `threshold_layer` persentase.<br />**Opsional **<br />Nilai yang valid: Float<br />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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

**catatan**  
Aturan ini tidak tersedia untuk algoritma XGBoost.

## VanishingGradient
<a name="vanishing-gradient"></a>

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 ditentukan`threshold`, aturan kembali`True`.

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. <br />**Diperlukan **<br />Nilai valid: String | 
| threshold | Nilai di mana gradien ditentukan untuk menghilang.**Opsional **<br />Nilai yang valid: Float<br />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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

**catatan**  
Aturan ini tidak tersedia untuk algoritma XGBoost.

## WeightUpdateRatio
<a name="weight-update-ratio"></a>

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 dari`small_threshold`, aturan akan kembali`True`.

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 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. <br />**Diperlukan **<br />Nilai valid: String | 
| num\_steps | Jumlah langkah di mana aturan memeriksa untuk menentukan apakah tensor telah berubah. <br />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`.<br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `None` | 
| large\_threshold | Nilai maksimum yang dapat diambil oleh rasio pembaruan terhadap bobot sebelum aturan kembali`True`. <br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: `10.0` | 
| small\_threshold | Nilai minimum yang dapat diambil oleh rasio pembaruan terhadap bobot, di bawahnya aturan dikembalikan`True`.<br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: `0.00000001` | 
| epsilon | Konstanta kecil yang digunakan untuk memastikan bahwa Debugger tidak membagi dengan nol saat menghitung pembaruan rasio untuk menimbang.<br />**Opsional **<br />Nilai yang valid: Float<br />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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

**catatan**  
Aturan ini tidak tersedia untuk algoritma XGBoost.

## AllZero
<a name="all-zero"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />Nilai valid: String | 
| collection\_names | Daftar nama koleksi yang tensornya diperiksa aturan.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma<br />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.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma<br />Nilai default: `None` | 
| threshold | Menentukan persentase nilai dalam tensor yang harus nol agar aturan ini dapat dipanggil. <br />**Opsional **<br />Nilai yang valid: Float<br />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
<a name="class-imbalance"></a>

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 dari`threshold_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 atas`threshold_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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />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.<br />**Opsional **<br />Nilai yang valid: Float<br />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. <br />**Opsional **<br />Nilai yang valid: Float<br />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. <br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `500` (dengan asumsi dataset seperti MNIST dengan 10 kelas) | 
| argmax | Jika`True`, [ np.argmax ](https://docs.scipy.org/doc/numpy-1.9.3/reference/generated/numpy.argmax.html) diterapkan pada tensor prediksi. Diperlukan ketika Anda memiliki vektor probabilitas untuk setiap kelas. Ini digunakan untuk menentukan kelas mana yang memiliki probabilitas tertinggi.<br />**Bersyarat **<br />Nilai yang benar: Boolean<br />Nilai default: `False` | 
| labels\_regex | Nama tensor yang berisi label.<br />**Opsional **<br />Nilai valid: String<br />Nilai default: `".*labels"` | 
| predictions\_regex | Nama tensor yang berisi prediksi.<br />**Opsional **<br />Nilai valid: String<br />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
<a name="loss-not-decreasing"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />Nilai valid: String | 
| collection\_names | Daftar nama koleksi yang tensornya diperiksa aturan.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma<br />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.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma <br />Nilai default: `None` | 
| use\_losses\_collection | Jika diset `True` el ke, cari kerugian dalam koleksi bernama “kerugian” saat koleksi hadir.<br />**Opsional **<br />Nilai yang benar: Boolean<br />Nilai default: `True` | 
| num\_steps | Jumlah langkah minimum setelah aturan memeriksa apakah kerugian telah menurun. Evaluasi aturan terjadi setiap kali`num_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. <br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `10` | 
| diff\_percent | Perbedaan persentase minimum dimana kerugian harus berkurang di antaranya`num_steps`.<br />**Opsional **<br />Nilai yang valid: `0.0` < float < `100`<br />Nilai default: `0.1` (dalam persentase) | 
| increase\_threshold\_percent | Persentase ambang batas maksimum kerugian yang diizinkan meningkat dalam kasus kerugian telah meningkat<br />**Opsional **<br />Nilai yang valid: `0` < float < `100`<br />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 untuk`mode.EVAL`, lalu`mode.TRAIN`, dan kemudian`mode.GLOBAL`. <br />**Opsional **<br />Nilai yang valid: String (`EVAL`,`TRAIN`, atau`GLOBAL`)<br />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
<a name="overfit"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

**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. <br />**Diperlukan **<br />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.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma <br />Nilai default: Tidak ada | 
| start\_step | Langkah untuk mulai membandingkan validasi dan kerugian pelatihan.<br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `0` | 
| patience | Jumlah langkah yang `ratio_threshold` diizinkan melebihi nilai yang ditetapkan sebelum model dianggap overfit.<br />**Opsional **<br />Nilai yang valid: Integer<br />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 kembali`True`.<br />**Opsional **<br />Nilai yang valid: Float<br />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
<a name="overtraining"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

**catatan**  
Pelatihan berlebihan dapat dihindari dengan berhenti lebih awal. Untuk informasi tentang berhenti lebih awal, lihat[Hentikan Pekerjaan Pelatihan Lebih Awal](automatic-model-tuning-early-stopping.md). Untuk contoh yang menunjukkan cara menggunakan pelatihan spot dengan Debugger, lihat [ Aktifkan Pelatihan Spot dengan Amazon SageMaker Debugger](https://sagemaker-examples.readthedocs.io/en/latest/sagemaker-debugger/mxnet_spot_training/mxnet-spot-training-with-sagemakerdebugger.html). 

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. <br />**Diperlukan **<br />Nilai valid: String | 
| patience\_train | Jumlah langkah yang harus menunggu sebelum kehilangan pelatihan dianggap tidak membaik lagi.<br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `5` | 
| patience\_validation | Jumlah langkah yang harus menunggu sebelum kehilangan validasi dianggap tidak membaik lagi.**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `10` | 
| delta | Ambang batas minimum dengan seberapa banyak kesalahan harus ditingkatkan sebelum dianggap sebagai optimal baru.<br />**Opsional **<br />Nilai yang valid: Float<br />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
<a name="similar-across-runs"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />Nilai valid: String | 
| other\_trials | Nama pekerjaan pelatihan lengkap yang tensornya ingin Anda bandingkan dengan tensor yang dikumpulkan dari arus. `base_trial`<br />**Diperlukan **<br />Nilai valid: String | 
| collection\_names | Daftar nama koleksi yang tensornya diperiksa aturan.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma<br />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.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma <br />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
<a name="stalled-training"></a>

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. <br />**Diperlukan **<br />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.<br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `1800` | 
| stop\_training\_on\_fire | Jika diset `True` el ke, perhatikan apakah pekerjaan pelatihan dasar mengeluarkan tensor dalam "`threshold`" detik.<br />**Opsional **<br />Nilai yang benar: Boolean<br />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.<br />**Opsional **<br />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
<a name="tensor-variance"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />Nilai valid: String | 
| collection\_names | Daftar nama koleksi yang tensornya diperiksa aturan.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma<br />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.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma <br />Nilai default: Tidak ada | 
| max\_threshold | Ambang batas atas varians tensor.<br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: Tidak ada | 
| min\_threshold | Ambang batas untuk batas bawah varians tensor.<br />**Opsional **<br />Nilai yang valid: Float<br />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
<a name="unchanged-tensor"></a>

Aturan ini mendeteksi apakah tensor tidak lagi berubah lintas langkah. 

Aturan ini menjalankan [ metode ](https://docs.scipy.org/doc/numpy/reference/generated/numpy.allclose.html) 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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />Nilai valid: String | 
| collection\_names | Daftar nama koleksi yang tensornya diperiksa aturan.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma<br />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.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma <br />Nilai default: Tidak ada | 
| num\_steps | Jumlah langkah di mana aturan memeriksa untuk menentukan apakah tensor telah berubah. <br />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.<br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `3` | 
| rtol | Parameter toleransi relatif yang akan diteruskan ke `[numpy.allclose](https://docs.scipy.org/doc/numpy/reference/generated/numpy.allclose.html)` metode. <br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: `1e-05` | 
| atol | Parameter toleransi absolut yang akan diteruskan ke `[numpy.allclose](https://docs.scipy.org/doc/numpy/reference/generated/numpy.allclose.html)` metode.<br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: `1e-08` | 
| equal\_nan | Apakah akan membandingkan NaNs sebagai setara. Jika`True`, NaNs dalam masukan array a dianggap sama dengan NaNs dalam masukan array b dalam array keluaran. Parameter ini diteruskan ke `[numpy.allclose](https://docs.scipy.org/doc/numpy/reference/generated/numpy.allclose.html)` metode.<br />**Opsional **<br />Nilai yang benar: Boolean<br />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
<a name="checkinput-mages"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />Nilai valid: String | 
| threshold\_mean | Ambang batas yang menentukan berapa banyak rata-rata data input dapat berbeda dari 0.<br />**Opsional **<br />Nilai yang valid: Float<br />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.<br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `500` | 
| regex | Nama tensor data input.<br />**Opsional **<br />Nilai valid: String<br />Nilai default: `".*hybridsequential0_input_0"` (nama tensor input untuk model Apache MXNet menggunakan) HybridSequential | 
| channel | Posisi saluran warna dalam array bentuk tensor input. <br />**Opsional **<br />Nilai yang valid: Integer<br />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
<a name="nlp-sequence-ratio"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />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.<br />**Opsional **<br />Nilai yang valid: Daftar string atau string yang dipisahkan koma <br />Nilai default: `".*embedding0_input_0"` (dengan asumsi embedding sebagai lapisan awal jaringan) | 
| token\_values | Sebuah string dari daftar nilai numerik token. Misalnya, “3, 0".<br />**Opsional **<br />Nilai yang valid: Comma-separated string nilai numerik<br />Nilai default: `0` | 
| token\_thresholds\_percent | Serangkaian daftar ambang batas (dalam persentase) yang sesuai dengan masing-masing`token_values`. Misalnya, “50,0, 50,0".<br />**Opsional **<br />Nilai yang valid: Comma-separated string pelampung<br />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
<a name="confusion"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />Nilai valid: String | 
| category\_no | Jumlah kategori.<br />**Opsional **<br />Nilai yang valid: Integer ≥2<br />Nilai default: `"None"` | 
| labels | Koleksi `labels` tensor atau vektor 1-d label sejati. <br />**Opsional **<br />Nilai valid: String<br />Nilai default: `"labels"` | 
| predictions | Koleksi `predictions` tensor atau vektor 1-d dari perkiraan label. <br />**Opsional **<br />Nilai valid: String<br />Nilai default: `"predictions"` | 
| labels\_collection | Aturan memeriksa tensor dalam koleksi ini untuk. `labels`<br />**Opsional **<br />Nilai valid: String<br />Nilai default: `"labels"` | 
| predictions\_collection | Aturan memeriksa tensor dalam koleksi ini untuk. `predictions`<br />**Opsional **<br />Nilai valid: String<br />Nilai default: `"predictions"` | 
| min\_diag | Ambang minimum untuk rasio data pada diagonal.<br />**Opsional **<br />Nilai yang valid: `0` ≤float≤ `1`<br />Nilai default: `0.9` | 
| max\_off\_diag | Ambang batas maksimum untuk rasio data di luar diagonal.<br />**Opsional **<br />Nilai yang valid: `0` ≤float≤ `1`<br />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
<a name="feature_importance_overweight"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />Nilai valid: String | 
| threshold | Mendefinisikan ambang batas untuk proporsi jumlah kumulatif dari fitur `n` terbesar. Ang `n` ka ditentukan oleh `nfeatures` parameter.<br />**Opsional **<br />Nilai yang valid: Float<br />Nilai default: `0.8` | 
| nfeatures | Jumlah fitur terbesar.<br />**Opsional **<br />Nilai yang valid: Integer<br />Nilai default: `3` | 
| tensor\_regex | Ekspresi reguler (regex) dari tensor memberi nama aturan untuk dianalisis.<br />**Opsional **<br />Nilai valid: String<br />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
<a name="tree-depth"></a>

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, lihat[Cara mengkonfigurasi aturan bawaan Debugger](use-debugger-built-in-rules.md).

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. <br />**Diperlukan **<br />Nilai valid: String | 
| depth | Kedalaman pohon. Kedalaman pohon diperoleh dengan menghitung logaritma dasar 2 dari ID simpul terbesar.<br />**Opsional **<br />Nilai yang valid: Float<br />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}}"
                } 
            )
        ]
    )
]
```