.. raw:: html
Logo
Introduction ============ **OpenVINO™ Training Extensions** is a low-code transfer learning framework for Computer Vision. The framework's CLI commands and API allow users to easily train, infer, optimize and export models, even with limited deep learning expertise. OpenVINO™ Training Extensions offers diverse combinations of model architectures, learning methods, and task types based on `PyTorch `_ , `Lightning `_ and `OpenVINO™ toolkit `_. OpenVINO™ Training Extensions provide `recipe `_ for every supported task type, which consolidates necessary information to build a model. Model configs are validated on various datasets and serve one-stop shop for obtaining the best models in general. The development team is continuously expanding functionality to simplify the training process — aiming for a workflow where a single CLI command or a short API call is enough to produce accurate, efficient, and robust models ready for integration into your project. Starting with OTX v2.4.5, we introduced a new repository structure and a more flexible backend concept. We're excited to present support for multiple backends — beginning with the OpenVINO™ backend, while all previous OTX functionality is now organized under the "native" backend. In the future, we plan to integrate popular third-party libraries such as `Anomalib _`, `Transformers _`, and more — seamlessly integrated into the repository. This will enable users to train, test, export, and optimize a wide variety of models from different backends using the same CLI commands and unified API, without the need for reimplementation. | .. figure:: ../../../utils/images/diagram_otx.png :align: center :width: 100% | ************ Key Features ************ OpenVINO™ Training Extensions supports the following computer vision tasks: - **Classification**, including multi-class, multi-label and hierarchical image classification tasks. - **Object detection** including rotated bounding box and tiling support - **Semantic segmentation** including tiling algorithm support - **Instance segmentation** including tiling algorithm support - **Anomaly recognition** tasks including anomaly classification, detection and segmentation OpenVINO™ Training Extensions provide the :doc:`following features <../explanation/additional_features/index>`: - Native **Intel GPUs (XPU) support**. OpenVINO™ Training Extensions can be installed with XPU support to utilize Intel GPUs for training and testing. - **Distributed training** to accelerate the training process when using multiple GPUs. - **Half-precision (FP16) training** to reduce GPU memory usage and allow for larger batch sizes. - **Class-incremental learning** to add new classes to an existing model without retraining from scratch. - OpenVINO™ Training Extensions use `Datumaro `_ as the backend for dataset handling. This allows support for many common academic dataset formats per task. More formats will be supported in the future, providing additional flexibility. - **Multiple backend support** to easily adapt models from third-party implementations into the OpenVINO™ Training Extensions repository. ********************* Documentation content ********************* 1. :octicon:`light-bulb` **Quick start guide**: .. grid:: :gutter: 1 .. grid-item-card:: :octicon:`package` Installation Guide :link: installation :link-type: doc :text-align: center Learn more about how to install OpenVINO™ Training Extensions .. grid-item-card:: :octicon:`code-square` API Quick-Guide :link: api_tutorial :link-type: doc :text-align: center Learn more about how to use OpenVINO™ Training Extensions Python API. .. grid-item-card:: :octicon:`terminal` CLI Guide :link: cli_commands :link-type: doc :text-align: center Learn more about how to use OpenVINO™ Training Extensions CLI commands 2. :octicon:`book` **Tutorials**: .. grid:: 1 2 2 3 :margin: 1 1 0 0 :gutter: 1 .. grid-item-card:: Classification :link: ../tutorials/base/how_to_train/classification :link-type: doc :text-align: center Learn how to train a classification model .. grid-item-card:: Detection :link: ../tutorials/base/how_to_train/detection :link-type: doc :text-align: center Learn how to train a detection model. .. grid-item-card:: Instance Segmentation :link: ../tutorials/base/how_to_train/instance_segmentation :link-type: doc :text-align: center Learn how to train an instance segmentation model .. grid-item-card:: Semantic Segmentation :link: ../tutorials/base/how_to_train/semantic_segmentation :link-type: doc :text-align: center Learn how to train a semantic segmentation model .. grid-item-card:: Anomaly Task :link: ../tutorials/base/how_to_train/anomaly_detection :link-type: doc :text-align: center Learn how to train an anomaly detection model .. grid-item-card:: Advanced :link: ../tutorials/advanced/index :link-type: doc :text-align: center Learn how to use advanced features of OpenVINO™ Training Extensions 3. **Explanation section**: This section consists of an algorithms explanation and describes additional features that are supported by OpenVINO™ Training Extensions. :ref:`Algorithms ` section includes a description of all supported algorithms: 1. Explanation of the task and main supervised training pipeline. 2. Description of the supported datasets formats for each task. 3. Available recipes and models. :ref:`Additional Features ` section consists of: 1. Overview of model optimization algorithms. 2. Auto-configuration algorithm to select the most appropriate training pipeline for a given dataset. 3. Tiling algorithm to detect small objects in large images. 4. explainable AI algorithms to visualize the model's decision-making process. 5. Additional useful features like configurable input size, class incremental learning, and adaptive training. 4. **Reference**: This section gives an overview of the OpenVINO™ Training Extensions code base, where source code for Entities, classes and functions can be found. 5. **Release Notes**: This section contains descriptions of current and previous releases.