Train Adapt Optimize (TAO) Toolkit is a python based AI toolkit for taking purpose-built pre-trained AI models and customizing them with your own data. TAO adapts popular network architectures and backbones to your data, allowing you to train, fine tune, prune and export highly optimized and accurate AI models for edge deployment.
The pre-trained models accelerate the AI training process and reduce costs associated with large scale data collection, labeling, and training models from scratch. Transfer learning with pre-trained models can be used for AI applications in smart cities, retail, healthcare, industrial inspection and more.
Build end-to-end services and solutions for transforming pixels and sensor data to actionable insights using TAO, DeepStream SDK and TensorRT. The models are suitable for object detection and classification.
Image Classification is a popular computer vision technique in which an image is classified into one of the designated classes based on the image features. This model card contains pretrained weights of most of the popular classification models. These weights that may be used as a starting point with the classification app in Train Adapt Optimize (TAO) Toolkit to facilitate transfer learning.
It is trained on a subset of the Google OpenImages dataset. Following backbones are supported with these detection networks.
To see the full list of all the backbones, scroll over to the version history tab.
Note: These are unpruned models with just the feature extractor weights, and may not be used without retraining to deploy in a classification application.
Note: Please make sure to set the
all_projections field to
False in the spec file when training a
ResNet101 model. For more information about this parameter please refer to the TAO Getting Started Guide.
To learn more about object detection using YOLOV3, YOLOV4, FasterRCNN, SSD, DSSD, and RetinaNet, click here
To learn more about object detection using DetectNet_v2, click here
To learn more about instance segmentation using MaskRCNN, click here
The image classification apps in TAO expect data in KITTI file format. TAO provides a simple command line interface to train a deep learning model for image classification.
The models in this model area are only compatible with TAO Toolkit. For more information about TAO please refer to the Getting Started Guide.
Install the NGC CLI from
Configure the NGC CLI using the following command
ngc config set
ngc registry model list nvidia/tao_pretrained_classification:*
ngc registry model download-version nvidia/tao_pretrained_classification:<template> --dest <path>
Get the NGC API key from the SETUP tab on the left. Please store this key for future use. Detailed instructions can be found here
Configure the NGC command line interface using the command mentioned below and follow the prompts.
ngc config set
ngc registry resource download-version "nvidia/tao_cv_samples:v1.0.2"
jupyter notebook --ip 0.0.0.0 --port 8888 --allow-root
If you wish to run view the notebook from a remote client, please modify the URL as follows:
a.b.c.d is the IP address of the machine running the container.
Get TAO Object Detection pre-trained models for YOLOV4, YOLOV3, FasterRCNN, SSD, DSSD, and RetinaNet architectures from NGC model registry
Get TAO DetectNet_v2 Object Detection pre-trained models for DetectNet_v2 architecture from NGC model registry
Get TAO EfficientDet Object Detection pre-trained models for DetectNet_v2 architecture from NGC model registry
Get TAO Instance segmentation pre-trained models for MaskRCNN architecture from NGC
Get TAO Semantic segmentation pre-trained models for UNet architecture from NGC
Get Purpose-built models from NGC model registry:
This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, please visit this link, or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
NVIDIA’s platforms and application frameworks enable developers to build a wide array of AI applications. Consider potential algorithmic bias when choosing or creating the models being deployed. Work with the model’s developer to ensure that it meets the requirements for the relevant industry and use case; that the necessary instruction and documentation are provided to understand error rates, confidence intervals, and results; and that the model is being used under the conditions and in the manner intended.