Auto-configuration ================== Auto-configuration for a deep learning framework means the automatic finding of the most appropriate settings for the training parameters, based on the dataset and the specific task at hand. Auto-configuration can help to save time, it eases the process of interaction with OpenVINO™ Training Extensions CLI and gives a better baseline for the given dataset. At this end, we developed a simple auto-configuration functionality to ease the process of training and validation utilizing our framework. Basically, to start the training and obtain a good baseline with the best trade-off between accuracy and speed we need to pass only a dataset in the right format without specifying anything else: .. code-block:: $ otx train --train-data-roots .. note:: OpenVINO™ Training Extensions supports also ``otx build`` mode with the auto-configuration feature. We can build OpenVINO™ Training Extensions workspace with the following CLI command: .. code-block:: $ otx build --train-data-roots Moreover, our dataset can have no train/val splits at all. The Datumaro manager integrated into OpenVINO™ Training Extensions will handle it on its own. It will recognize the task by analyzing the dataset and if there is no splits for the validation - Datumaro will do a random auto-split, saving this split to the workspace. It could be used with ``otx optimize`` or ``otx train``. .. note:: Currently, Datumaro auto-split feature supports 3 formats: `Imagenet `_ (multi-class classification), `COCO `_ (detection) and `Cityscapes `_ (semantic segmentation). After dataset preparation, the training will be started with the middle-sized template to achieve competitive accuracy preserving fast inference. Supported dataset formats for each task: - classification: `Imagenet `_, `COCO `_ (multi-label), :ref:`custom hierarchical ` - object detection: `COCO `_, `Pascal-VOC `_, `YOLO `_ - semantic segmentation: `Common Semantic Segmentation `_, `Pascal-VOC `_, `Cityscapes `_, `ADE20k `_ - action classification: `CVAT `_ - action detection: `CVAT `_ - anomaly classification: `MVTec `_ - anomaly detection: `MVTec `_ - anomaly segmentation: `MVTec `_ - instance segmentation: `COCO `_, `Pascal-VOC `_ If we have a dataset format occluded with other tasks, for example ``COCO`` format, we should directly emphasize the task type and use ``otx build`` first with an additional CLI option. If not, OpenVINO™ Training Extensions automatically chooses the task type that you might not intend: .. code-block:: $ otx build --train-data-roots --task {CLASSIFICATION, DETECTION, SEGMENTATION, ACTION_CLASSIFICATION, ACTION_DETECTION, ANOMALY_CLASSIFICATION, ANOMALY_DETECTION, ANOMALY_SEGMENTATION, INSTANCE_SEGMENTATION} It will create a task-specific workspace folder with configured template and auto dataset split if supported. Move to this folder and simply run without any options to start training: .. code-block:: $ otx train