emlearn
Introduction
emlearn [1] is an open source library for deploying machine learning models on micro-controllers and embedded systems. It provides portable C code generation from models trained with scikit-learn or Keras.
A Python library allows converting complex machine learning models to a minimal C code representation, which enables running ML inference on resource-constrained embedded devices.
emlearn is licensed under the MIT license.
Usage with Zephyr
The emlearn repository is a Zephyr module which provides TinyML capabilities to Zephyr applications, allowing machine learning models to be run directly on Zephyr-powered devices.
To pull in emlearn as a Zephyr module, either add it as a West project in the west.yaml
file or pull it in by adding a submanifest (e.g. zephyr/submanifests/emlearn.yaml
) file
with the following content and run west update
:
manifest:
projects:
- name: emlearn
url: https://github.com/emlearn/emlearn.git
revision: master
path: modules/lib/emlearn # adjust the path as needed
For more detailed instructions and API documentation, refer to the emlearn documentation [2], and in particular the Getting Started on Zephyr RTOS [3] section.