Qualia toolchain Core
Project description
Qualia Core (formerly MicroAI)
End-to-end training, quantization and deployment framework for deep neural networks on microcontrollers.
Repository should be cloned with --recursive
to get TFLite Micro and its dependencies.
Dependencies
Python:
numpy
scikit-learn
tomlkit
colorful
gitpython
Dataset
GTSRB
Python:
imageio
scikit-image
Training
TensorFlow
Python:
tensorflow
tensorflow_addons
PyTorch
Python:
pytorch
pytorch_lightning
Deployment
Embedded targets
SparkFun Edge
Python:
pycryptodome
Nucleo-L452RE-P
System:
stm32cubeide
stm32cubeprog
Embedded frameworks
STM32Cube.AI
STM32CubeIDE extension pack:
X-CUBE-AI == 5.2.0
TensorFlow Lite Micro
System:
arm-none-eabi-binutils
arm-none-eabi-gcc
arm-none-eabi-newlib
libopenexr-dev
wget
Qualia-CodeGen
Python:
jinja2
System:
arm-none-eabi-binutils
arm-none-eabi-gcc
arm-none-eabi-newlib
Evaluation
Python:
pyserial
Usage
If Qualia installed with pip, you can run the qualia
command directly. Otherwise run PYTHONPATH=. ./bin/qualia <config.toml> <action>
from the qualia directory.
Dataset pre-processing
qualia <config.toml> preprocess_data
Training
qualia <config.toml> train
Prepare deployment (generate firmware)
qualia <config.toml> prepare_deploy
Deploy and evaluate
qualia <config.toml> deploy_and_evaluate
Run test suite
CUBLAS_WORKSPACE_CONFIG=:4096:8 PYTHONHASHSEED=2 python -m unittest discover qualia/tests
Included support for datasets, learning framework, neural networks, embedded frameworks and targets
Datasets
Learning frameworks
- TensorFlow.Keras
- PyTorch
Neural networks
- MLP
- CNN (1D&2D)
- Resnetv1 (1D&2D)
Embedded frameworks
- STM32Cube.AI
- TensorFlow Lite for Microcontrollers
- Qualia-CodeGen
Targets
- Nucleo-L452RE-P
- SparkFun Edge
Reference & Citation
Quantization and Deployment of Deep Neural Networks on Microcontrollers, Pierre-Emmanuel Novac, Ghouthi Boukli Hacene, Alain Pegatoquet, Benoît Miramond and Vincent Gripon, Sensors, 2021.
@article{qualia,
author = {Novac, Pierre-Emmanuel and Boukli Hacene, Ghouthi and Pegatoquet, Alain and Miramond, Benoît and Gripon, Vincent},
title = {Quantization and Deployment of Deep Neural Networks on Microcontrollers},
journal = {Sensors},
volume = {21},
year = {2021},
number = {9},
article-number = {2984},
url = {https://www.mdpi.com/1424-8220/21/9/2984},
issn = {1424-8220},
doi = {10.3390/s21092984}
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file qualia_core-2.3.0.tar.gz
.
File metadata
- Download URL: qualia_core-2.3.0.tar.gz
- Upload date:
- Size: 5.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.16.1 CPython/3.12.4 Linux/6.9.8-arch1-1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5872ea3dd1f429a175d824cd6d8ce04a2c61ac89b972c0baf814857d226915ab |
|
MD5 | 76fc02978cf914bceac1877dab361822 |
|
BLAKE2b-256 | 834f1ae263912fe2fad044853f14644dbd5e3dde244a11319113bf7081beb253 |
File details
Details for the file qualia_core-2.3.0-py3-none-any.whl
.
File metadata
- Download URL: qualia_core-2.3.0-py3-none-any.whl
- Upload date:
- Size: 9.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.16.1 CPython/3.12.4 Linux/6.9.8-arch1-1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c98384964d5ede2840f0a1fbbb4605e45321ff00ccda0778b30ed371e9d09750 |
|
MD5 | 1f024e028949c5333c89b50e05d20a39 |
|
BLAKE2b-256 | cdd1e473590bcb0769d5a00f8abaf38a3a031952b2ec21f6608efaa8840e6a9a |