quantization_example - RandomSampler is used when epoch_size!=0. epoch_size=0.1 means...
[jacinto-ai/pytorch-jacinto-ai-devkit.git] / README.md
1 # Jacinto-AI-DevKit (PyTorch)
3 ###### Notice: 
4 - If you have not visited our landing page in github, please do so: [https://github.com/TexasInstruments/jacinto-ai-devkit](https://github.com/TexasInstruments/jacinto-ai-devkit)
5 - **Issue Tracker for jacinto-ai-devkit:** You can file issues or ask questions at **e2e**: [https://e2e.ti.com/support/processors/f/791/tags/jacinto_2D00_ai_2D00_devkit](https://e2e.ti.com/support/processors/f/791/tags/jacinto_2D00_ai_2D00_devkit). While creating a new issue kindly include **jacinto-ai-devkit** in the tags (as you create a new issue, there is a space to enter tags, at the bottom of the page). 
6 - **Issue Tracker for TIDL:** [https://e2e.ti.com/support/processors/f/791/tags/TIDL](https://e2e.ti.com/support/processors/f/791/tags/TIDL). Please include the tag **TIDL** (as you create a new issue, there is a space to enter tags, at the bottom of the page). 
7 - If you do not get a reply within two days, please contact us at: jacinto-ai-devkit@list.ti.com
9 ### Deep Learning Models / Training / Calibration & Quantization - Using PyTorch<br>
10 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. 
12 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](docs/Quantization.md).
14 **Several of these models have been verified to work on [TI's Jacinto7 Automotive Processors](http://www.ti.com/processors/automotive-processors/tdax-adas-socs/overview.html).** These tools and software are primarily intended as examples for learning and research.
16 ## Installation Instructions
17 - These instructions are for installation on **Ubuntu 18.04**. 
18 - Install Anaconda with Python 3.7 or higher from https://www.anaconda.com/distribution/ <br>
19 - After installation, make sure that your python is indeed Anaconda Python 3.7 or higher by typing:<br>
20     ```
21     python --version
22     ```
23 - Clone this repository into your local folder
24 - Execute the following shell script to install the dependencies:<br>
25     ```
26     ./setup.sh
27     ```
29 ## Examples
30 - [**Image Classification**](docs/Image_Classification.md)<br>
31 - [**Semantic Segmentation**](docs/Semantic_Segmentation.md)<br>
32 - [Depth Estimation](docs/Depth_Estimation.md)<br>
33 - [Motion Segmentation](docs/Motion_Segmentation.md)<br>
34 - [**Multi Task Estimation**](docs/Multi_Task_Learning.md)<br>
35 - Object Detection - coming soon..<br>
36 - Object Keypoint Estimation - coming soon..<br>
37 - [**Quantization Aware Training**](docs/Quantization.md)<br>
39 Above are some of the examples are currently available. Click on each of the links above to go into the full description of the example.
43 ## Additional Information
44 - Some of the common training and validation commands are provided in shell scripts (.sh files) in the root folder.<br>
45 - Landing Page: [https://github.com/TexasInstruments/jacinto-ai-devkit](https://github.com/TexasInstruments/jacinto-ai-devkit)<br>
46 - Actual Git Repositories: [https://git.ti.com/jacinto-ai-devkit](https://git.ti.com/jacinto-ai-devkit)<br>
48 ## Acknowledgements
50 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.
52 |Module/Functionality              |Parts of the code borrowed/modified from                                             |
53 |----------------------------------|-------------------------------------------------------------------------------------|
54 |Datasets, Models                  |https://github.com/pytorch/vision, https://github.com/ansleliu/LightNet              |
55 |Training, Validation Engine/Loops |https://github.com/pytorch/examples, https://github.com/ClementPinard/FlowNetPytorch |
56 |Object Detection                  |https://github.com/open-mmlab/mmdetection                                            |
58 ## License
60 Please see the [LICENSE](./LICENSE) file for more information about the license under which this code is made available.