Hyperparameter untuk tugas visi komputer dalam pembelajaran mesin otomatis (v1)
BERLAKU UNTUK:SDK Python azureml v1
Pelajari hyperparameter mana yang tersedia khusus untuk tugas visi komputer dalam eksperimen ML otomatis.
Dengan dukungan untuk tugas-tugas computer vision, Anda dapat mengontrol algoritma model dan membersihkan hiperparameter. Algoritma model dan hiperparameter ini diteruskan sebagai ruang parameter untuk pembersihan. Meskipun banyak dari hyperparameter yang terpapar adalah agnostik model, ada instans di mana hyperparameter bersifat spesifik model atau spesifik tugas.
Hiperparameter spesifik model
Tabel ini merangkum hiperparameter khusus untuk algoritma yolov5
.
Nama parameter | Deskripsi | Default |
---|---|---|
validation_metric_type |
Metode komputasi metrik untuk digunakan untuk metrik validasi. Harus none , coco , voc , atau coco_voc . |
voc |
validation_iou_threshold |
Ambang IOU untuk pencocokan kotak saat menghitung metrik validasi. Harus berupa float dalam rentang [0.1, 1]. |
0,5 |
img_size |
Ukuran gambar untuk latihan dan validasi. Harus berupa nilai bilangan bulat positif. Catatan: eksekusi pelatihan bisa masuk ke CUDA OOM jika ukurannya terlalu besar. |
640 |
model_size |
Ukuran model. Harus small , medium , large , atau xlarge . Catatan: eksekusi pelatihan mungkin masuk ke CUDA OOM jika ukuran modelnya terlalu besar. |
medium |
multi_scale |
Aktifkan gambar multiskala dengan memvariasikan ukuran gambar sebesar +/- 50% Harus 0 atau 1. Catatan: eksekusi pelatihan mungkin masuk ke CUDA OOM jika tidak ada memori GPU yang cukup. |
0 |
box_score_thresh |
Selama inferensi, hanya proposal kembali dengan skor klasifikasi lebih besar dari box_score_thresh . Skor adalah perkalian skor objek dan probabilitas klasifikasi. Harus berupa float dalam rentang [0, 1]. |
0.1 |
nms_iou_thresh |
Ambang IOU yang digunakan selama inferensi dalam pemrosesan pasca penekanan non-maksimum. Harus berupa float dalam rentang [0, 1]. |
0,5 |
tile_grid_size |
Ukuran kisi yang digunakan untuk pemetakan setiap gambar. Catatan: tile_grid_size tidak boleh Tidak Ada untuk mengaktifkan logika deteksi objek kecil Tuple dari dua bilangan bulat yang dilewatkan sebagai string. Contoh: --tile_grid_size "(3, 2)" |
Tidak Ada Default |
tile_overlap_ratio |
Tumpang tindih rasio antara petak yang berdekatan di tiap dimensi. Harus berupa float dalam rentang [0, 1) |
0.25 |
tile_predictions_nms_thresh |
Ambang IOU untuk digunakan untuk melakukan NMS sambil menggabungkan prediksi dari petak peta dan gambar. Digunakan dalam validasi/ inferensi. Harus berupa float dalam rentang [0, 1] |
0.25 |
Tabel ini merangkum hyperparameter khusus maskrcnn_*
untuk segmentasi instans selama inferensi.
Nama parameter | Deskripsi | Default |
---|---|---|
mask_pixel_score_threshold |
Skor minimal untuk mempertimbangkan piksel sebagai bagian dari masker objek. | 0,5 |
max_number_of_polygon_points |
Jumlah maksimum pasangan koordinat (x, y) dalam poligon setelah dikonversi dari masker. | 100 |
export_as_image |
Ekspor masker sebagai gambar. | Salah |
image_type |
Jenis gambar untuk mengekspor masker sebagai (opsi jpg, png, bmp). | JPG |
Hiperparameter agnostik model
Tabel berikut menggambarkan hiperparameter yang merupakan agnostik model.
Nama parameter | Deskripsi | Default |
---|---|---|
number_of_epochs |
Jumlah epoch pelatihan. Harus berupa nilai bilangan bulat positif. |
15 (kecuali yolov5 : 30) |
training_batch_size |
Ukuran batch pelatihan. Harus berupa nilai bilangan bulat positif. |
Multi-kelas/multi-label: 78 (kecuali vit-varian: vits16r224 : 128 vitb16r224 : 48 vitl16r224 :10)Deteksi objek: 2 (kecuali yolov5 : 16) Segmentasi instans: 2 Catatan: Default adalah ukuran batch terbesar yang dapat digunakan pada memori GPU 12 GiB. |
validation_batch_size |
Ukuran batch validasi. Harus berupa nilai bilangan bulat positif. |
Multi-kelas/multi-label: 78 (kecuali vit-varian: vits16r224 : 128 vitb16r224 : 48 vitl16r224 :10)Deteksi objek: 1 (kecuali yolov5 : 16) Segmentasi instans: 1 Catatan: Default adalah ukuran batch terbesar yang dapat digunakan pada memori GPU 12 GiB. |
grad_accumulation_step |
Akumulasi gradien berarti menjalankan jumlah grad_accumulation_step yang dikonfigurasi tanpa memperbarui bobot model sambil mengakumulasi gradien dari langkah-langkah tersebut, dan kemudian menggunakan gradien akumulasi untuk menghitung pembaruan berat. Harus berupa nilai bilangan bulat positif. |
1 |
early_stopping |
Aktifkan logika berhenti awal selama pelatihan. Harus 0 atau 1. |
1 |
early_stopping_patience |
Jumlah minimum epoch atau evaluasi validasi dengan tidak ada perbaikan metrik utama sebelum eksekusi dihentikan. Harus berupa nilai bilangan bulat positif. |
5 |
early_stopping_delay |
Jumlah minimum epoch atau evaluasi validasi untuk ditunggu sebelum perbaikan metrik utama dilacak untuk penghentian awal. Harus berupa nilai bilangan bulat positif. |
5 |
learning_rate |
Tingkat pembelajaran awal. Harus berupa float dalam rentang [0, 1]. |
Multi-kelas: 0,01 (kecuali vit-varian: vits16r224 : 0,0125vitb16r224 : 0,0125vitl16r224 : 0.001) Multi-label: 0,035 (kecuali varian vit: vits16r224 : 0,025vitb16r224 : 0.025 vitl16r224 : 0.002) Deteksi objek: 0.005 (kecuali yolov5 : 0.01) Segmentasi instans: 0,005 |
lr_scheduler |
Jenis penjadwal tingkat pembelajaran. Harus warmup_cosine atau step . |
warmup_cosine |
step_lr_gamma |
Nilai gamma saat penjadwal tingkat pembelajaran adalah step .Harus berupa float dalam rentang [0, 1]. |
0,5 |
step_lr_step_size |
Nilai ukuran langkah saat penjadwal tingkat pembelajaran adalah step .Harus berupa nilai bilangan bulat positif. |
5 |
warmup_cosine_lr_cycles |
Nilai siklus kosinus saat penjadwal tingkat pembelajaran adalah warmup_cosine . Harus berupa float dalam rentang [0, 1]. |
0,45 |
warmup_cosine_lr_warmup_epochs |
Nilai epoch pemanasan saat penjadwal tingkat pembelajaran adalah warmup_cosine . Harus berupa nilai bilangan bulat positif. |
2 |
optimizer |
Jenis pengoptimal. Harus di antara sgd , adam , adamw . |
sgd |
momentum |
Nilai momentum saat pengoptimal adalah sgd . Harus berupa float dalam rentang [0, 1]. |
0,9 |
weight_decay |
Nilai peluruhan berat ketika pengoptimal adalah sgd , adam , atau adamw . Harus berupa float dalam rentang [0, 1]. |
1e-4 |
nesterov |
Aktifkan nesterov saat pengoptimal sgd . Harus 0 atau 1. |
1 |
beta1 |
Nilai beta1 saat pengoptimal adalah adam atau adamw . Harus berupa float dalam rentang [0, 1]. |
0,9 |
beta2 |
Nilai beta2 saat pengoptimal adalah adam atau adamw .Harus berupa float dalam rentang [0, 1]. |
0,999 |
amsgrad |
Aktifkan amsgrad saat pengoptimal adam atau adamw .Harus 0 atau 1. |
0 |
evaluation_frequency |
Frekuensi untuk mengevaluasi himpunan data validasi untuk mendapatkan skor metrik. Harus berupa nilai bilangan bulat positif. |
1 |
checkpoint_frequency |
Frekuensi untuk menyimpan titik pemeriksaan model. Harus berupa nilai bilangan bulat positif. |
Titik pemeriksaan pada epoch dengan metrik utama terbaik pada validasi. |
checkpoint_run_id |
ID eksekusi percobaan yang memiliki titik pemeriksaan prapelatihan untuk pelatihan bertahap. | no default |
checkpoint_dataset_id |
ID FileDataset berisi titik pemeriksaan prapelatihan untuk pelatihan bertambah bertahap. Pastikan untuk meneruskan checkpoint_filename bersama dengan checkpoint_dataset_id . |
no default |
checkpoint_filename |
Filename titik pemeriksaan yang telah dilatih sebelumnya di FileDataset untuk pelatihan bertambah bertahap. Pastikan untuk meneruskan checkpoint_dataset_id bersama dengan checkpoint_filename . |
no default |
layers_to_freeze |
Berapa banyak lapisan yang harus dibekukan untuk model Anda. Misalnya, melewatkan 2 sebagai nilai untuk seresnext berarti membekukan layer0 dan layer1 yang mengacu pada info lapisan model yang didukung di bawah ini. Harus berupa nilai bilangan bulat positif. 'resnet': [('conv1.', 'bn1.'), 'layer1.', 'layer2.', 'layer3.', 'layer4.'], 'mobilenetv2': ['features.0.', 'features.1.', 'features.2.', 'features.3.', 'features.4.', 'features.5.', 'features.6.', 'features.7.', 'features.8.', 'features.9.', 'features.10.', 'features.11.', 'features.12.', 'features.13.', 'features.14.', 'features.15.', 'features.16.', 'features.17.', 'features.18.'], 'seresnext': ['layer0.', 'layer1.', 'layer2.', 'layer3.', 'layer4.'], 'vit': ['patch_embed', 'blocks.0.', 'blocks.1.', 'blocks.2.', 'blocks.3.', 'blocks.4.', 'blocks.5.', 'blocks.6.','blocks.7.', 'blocks.8.', 'blocks.9.', 'blocks.10.', 'blocks.11.'], 'yolov5_backbone': ['model.0.', 'model.1.', 'model.2.', 'model.3.', 'model.4.','model.5.', 'model.6.', 'model.7.', 'model.8.', 'model.9.'], 'resnet_backbone': ['backbone.body.conv1.', 'backbone.body.layer1.', 'backbone.body.layer2.','backbone.body.layer3.', 'backbone.body.layer4.'] |
no default |
Hyperparameter spesifik klasifikasi citra (multi-kelas dan multi-label)
Tabel berikut merangkum hiperparmeter untuk tugas (multi-kelas dan multi-label) klasifikasi gambar.
Nama parameter | Deskripsi | Default |
---|---|---|
weighted_loss |
0 untuk tidak ada kehilangan tertimbang. 1 untuk penurunan tertimbang dengan sqrt. (class_weights) 2 untuk kehilangan tertimbang dengan class_weights. Harus 0 atau 1 atau 2. |
0 |
valid_resize_size |
Catatan: seresnext tidak mengambil ukuran yang arbitrer. |
256 |
valid_crop_size |
Catatan: seresnext tidak mengambil ukuran yang arbitrer. valid_crop_size dan train_crop_size yang sama. |
224 |
train_crop_size |
Catatan: seresnext tidak mengambil ukuran yang arbitrer. valid_crop_size dan train_crop_size yang sama. |
224 |
Hyperparameter khusus tugas segmentasi instans dan deteksi objek
Hiperparameter berikut ialah untuk deteksi objek dan tugas segmentasi instans.
Peringatan
Parameter ini tidak didukung dengan algoritma yolov5
. Lihat bagian hyperparameter khusus model untuk hyperparmeter yolov5
yang didukung.
Nama parameter | Deskripsi | Default |
---|---|---|
validation_metric_type |
Metode komputasi metrik untuk digunakan untuk metrik validasi. Harus none , coco , voc , atau coco_voc . |
voc |
validation_iou_threshold |
Ambang IOU untuk pencocokan kotak saat menghitung metrik validasi. Harus berupa float dalam rentang [0.1, 1]. |
0,5 |
min_size |
Ukuran minimum gambar yang akan diskalakan ulang sebelum diberikan ke backbone. Harus berupa nilai bilangan bulat positif. Catatan: eksekusi pelatihan bisa masuk ke CUDA OOM jika ukurannya terlalu besar. |
600 |
max_size |
Ukuran minimum gambar yang akan diskalakan ulang sebelum diberikan ke backbone. Harus berupa nilai bilangan bulat positif. Catatan: eksekusi pelatihan bisa masuk ke CUDA OOM jika ukurannya terlalu besar. |
1333 |
box_score_thresh |
Selama inferensi, hanya proposal kembali dengan skor klasifikasi lebih besar dari box_score_thresh . Harus berupa float dalam rentang [0, 1]. |
0,3 |
nms_iou_thresh |
Ambang IOU yang digunakan dalam penekanan non-maksimum (NMS) untuk kepala prediksi. Digunakan selama inferensi. Harus berupa float dalam rentang [0, 1]. |
0,5 |
box_detections_per_img |
Jumlah maksimum deteksi per gambar, untuk semua kelas. Harus berupa nilai bilangan bulat positif. |
100 |
tile_grid_size |
Ukuran kisi yang digunakan untuk pemetakan setiap gambar. Catatan: tile_grid_size tidak boleh Tidak Ada untuk mengaktifkan logika deteksi objek kecil Tuple dari dua bilangan bulat yang dilewatkan sebagai string. Contoh: --tile_grid_size "(3, 2)" |
Tidak Ada Default |
tile_overlap_ratio |
Tumpang tindih rasio antara petak yang berdekatan di tiap dimensi. Harus berupa float dalam rentang [0, 1) |
0.25 |
tile_predictions_nms_thresh |
Ambang IOU untuk digunakan untuk melakukan NMS sambil menggabungkan prediksi dari petak peta dan gambar. Digunakan dalam validasi/ inferensi. Harus berupa float dalam rentang [0, 1] |
0.25 |