2 Star 0 Fork 0

Messier / pytorch-jacinto-ai-devkit

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

Jacinto-AI-DevKit (PyTorch)

Training & Quantization Tools For Embedded AI Development - in PyTorch.

Notice


Introduction

This code provides a set of low complexity deep learning examples and models for low power embedded systems. Low power embedded systems often requires balancing of complexity and accuracy. This is a tough task and requires significant amount of expertise and experimentation. We call this process complexity optimization. In addition we would like to bridge the gap between Deep Learning training frameworks and real-time embedded inference by providing ready to use examples and enable ease of use. Scripts for training, validation, complexity analysis are also provided.

This code also includes tools for Quantization Aware Training that can output an 8-bit Quantization friendly model - these tools can be used to improve the quantized accuracy and bring it near floating point accuracy. For more details, please refer to the section on Quantization.

Several of these models have been verified to work on TI's Jacinto7 Automotive Processors. These tools and software are primarily intended as examples for learning and research.


Installation Instructions

These instructions are for installation on Ubuntu 18.04.

Install Anaconda with Python 3.7 or higher from https://www.anaconda.com/distribution/

After installation, make sure that your python is indeed Anaconda Python 3.7 or higher by typing:

python --version

Clone this repository into your local folder

Execute the following shell script to install the dependencies:

./setup.sh

Examples

Below are some of the examples are currently available. Click on each of the links above to go into the full description of the example.

Image Classification

Semantic Segmentation

Object Detection - this link will take you to another repository, where we have our object detection training scripts.

Depth Estimation

Motion Segmentation

Multi Task Estimation

Object Keypoint Estimation - coming soon..

Quantization


Model Quantization

Quantization (especially 8-bit Quantization) is important to get best throughput for inference. Quantization can be done using either Post Training Quantization (PTQ) or Quantization Aware Training (QAT).

TI Deep Learning Library (TIDL) that is part of the Processor SDK RTOS for Jacinto7 natively supports PTQ - TIDL can take floating point models and can quantize them using advanced calibration methods.

We have guidelines on how to choose models and how train them to get best accuracy with Quantization. It is unlikely that there will be significant accuracy drop with PTQ if these guidelines are followed. In spite of this, if there are models that have significant accuracy drop with quantization, it is possible to improve the accuracy using QAT. Please read more details in the documentation on Quantization.


Additional Information

Some of the common training and validation commands are provided in shell scripts (.sh files) in the root folder.

Landing Page: https://github.com/TexasInstruments/jacinto-ai-devkit

Actual Git Repositories: https://git.ti.com/jacinto-ai

Each of the repositories listed in the above link have an "about" tab with documentation and a "summary" tab with git clone/pull URLs.


Acknowledgements

Our source code uses parts of the following open source projects. We would like to sincerely thank their authors for making their code bases publicly available.

Module/Functionality Parts of the code borrowed/modified from
Datasets, Models https://github.com/pytorch/vision, https://github.com/ansleliu/LightNet
Training, Validation Engine/Loops https://github.com/pytorch/examples, https://github.com/ClementPinard/FlowNetPytorch
Object Detection https://github.com/open-mmlab/mmdetection

License

Please see the LICENSE file for more information about the license under which this code is made available.

空文件

简介

取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/messier201/pytorch-jacinto-ai-devkit.git
git@gitee.com:messier201/pytorch-jacinto-ai-devkit.git
messier201
pytorch-jacinto-ai-devkit
pytorch-jacinto-ai-devkit
master

搜索帮助