Source-linked AI summary

Edge Impulse: An MLOps Platform for Tiny Machine Learning

Shawn Hymel, Colby Banbury, Daniel Situnayake, Alex Elium, Carl Ward, Mat Kelcey, Mathijs Baaijens, Mateusz Majchrzycki, Jenny Plunkett, David Tischler, Alessandro Grande, Louis Moreau, Dmitry Maslov, Artie Beavis, Jan Jongboom, Vijay Janapa Reddi

arXiv:2212.03332v3cs.DCcs.LGcs.SE

TL;DR

Embedded ML development is constrained by fragmented software stacks, heterogeneous hardware, and demanding resource limits, while existing workflows require substantial specialized expertise. Edge Impulse provides an end-to-end, extensible platform combining data collection, preprocessing, model development, optimization, and portable deployment. The platform has been used at scale across 118,185 projects and 50,953 developers, while remaining dependent on domain expertise and excluding production monitoring and IoT device management.

  • Problem

    Embedded ML workflows require specialized expertise amid fragmented software stacks, heterogeneous hardware, scarce datasets, and difficult cross-stack optimization.

  • Method

    Edge Impulse combines data collection, DSP and deep learning, automated tuning, portable inference libraries, hardware optimizations, and APIs in an end-to-end MLOps platform.

  • Results

    50,953 developers use Edge Impulse across 118,185 projects, with adoption at over 5500 enterprise organizations.

  • Takeaways & Limitations

    Edge Impulse reduces the expertise and computing resources required to participate in TinyML development across industrial, research, and educational applications.

  • Takeaways & Limitations

    Edge Impulse still requires domain expertise and does not cover IoT device management or production monitoring.

Abstract

from arXiv · show

Edge Impulse is a cloud-based machine learning operations (MLOps) platform for developing embedded and edge ML (TinyML) systems that can be deployed to a wide range of hardware targets. Current TinyML workflows are plagued by fragmented software stacks and heterogeneous deployment hardware, making ML model optimizations difficult and unportable. We present Edge Impulse, a practical MLOps platform for developing TinyML systems at scale. Edge Impulse addresses these challenges and streamlines the TinyML design cycle by supporting various software and hardware optimizations to create an extensible and portable software stack for a multitude of embedded systems. As of Oct. 2022, Edge Impulse hosts 118,185 projects from 50,953 developers.

1 INTRODUCTION

Embedded ML development is hindered by fragmented tools, scarce sensor datasets, dependency conflicts, and heterogeneous deployment targets. Edge Impulse addresses these obstacles with an end-to-end platform for data collection, preprocessing, model training, evaluation, and portable deployment.

  • Embedded ML developers must manage specialized tools, conflicting dependencies, and vendor-specific frameworks that limit application flexibility and scalability.
  • The workflow lacks curated sensor datasets, automated DSP tooling, portable deployment across heterogeneous architectures, and unified MLOps or benchmarking support.
  • Edge Impulse simplifies data collection, model training, and deployment through a web interface and API for embedded and edge devices.
  • An extensible C/C++ inference library and target-specific optimizations reduce deployment complexity across diverse embedded devices.
  • Its data collection system supports gathering and storing training and test data alongside model and deployment code.
  • The platform combines preprocessing and deep learning, while the EON Tuner explores user-defined preprocessor and model search spaces.

2 EMBEDDED ECOSYSTEM CHALLENGES

TinyML development must satisfy severe compute, memory, energy, and portability constraints across diverse hardware and unstable software stacks. Cross-stack dependencies, preprocessing choices, and data-management requirements make development time-consuming and difficult to reproduce.

  • TinyML devices have limited computation, memory, and energy, constraining latency, model size, wireless transmission, and application usefulness.
  • TinyML hardware spans microcontrollers, DSPs, accelerators, and neuromorphic processors with incompatible deployment processes, model types, formats, and memory patterns.
  • Software stacks range from Linux and Zephyr to TFLM and bare-metal C++, restricting interoperability of optimizations and tools.
  • Each optimization depends on other stack layers, creating a complex tuning problem with many interconnected choices under stringent constraints.
  • Preprocessing hyperparameters and cross-layer options require domain expertise, lengthen development, and complicate collaboration and reproducibility.
  • Large-scale projects must preserve train, validation, and test splits, metadata, and versioned data, preprocessing, model, and deployment code.

3 OVERVIEW AND DESIGN OBJECTIVES

Edge Impulse combines software-as-a-service, developer tooling, embedded software, and documentation to support embedded ML development at scale. Its design emphasizes accessibility, end-to-end workflows, data-centric iteration, extensibility, teamwork, and community support while retaining a need for domain expertise.

  • Edge Impulse combines software-as-a-service, developer tooling, embedded software, and documentation for embedded ML development at scale.
  • 50,953 developers use Edge Impulse across 118,185 projects, including deployments at over 5500 enterprise organizations.
  • The platform’s principles include accessibility, end-to-end workflows, data-centric development, iterative optimization, extensibility, teamwork, and community support.
  • The platform promotes community participation through users, tools, content, and shared projects.
  • Projects guide users from data gathering and DSP preprocessing through model training, evaluation, and hardware deployment using connected workflow blocks.
  • Edge Impulse does not eliminate the need for domain expertise, stakeholder consultation, responsible solution design, or appropriate evaluation metrics.

4 IMPLEMENTATION

Edge Impulse implements an end-to-end workflow for collecting and inspecting data, configuring DSP, training models, and deploying optimized inference across embedded targets. Visual blocks, automated tuning, transfer learning, and hardware-specific support address usability and resource constraints.

  • The workflow supports data collection, dataset management, feature extraction, model training, evaluation, and deployment through connected project blocks.
  • Users can inspect samples through time-series plots or images and visualize training-test splits and class allocation.
  • 4.2 DSP Pipeline: DSP preprocessing can reduce model size and use FFT-based frequency extraction with O(n ⋅log(n)) complexity instead of 1D convolution requiring O(n2) operations.
  • 4.2 DSP Pipeline: Continuum blocks, visual hyperparameter exploration, and memory-latency estimates help users trade off DSP model size and complexity.
  • 4.2 DSP Pipeline: DSP autotuning and the EON Tuner can automatically select or optimize preprocessing hyperparameters.
  • A visual editor, customizable neural-network blocks, and training optimizations make model development accessible while retaining expert flexibility.
  • Transfer learning supports robust audio keyword spotting when only a relatively small dataset is available.
  • Architecture-specific optimizations such as CMSIS-NN target embedded processors, while K-means supports anomaly detection.

4.4 Estimation and Evaluation

Edge Impulse evaluates model and preprocessing configurations using performance, resource, and deployment-oriented optimization tools. Its EON Compiler further reduces neural-network implementation overhead by generating specialized C++ code.

  • Estimation and evaluation: Edge Impulse estimates inference latency, RAM usage, and flash usage during design-space exploration across preprocessing and model configurations.Renode, device-specific benchmarking, and compilation variants provide early resource estimates.
  • Estimation and evaluation: Evaluation tools report overall or per-class accuracy and F1 scores and support live inference on compatible hardware.These options help users examine trade-offs between model performance, size, and latency.
  • Estimation and evaluation: Performance calibration uses a genetic algorithm to suggest post-processing configurations that trade off false acceptance rate and false rejection rate.The tool accepts user-supplied or synthetic raw data together with a trained model.
  • Optimization: Edge Impulse supports model, code, and device-specific optimizations, including quantization, optimized kernels, and target-specific neural-network formats.Custom processing, learning, and deployment blocks extend the supported optimization space.
  • Compilation: The EON Compiler generates C++ source code that directly calls underlying kernels and allows the linker to remove unused instructions.The paper reports that this reduces RAM and ROM usage for neural-network implementations.

4.6 Conversion and Compilation

Edge Impulse provides multiple deployment paths and a portable inference SDK for microcontrollers, Linux boards, and other targets. Its EON Tuner searches preprocessing and model configurations while accounting for target-device constraints.

  • Conversion and compilation: Edge Impulse deploys optimized DSP preprocessing and trained models through C++, Arduino, Linux, WebAssembly, and precompiled board-specific interfaces.A deployed project includes both preprocessing and the trained model optimized for a selected architecture.
  • Conversion and compilation: The firmware SDK supports on-device data collection and inference through buildable libraries, binaries, and serial-port commands.It provides public inference functions for supported microcontrollers.
  • Conversion and compilation: The SDK selects efficient algorithms and optimizations when available, while falling back to portable C++ across processor architectures.Porting to a new processor requires an allocator for the desired memory pool.
  • Conversion and compilation: The inference SDK also runs on x86 and ARM Linux boards through an EIM native binary exposing interfaces for multiple programming languages.Supported interfaces include Python, Go, C++, and Node.js.
  • AutoML: The EON Tuner searches hyperparameter configurations while accounting for target RAM, ROM, and CPU clock speed, then trains associated models for comparison.Users can choose configurations using accuracy or F1 score and resource estimates.
  • AutoML: The tuner combines random search with a heuristic for rapid configuration estimates, while allowing users to substitute their own search methods.Future work described in the passage includes Bayesian and Hyperband search.
  • AutoML: The EON Tuner selects target hardware, predicts accuracy and DSP/NN resource consumption, and displays searched configurations.The interface organizes hardware constraints, estimates, and candidate DSP/NN combinations in one view.

4.8 Active Learning

Edge Impulse uses active learning to improve embedded sensor datasets and exposes workflow functions through APIs and extensible blocks. The platform scales compute with containerized infrastructure but does not cover device management or production monitoring.

  • Active learning: Active learning trains on a labeled subset, embeds samples, visualizes them in two dimensions, and supports labeling or removal based on class-cluster proximity.The process is intended to accelerate labeling and data cleaning and can improve model performance.
  • Extensibility: Edge Impulse supports most of its workflow but excludes IoT device management and production monitoring.Public REST APIs can automate data collection, model training, and deployment despite this boundary.
  • Extensibility: Users can create Docker-based blocks for data transformation, DSP feature extraction, custom model training, and deployment.The inference SDK also supports model compression and optimization techniques.
  • Extensibility: The Python SDK integrates profiling and deployment features into existing ML development pipelines without requiring the graphical interface.This provides programmatic access to selected platform functions.
  • Infrastructure: Edge Impulse dynamically scales compute with AWS Elastic Kubernetes Service and containerizes workloads to manage dependency versions.Kubernetes is selected to support migration away from a vendor-specific infrastructure tool.

5 PERFORMANCE EVALUATION

The evaluation examines TinyML latency, memory, and flash consumption across heterogeneous hardware, optimization settings, and AutoML configurations. Results emphasize end-to-end DSP–neural-network trade-offs and show how EON Tuner explores resource-constrained designs.

  • Performance evaluation: The evaluation characterizes latency, SRAM, and flash consumption across devices, optimizations, and AutoML configurations.The study targets hardware heterogeneity, software fragmentation, and cross-stack optimization.
  • Experimental setup: Three hardware platforms were selected for differences in clock speed, flash storage, and RAM capacity, using keyword spotting, visual wake words, and image classification tasks.The selected models met at least 78% KWS accuracy and 72% VWW accuracy on their respective evaluation sets.
  • Cross-hardware latency: Table 2 reports preprocessing and inference times in milliseconds for floating-point and 8-bit quantized models across the three platforms.Total time combines preprocessing, inference, and unmeasured call overhead.
  • Cross-hardware latency: On some keyword-spotting tasks, preprocessing time can equal or exceed unoptimized inference time, limiting the latency reduction obtained by optimizing only network inference.Edge Impulse therefore exposes end-to-end task performance rather than isolated network performance.
  • AutoML design exploration: EON Tuner explores MFE and MFCC preprocessing blocks with multiple model architectures while displaying latency, accuracy, RAM, and flash estimates.The user selects among configurations according to deployment constraints because no single configuration is universally ideal.
  • Memory optimization: The EON Compiler and INT8 quantization consistently reduce estimated memory utilization in most cases, while quantization can change model accuracy.The reported memory estimates cover RAM and flash, and preprocessing is unaffected by these optimizations.
  • Cross-stack optimization: EON Tuner configurations balance DSP and neural-network resources, trading slightly higher accuracy and lower latency against lower RAM and flash consumption.The paper presents this search as a way to accelerate exploratory development and make cross-stack optimization accessible to novice developers.

6 ECOSYSTEM ENABLEMENT

Edge Impulse extends embedded ML enablement through accessible interfaces, education, open-source collaboration, and shared projects. Its adoption spans courses, companies, researchers, and community-driven development.

  • Education and Learning: Edge Impulse combines Studio and a web-based API with visualizations that support newcomers building end-to-end embedded ML systems.
  • Education and Learning: Over 30,000 students enrolled in Edge Impulse-based embedded ML courses between February 2021 and October 2022.The TinyML4D workshops using Edge Impulse also had 216 attendees from 48 countries in 2022.
  • Industry and Research Adoption: Edge Impulse is used by companies such as Oura Ring and by academic researchers for domain-focused ML problem solving.The platform simplifies training and deployment, allowing researchers to focus on their domain problems rather than assembling an end-to-end system.
  • Open Source and Community Development: Edge Impulse maintains open-source repositories covering machine learning, device firmware, and sample use cases, enabling community contributions beyond its core team.
  • Open Source and Community Development: Public projects and downloadable libraries allow developers to review, clone, and share applied techniques, supporting dissemination and reproducibility.Organizations also let multiple developers participate in data, modeling, testing, and other project activities.

7 RELATED WORK

Edge Impulse occupies a broader position in TinyML MLOps than platforms focused on cloud-scale workflows, isolated pipeline stages, or narrow hardware targets. It combines collection, preprocessing, training, optimization, deployment, and integration across embedded systems.

  • MLOps Platform Scope: Edge Impulse spans dataset analysis, preprocessing, training, optimization, inference, and integration with other cloud services.This broad coverage distinguishes it from cloud-scale MLOps platforms designed for substantially different environments.
  • Feature Coverage: Edge Impulse spans data collection to deployment, whereas many TinyMLOps frameworks focus on training and compression stages.
  • Feature Coverage: Neuton AI, Latent AI, NanoEdge AI Studio, and Imagimob each omit or constrain parts of data collection, preprocessing, training, API automation, or hardware support.The cited comparisons describe different scope boundaries for each platform.
  • Inference Engines: Edge Impulse’s EON Compiler uses less memory and storage than TensorFlow Lite for Microcontrollers.
  • Inference Engines: Vendor-specific engines limit portability, while TinyEngine and uTVM have production-scale or board-support constraints; these engines can nevertheless integrate with Edge Impulse.

8 INDUSTRY CASE STUDIES

The case studies show Edge Impulse addressing data preparation and deployment constraints in real embedded applications. It supports sensor alignment and model design for sleep tracking, while enabling efficient updates on existing microcontroller hardware for heat-exhaustion detection.

  • Oura Ring: Edge Impulse aligned multiple sensor sources for Oura Ring, simplifying a manual and error-prone data process.Oura’s resulting model used heart rate, motion, and body temperature and achieved 79% correlation accuracy against polysomnography and human scorers.
  • Oura Ring: The Oura case highlights data-centric research needs involving sensor aggregation, correlation visualization, and nontechnical expert participation in data cleaning.
  • SlateSafety: SlateSafety required real-time inference on an existing microcontroller with limited memory because replacing deployed hardware was expensive.
  • SlateSafety: Edge Impulse’s EON Tuner and Compiler automatically designed a custom model and deployed it to SlateSafety’s existing microcontroller through an over-the-air update.This allowed a new feature to reach users without a long development cycle around new hardware.
  • Broader Implications: The cases connect embedded ML adoption to optimization techniques that remain compatible with previously deployed hardware.

9 CONCLUSION

Edge Impulse targets resource-constrained ML through accessibility, data-centric co-optimization, and cross-stack collaboration. Its industrial, research, and educational use provides lessons for future systems research.

  • Edge Impulse reduces the expertise and computing resources required to build ML systems for resource-constrained devices.
  • Deployments across industrial, research, and educational applications provide lessons that can focus future systems research on high-impact problems.
Loading 2212.03332v3…