Skip to content
View MLatE2dge's full-sized avatar
Block or Report

Block or report MLatE2dge

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
MLatE2dge/README.md

๐Ÿ”ฌ Machine Learning at the Extreme Edge - ML@E2dge

MLatE2dge, This image was created with the assistance of DALLยทE 2.

Today's trend is real-time and energy-efficient information extraction and processing at the edge using Artificial Intelligence. However, a recent trend exists to implement machine learning on devices located on the extreme edge, i.e. the border between the analog (physical) and digital world. These devices consist of one or more sensors and a resource-constrained embedded device, i.e. a device with limited memory, computing power, and power consumption. The challenge is the development of accurate, energy-efficient machine learning models for deployment on these resource-constrained devices. The project ๐Ÿ”— Machine Learning @ the Extreme Edge examines how to apply embedded machine learning to develop accurate, energy-efficient models for intelligent devices.

โš™๏ธ Embedded Machine Learning Pipeline

Pipeline

โœ๏ธ Note. During the project's timeframe, retraining was performed using Edge Impulse Studio. In future implementations it is recommended to use the Edge Impulse Profiling and Deploy ๐Ÿ”— Edge Impulse Python SDK (released April 4 2023 Unveiling BYOM and the Edge Impulse Python SDK) combined with ๐Ÿ”— Weights & Biases AI developer platform. Some Python scripts can be found in ๐Ÿ”— ./ei/profiling-deploy. These scripts can be used as a starting point for the integration into the embedded machine learning pipeline.

Link to the Python code: ๐Ÿ”— mlate2dge (MIT License)

๐Ÿ’ป Environment

The development was performed on a 64-bit Intelยฎ Coreโ„ข i9-10900K CPU (20 cores), 3.70 GHz, 128 GB RAM, and an NVIDIA GeForce RTX3080 GPU type.

Prerequisite

๐Ÿ”— Edge Impulse Studio
๐Ÿ”— Weights & Biases platform

Create the environment using ๐Ÿ”— conda.

$ conda env create -f conda.yaml

Recommended

๐Ÿ”— Visual Studio Code
๐Ÿ”— Ubuntu 20.04.5 LTS (Focal Fossa).

References

๐Ÿ› ๏ธ Tools

๐Ÿ”— Edge Impulse
๐Ÿ”— Weights & Biases
๐Ÿ”— scikit-learn
๐Ÿ”— TensorFlow
๐Ÿ”— Keras
๐Ÿ”— pandas
๐Ÿ”— pingouin
๐Ÿ”— matplotlib
๐Ÿ”— bokeh

๐Ÿ“š Books

๐Ÿ”— AI at the Edge
๐Ÿ”— Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow
๐Ÿ”— Deep Learning with Python
๐Ÿ”— An Introduction to Statistical Learning

๐ŸŽ“ Open Education

๐Ÿ”— Tiny Machine Learning Open Education Initiative (TinyMLedu)


๐Ÿ”— Machine Learning @ the Extreme Edge is a project supported by the Karel de Grote University of Applied Sciences and Arts through funding by the Flemish government specifically allocated to practice-based research at universities of applied sciences. ๐Ÿ“† Project duration: 1 December 2021 until 31 August 2023 (14 person-month).

Last page update: 30 August 2023

Popular repositories

  1. TRIPOD TRIPOD Public

    Forked from HPI-CH/TRIPOD

    Gait analysis data pipeline for publication "TRIPODโ€”A Treadmill Walking Dataset with IMU, Pressure-Distribution and Photoelectric Data for Gait Analysis".

    Python 1

  2. mlate2dge.github.io mlate2dge.github.io Public

    Project website

    1

  3. mlate2dge mlate2dge Public

    Machine Learning at the Extreme Edge

    Python 1