|
Download README.md from TexasInstruments/MobileNetV3-Classification: direct link, hf CLI and curl.
- Browser
- Download file 6.09 kB
-
https://huggingface.co/TexasInstruments/MobileNetV3-Classification/resolve/main/README.md
- Command line
-
hf download hf://TexasInstruments/MobileNetV3-Classification/README.md
-
curl -L -o README.md https://huggingface.co/TexasInstruments/MobileNetV3-Classification/resolve/main/README.md
6.09 kB
| license: bsd-3-clause | |
| tags: | |
| - vision | |
| - image-classification | |
| - cnn | |
| - mobile | |
| datasets: | |
| - imagenet-1k | |
| <div align="center"> | |
| # MobileNetV3 for TI EdgeAI | |
| ### Efficient Mobile CNN for Image Classification | |
| [](https://opensource.org/licenses/BSD-3-Clause) | |
| [](https://onnx.ai/) | |
| [](https://github.com/TexasInstruments/edgeai) | |
| [](http://www.image-net.org/) | |
| </div> | |
| --- | |
| ## Overview | |
| **MobileNetV3** ([Searching for MobileNetV3](https://arxiv.org/abs/1905.02244), Howard et al., 2019) combines hardware-aware Neural Architecture Search (NAS) with NetAdapt and a redesigned last stage to deliver state-of-the-art accuracy for mobile and edge inference. Key improvements over MobileNetV2 include hard-swish activations, squeeze-and-excitation modules in the bottleneck layers, and an optimized final classifier. | |
| Both variants are evaluated at **224×224** input resolution on **ImageNet-1K** and distributed via [torchvision](https://pytorch.org/vision/stable/models/mobilenetv3.html). | |
| --- | |
| ## Model Variants | |
| | Model | Architecture | Params | GFLOPs | Reference Top-1 Acc | Reference Top-5 Acc | Validated Devices | Config | | |
| |-------|---------------|--------|--------|-----------|-----------|--------------------|--------| | |
| | `mobilenetv3_large` | MobileNetV3-Large | 5.48M | 0.22 | **75.274%** | 92.566% | TDA4VH | [mobilenetv3_large_config.yaml](mobilenetv3_large_config.yaml) | | |
| | `mobilenetv3_small` | MobileNetV3-Small | 2.54M | 0.06 | 67.668% | 87.402% | N/A | N/A | | |
| `mobilenetv3_large` uses `IMAGENET1K_V2` weights (improved training recipe). `mobilenetv3_small` is excluded from `prepare_model.py`'s export catalog because it produces poor accuracy under TIDL compilation — the `mobilenetv3_small.onnx` bundled in this folder is provided for reference only and has no validated TIDL config. | |
| **Recommended for edge deployment:** `mobilenetv3_large` (best accuracy/compute trade-off with a validated TIDL config) | |
| --- | |
| ## Quick Start | |
| ### Prerequisites | |
| ```bash | |
| pip install torch torchvision onnx>=1.14.0 onnxruntime>=1.16.0 | |
| # Optional but recommended for model optimization: | |
| pip install onnx-simplifier | |
| ``` | |
| ### Export the Model | |
| ```bash | |
| # Export the default model (MobileNetV3-Large) | |
| python prepare_model.py | |
| # Export a specific model variant | |
| python prepare_model.py --model mobilenetv3_large | |
| # Export with a custom input resolution | |
| python prepare_model.py --model mobilenetv3_large --shape 224 224 | |
| # List all available variants | |
| python prepare_model.py --list-models | |
| ``` | |
| The script automatically: | |
| - Downloads pretrained ImageNet-1K weights from torchvision (`MobileNet_V3_Large_Weights.IMAGENET1K_V2`) | |
| - Exports to ONNX (opset 17) with a static `[1, 3, 224, 224]` input shape | |
| - Runs ONNX shape inference across all intermediate tensors | |
| - Optionally simplifies the graph with onnxsim (use `--no-simplify` to skip) | |
| > Note: `mobilenetv3_small` is currently excluded from the export catalog (poor accuracy under TIDL compilation), so `--model mobilenetv3_small` and `--model all` only produce `mobilenetv3_large`. | |
| ### Compile and Infer uing edgeai-tidlrunner | |
| > **Note:** Run the commands below from inside the `tidlrunner` directory (the cloned [edgeai-tidlrunner](https://github.com/TexasInstruments/edgeai-tidlrunner) repository), with `--config_path` pointing to this model's config file. | |
| **Compile using edgeai-tidlrunner - on PC** | |
| ```bash | |
| cd /path/to/edgeai-tidlrunner | |
| tidlrunner-cli compile --target_device J784S4 \ | |
| --config_path /path/to/mobilenetv3_large_config.yaml | |
| ``` | |
| **Run Inference Benchmark - on device** | |
| ```bash | |
| cd /path/to/edgeai-tidlrunner | |
| tidlrunner-cli infer --target_device J784S4 \ | |
| --config_path /path/to/mobilenetv3_large_config.yaml | |
| ``` | |
| ### Compile and Infer using edgeai-tidl-tools (Advanced): | |
| Follow the instructions at https://github.com/TexasInstruments/edgeai-tidl-tools | |
| ### Deploy using edgeai-tidl-tools: | |
| Deplyment can be done using **[edgeai-tidl-tools](https://github.com/TexasInstruments/edgeai-tidl-tools)**. For ONNX models, onnxruntime-tidl with TIDL acceleration can be used. Consult the documentation of edgeai-tidl-tools for more details. | |
| --- | |
| ## Citation | |
| If you use these models, please cite: | |
| ```bibtex | |
| @inproceedings{Howard2019MobileNetV3, | |
| title = {Searching for MobileNetV3}, | |
| author = {Howard, Andrew and Sandler, Mark and Chu, Grace and Chen, Liang-Chieh | |
| and Chen, Bo and Tan, Mingxing and Wang, Weijun and Zhu, Yukun | |
| and Pang, Ruoming and Vasudevan, Vijay and Le, Quoc V. and Adam, Hartwig}, | |
| booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)}, | |
| year = {2019} | |
| } | |
| ``` | |
| --- | |
| ## 🔗 Resources | |
| | Resource | Link | | |
| |----------|------| | |
| | **Paper** | [arXiv:1905.02244](https://arxiv.org/abs/1905.02244) | | |
| | **PyTorch Docs** | [torchvision MobileNetV3](https://pytorch.org/vision/stable/models/mobilenetv3.html) | | |
| | **Source Code** | [pytorch/vision](https://github.com/pytorch/vision/blob/main/torchvision/models/mobilenetv3.py) | | |
| | **edgeai-tidl-tools** | [GitHub](https://github.com/TexasInstruments/edgeai-tidl-tools) | | |
| | **edgeai-tidlrunner** | [GitHub](https://github.com/TexasInstruments/edgeai-tidlrunner) | | |
| | **EdgeAI SDK** | [Documentation](https://github.com/TexasInstruments/edgeai/blob/main/edgeai-mpu/readme_sdk.md) | | |
| --- | |
| ## Related Models | |
| <table> | |
| <tr> | |
| <td align="center"> | |
| **ResNet** | |
| Deeper CNN | |
| Higher accuracy | |
| </td> | |
| <td align="center"> | |
| **ConvNeXt** | |
| Modern CNN | |
| ViT-inspired design | |
| </td> | |
| <td align="center"> | |
| **ViT** | |
| Vision Transformer | |
| Attention-based | |
| </td> | |
| <td align="center"> | |
| **DINOv2** | |
| Self-supervised | |
| Rich feature embeddings | |
| </td> | |
| </tr> | |
| </table> | |
| --- | |
| <div align="center"> | |
| **Maintained by:** Texas Instruments EdgeAI Team | |
| **Last Updated:** August 2026 | |
| </div> | |