Hyperparametry pro úlohy počítačového zpracování obrazu v automatizovaném strojovém učení (v1)
PLATÍ PRO: Python SDK azureml v1
Zjistěte, které hyperparametry jsou k dispozici speciálně pro úlohy počítačového zpracování obrazu v experimentech automatizovaného strojového učení.
S podporou úloh počítačového zpracování obrazu můžete řídit algoritmus modelu a uklidit hyperparametry. Tyto algoritmy modelu a hyperparametry se předávají jako prostor parametrů pro úklid. Zatímco mnoho vystavených hyperparametrů je nezávislé na modelu, existují instance, ve kterých jsou hyperparametry specifické pro model nebo úlohu.
Hyperparametry specifické pro model
Tato tabulka shrnuje hyperparametry specifické pro yolov5
algoritmus.
Název parametru | Popis | Výchozí |
---|---|---|
validation_metric_type |
Metoda výpočtů metrik, která se má použít pro ověřovací metriky. Musí být none , coco , voc nebo coco_voc . |
voc |
validation_iou_threshold |
Prahová hodnota IOU pro porovnávání krabic při výpočetních metrikách ověřování Musí být plovoucí v rozsahu [0,1, 1]. |
0.5 |
img_size |
Velikost obrázku pro trénování a ověření Musí to být kladné celé číslo. Poznámka: Trénovací běh se může dostat do CUDA OOM, pokud je velikost příliš velká. |
640 |
model_size |
Velikost modelu Musí být small , medium , large nebo xlarge . Poznámka: Trénovací běh se může dostat do CUDA OOM, pokud je velikost modelu příliš velká. |
medium |
multi_scale |
Povolení vícenásobných imagí s různou velikostí obrázku o +/- 50 % Musí být 0 nebo 1. Poznámka: Trénovací běh se může dostat do CUDA OOM, pokud není dostatek paměti GPU. |
0 |
box_score_thresh |
Při odvození vrátí pouze návrhy se skóre větším než box_score_thresh . Skóre je násobení skóre objektů a pravděpodobnosti klasifikace. Musí to být plovák v rozsahu [0, 1]. |
0,1 |
nms_iou_thresh |
Prahová hodnota IOU použitá při odvozování v ne maximálním potlačení po zpracování. Musí to být plovák v rozsahu [0, 1]. |
0.5 |
tile_grid_size |
Velikost mřížky, která se má použít pro provazování jednotlivých obrázků. Poznámka: tile_grid_size nesmí být žádná, aby bylo možné povolit logiku detekce malých objektů. Řazená kolekce dvou celých čísel předaných jako řetězec. Příklad: --tile_grid_size "(3; 2)" |
Bez výchozího nastavení |
tile_overlap_ratio |
Poměr překrytí mezi sousedními dlaždicemi v každé dimenzi Musí být plovoucí v rozsahu [0, 1) |
0.25 |
tile_predictions_nms_thresh |
Prahová hodnota IOU, která se má použít k provádění NMS při slučování předpovědí z dlaždic a obrázků. Používá se při ověřování nebo odvozování. Musí být plovoucí v rozsahu [0, 1] |
0.25 |
Tato tabulka shrnuje hyperparametry specifické pro maskrcnn_*
segmentaci instance během odvozování.
Název parametru | Popis | Výchozí |
---|---|---|
mask_pixel_score_threshold |
Určení skóre pro zvážení pixelu jako součásti masky objektu | 0.5 |
max_number_of_polygon_points |
Maximální počet párů souřadnic (x, y) v mnohoúhelníku po převodu z masky | 100 |
export_as_image |
Export masek jako obrázků | False |
image_type |
Typ obrázku pro export masky jako (možnosti jsou jpg, png, bmp). | JPG |
Hyperparametry nezávislé na modelu
Následující tabulka popisuje hyperparametry, které jsou nezávislé na modelu.
Název parametru | Popis | Výchozí |
---|---|---|
number_of_epochs |
Počet epoch trénování. Musí to být kladné celé číslo. |
15 (s výjimkou yolov5 : 30) |
training_batch_size |
Trénovací velikost dávky. Musí to být kladné celé číslo. |
Více tříd/ více popisků: 78 (kromě variant vit-variant: vits16r224 : 128 vitb16r224 : 48 vitl16r224 :10)Detekce objektů: 2 (s výjimkou yolov5 : 16) Segmentace instancí: 2 Poznámka: Výchozí hodnoty jsou největší velikost dávky, kterou lze použít v paměti GPU 12 GiB. |
validation_batch_size |
Velikost dávky ověření. Musí to být kladné celé číslo. |
Více tříd/ více popisků: 78 (kromě variant vit-variant: vits16r224 : 128 vitb16r224 : 48 vitl16r224 :10)Detekce objektů: 1 (s výjimkou yolov5 : 16) Segmentace instancí: 1 Poznámka: Výchozí hodnoty jsou největší velikost dávky, kterou lze použít v paměti GPU 12 GiB. |
grad_accumulation_step |
Akumulace přechodu znamená spuštění nakonfigurovaného počtu grad_accumulation_step bez aktualizace hmotnosti modelu při shromáždění přechodů těchto kroků a následné použití kumulovaných přechodů k výpočtu aktualizací hmotnosti. Musí to být kladné celé číslo. |
0 |
early_stopping |
Povolte logiku předčasného zastavení během trénování. Musí být 0 nebo 1. |
0 |
early_stopping_patience |
Minimální počet epoch nebo vyhodnocení ověření pomocí před zastavením spuštění není žádné zlepšení primární metriky. Musí to být kladné celé číslo. |
5 |
early_stopping_delay |
Minimální počet epoch nebo vyhodnocení ověření, které se mají čekat před počátečním zastavením se sleduje zlepšení primární metriky. Musí to být kladné celé číslo. |
5 |
learning_rate |
Počáteční rychlost učení. Musí to být plovák v rozsahu [0, 1]. |
Více tříd: 0.01 (kromě variant vit-variant: vits16r224 : 0.0125vitb16r224 : 0.0125vitl16r224 : 0.001) Více štítků: 0,035 (kromě variant vit-variant: vits16r224 : 0.025vitb16r224 : 0.025 vitl16r224 : 0.002) Detekce objektů: 0.005 (s výjimkou yolov5 : 0.01) Segmentace instancí: 0.005 |
lr_scheduler |
Typ plánovače rychlosti učení Musí být warmup_cosine nebo step . |
warmup_cosine |
step_lr_gamma |
Hodnota gama při učení plánovače rychlosti je step .Musí to být plovák v rozsahu [0, 1]. |
0.5 |
step_lr_step_size |
Hodnota velikosti kroku při plánování rychlosti učení je step .Musí to být kladné celé číslo. |
5 |
warmup_cosine_lr_cycles |
Hodnota kosinusového cyklu při plánování rychlosti učení je warmup_cosine . Musí to být plovák v rozsahu [0, 1]. |
0,45 |
warmup_cosine_lr_warmup_epochs |
Hodnota epochy warmupu při učení plánovače rychlosti je warmup_cosine . Musí to být kladné celé číslo. |
2 |
optimizer |
Typ optimalizátoru Musí být buď sgd , adam , adamw . |
sgd |
momentum |
Hodnota dynamiky, pokud je sgd optimalizátor . Musí to být plovák v rozsahu [0, 1]. |
0,9 |
weight_decay |
Hodnota hmotnosti se rozpadne, pokud je sgd optimalizátor , adam nebo adamw . Musí to být plovák v rozsahu [0, 1]. |
1e-4 |
nesterov |
Povolte nesterov , pokud je sgd optimalizátor . Musí být 0 nebo 1. |
0 |
beta1 |
beta1 Hodnota, kdy je adam optimalizátor nebo adamw . Musí to být plovák v rozsahu [0, 1]. |
0,9 |
beta2 |
beta2 Hodnota, kdy je adam optimalizátor nebo adamw .Musí to být plovák v rozsahu [0, 1]. |
0,999 |
amsgrad |
Povolte amsgrad , pokud je adam optimalizátor nebo adamw .Musí být 0 nebo 1. |
0 |
evaluation_frequency |
Frekvence vyhodnocení ověřovací datové sady za účelem získání skóre metrik Musí to být kladné celé číslo. |
0 |
checkpoint_frequency |
Frekvence ukládání kontrolních bodů modelu Musí to být kladné celé číslo. |
Kontrolní bod na epochu s nejlepší primární metrikou při ověřování |
checkpoint_run_id |
ID spuštění experimentu s předem natrénovaným kontrolním bodem pro přírůstkové trénování. | bez výchozího nastavení |
checkpoint_dataset_id |
ID FileDataset obsahující předem natrénované kontrolní body pro přírůstkové trénování. Nezapomeňte předat checkpoint_filename spolu s checkpoint_dataset_id . |
bez výchozího nastavení |
checkpoint_filename |
Předem natrénovaný název souboru kontrolního bodu v FileDataset pro přírůstkové trénování. Nezapomeňte předat checkpoint_dataset_id spolu s checkpoint_filename . |
bez výchozího nastavení |
layers_to_freeze |
Kolik vrstev se má u modelu ukotvit. Například předání hodnoty 2 jako hodnoty pro seresnext vrstvu ukotvení vrstvy0 a vrstvy1 odkazující na níže podporované informace o vrstvě modelu. Musí to být kladné celé číslo. '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.'] |
bez výchozího nastavení |
Klasifikace obrázků (více tříd a více popisků) specifických hyperparametrů
Následující tabulka shrnuje hyperparmetry pro úlohy klasifikace obrázků (více tříd a více popisků).
Název parametru | Popis | Výchozí |
---|---|---|
weighted_loss |
0 pro žádnou váženou ztrátu. 1 pro váženou ztrátu sqrtem. (class_weights) 2 pro váženou ztrátu s class_weights. Musí být 0 nebo 1 nebo 2. |
0 |
valid_resize_size |
Poznámky: seresnext nemá libovolnou velikost. |
256 |
valid_crop_size |
Poznámky: seresnext nemá libovolnou velikost. valid_crop_size a train_crop_size . |
224 |
train_crop_size |
Poznámky: seresnext nemá libovolnou velikost. valid_crop_size a train_crop_size . |
224 |
Detekce objektů a segmentace instancí – úlohy specifické pro hyperparametry
Následující hyperparametry jsou určené pro úlohy detekce objektů a segmentace instancí.
Upozorňující
Tyto parametry nejsou podporovány algoritmem yolov5
. Informace o podporovaných hyperparmetrech najdete v části specifické pro yolov5
konkrétní model.
Název parametru | Popis | Výchozí |
---|---|---|
validation_metric_type |
Metoda výpočtů metrik, která se má použít pro ověřovací metriky. Musí být none , coco , voc nebo coco_voc . |
voc |
validation_iou_threshold |
Prahová hodnota IOU pro porovnávání krabic při výpočetních metrikách ověřování Musí být plovoucí v rozsahu [0,1, 1]. |
0.5 |
min_size |
Minimální velikost obrázku, která se má před podáváním do páteřní sítě znovu škálovat. Musí to být kladné celé číslo. Poznámka: Trénovací běh se může dostat do CUDA OOM, pokud je velikost příliš velká. |
600 |
max_size |
Maximální velikost obrázku, která se má znovu škálovat, než ho podáte do páteřní sítě. Musí to být kladné celé číslo. Poznámka: Trénovací běh se může dostat do CUDA OOM, pokud je velikost příliš velká. |
1333 |
box_score_thresh |
Při odvozování vrátí pouze návrhy s vyšším skóre klasifikace než box_score_thresh . Musí to být plovák v rozsahu [0, 1]. |
0.3 |
nms_iou_thresh |
Prahová hodnota IOU (průsečík nad sjednocením) použitá v nevýznamné potlačení (NMS) pro predikční hlavu. Používá se při odvození. Musí to být plovák v rozsahu [0, 1]. |
0.5 |
box_detections_per_img |
Maximální počet detekcí na obrázek pro všechny třídy. Musí to být kladné celé číslo. |
100 |
tile_grid_size |
Velikost mřížky, která se má použít pro provazování jednotlivých obrázků. Poznámka: tile_grid_size nesmí být žádná, aby bylo možné povolit logiku detekce malých objektů. Řazená kolekce dvou celých čísel předaných jako řetězec. Příklad: --tile_grid_size "(3; 2)" |
Bez výchozího nastavení |
tile_overlap_ratio |
Poměr překrytí mezi sousedními dlaždicemi v každé dimenzi Musí být plovoucí v rozsahu [0, 1) |
0.25 |
tile_predictions_nms_thresh |
Prahová hodnota IOU, která se má použít k provádění NMS při slučování předpovědí z dlaždic a obrázků. Používá se při ověřování nebo odvozování. Musí být plovoucí v rozsahu [0, 1] |
0.25 |