Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
ОБЛАСТЬ ПРИМЕНЕНИЯ: расширение машинного обучения Azure CLI версии 2 (текущее)
Исходную схему JSON можно найти по адресу https://azuremlsdk2.blob.core.windows.net/preview/0.0.1/autoMLImageInstanceSegmentationJob.schema.json.
Примечание.
Синтаксис YAML, описанный в этом документе, основан на схеме JSON для последней версии расширения ML CLI (версия 2). Этот синтаксис гарантированно работает только с последней версией расширения ML CLI (версия 2). Схемы для старых версий расширений можно найти по адресу https://azuremlschemasprod.azureedge.net/.
Синтаксис YAML
Сведения обо всех ключах в синтаксисе YAML см . в синтаксисе YAML задачи классификации изображений. Здесь мы описываем только ключи, имеющие разные значения по сравнению с указанными для задачи классификации изображений.
Ключ | Тип | Описание | Допустимые значения | Значение по умолчанию |
---|---|---|---|---|
task |
const | Обязательный. Тип задачи AutoML. | image_instance_segmentation |
image_instance_segmentation |
primary_metric |
строка | Метрика, которую AutoML оптимизирует для выбора модели. | mean_average_precision |
mean_average_precision |
training_parameters |
объект | Словарь, содержащий параметры обучения для задания. Укажите объект, имеющий ключи, как указано в следующих разделах. - Модель конкретных гиперпараметров для maskrcnn_* (если вы используете maskrcnn_* для сегментации экземпляров) - Неустранимые гиперпараметры модели - Определение объектов и сегментация конкретных гиперпараметров задачи сегментации объектов. Пример см . в разделе "Поддерживаемые архитектуры моделей ". |
Замечания
Команду az ml job
можно использовать для управления заданиями Машинного обучения Azure.
Примеры
Примеры доступны в репозитории примеров GitHub. Ниже приведены примеры, относящиеся к заданию сегментации экземпляра изображения.
YAML: задание сегментации экземпляра образа AutoML
$schema: https://azuremlsdk2.blob.core.windows.net/preview/0.0.1/autoMLJob.schema.json
type: automl
experiment_name: dpv2-cli-automl-image-instance-segmentation-experiment
description: An Image Instance segmentation job using fridge items dataset
compute: azureml:gpu-cluster
task: image_instance_segmentation
log_verbosity: debug
primary_metric: mean_average_precision
target_column_name: label
training_data:
# Update the path, if prepare_data.py is using data_path other than "./data"
path: data/training-mltable-folder
type: mltable
validation_data:
# Update the path, if prepare_data.py is using data_path other than "./data"
path: data/validation-mltable-folder
type: mltable
limits:
timeout_minutes: 60
max_trials: 10
max_concurrent_trials: 2
training_parameters:
early_stopping: True
evaluation_frequency: 1
sweep:
sampling_algorithm: random
early_termination:
type: bandit
evaluation_interval: 2
slack_factor: 0.2
delay_evaluation: 6
search_space:
- model_name:
type: choice
values: [maskrcnn_resnet50_fpn]
learning_rate:
type: uniform
min_value: 0.0001
max_value: 0.001
optimizer:
type: choice
values: ['sgd', 'adam', 'adamw']
min_size:
type: choice
values: [600, 800]
YAML: задание конвейера сегментации экземпляра образа AutoML
$schema: https://azuremlschemas.azureedge.net/latest/pipelineJob.schema.json
type: pipeline
description: Pipeline using AutoML Image Instance Segmentation task
display_name: pipeline-with-image-instance-segmentation
experiment_name: pipeline-with-automl
settings:
default_compute: azureml:gpu-cluster
inputs:
image_instance_segmentation_training_data:
type: mltable
# Update the path, if prepare_data.py is using data_path other than "./data"
path: data/training-mltable-folder
image_instance_segmentation_validation_data:
type: mltable
# Update the path, if prepare_data.py is using data_path other than "./data"
path: data/validation-mltable-folder
jobs:
image_instance_segmentation_node:
type: automl
task: image_instance_segmentation
log_verbosity: info
primary_metric: mean_average_precision
limits:
timeout_minutes: 180
max_trials: 10
max_concurrent_trials: 2
target_column_name: label
training_data: ${{parent.inputs.image_instance_segmentation_training_data}}
validation_data: ${{parent.inputs.image_instance_segmentation_validation_data}}
training_parameters:
early_stopping: True
evaluation_frequency: 1
sweep:
sampling_algorithm: random
early_termination:
type: bandit
evaluation_interval: 2
slack_factor: 0.2
delay_evaluation: 6
search_space:
- model_name:
type: choice
values: [maskrcnn_resnet50_fpn]
learning_rate:
type: uniform
min_value: 0.0001
max_value: 0.001
optimizer:
type: choice
values: ['sgd', 'adam', 'adamw']
min_size:
type: choice
values: [600, 800]
# currently need to specify outputs "mlflow_model" explicitly to reference it in following nodes
outputs:
best_model:
type: mlflow_model
register_model_node:
type: command
component: file:./components/component_register_model.yaml
inputs:
model_input_path: ${{parent.jobs.image_instance_segmentation_node.outputs.best_model}}
model_base_name: fridge_items_segmentation_model