← all repositories
microsoft/EdgeML

Microsoft shrinks ML models until they fit inside a lightbulb

A research library for training neural networks so tiny they can run offline on kilobyte-class IoT sensors.

EdgeML
Velocity · 7d
+0.5
★ / day
Trend
steady
star history

What it does

EdgeML is a collection of training algorithms and inference runtimes from Microsoft Research India designed to squeeze machine learning onto severely resource-constrained devices. The goal is models that occupy mere kilobytes, run with low latency, and consume minimal energy — no cloud connection required. It ships with TensorFlow and PyTorch implementations, plus C and C++ inference code that can be further quantized to fixed-point arithmetic.

The interesting bit

The library doesn’t just optimize existing architectures; it grows its own. Bonsai is a shallow tree-based classifier, ProtoNN is a prototype k-NN method, and FastGRNN is literally named after what it does: Fast, Accurate, Stable and Tiny Gated RNN cells. There’s even SeeDot, a dedicated compiler that converts floating-point models to fixed-point for microcontrollers that lack an FPU.

Key highlights

  • Bonsai and ProtoNN: custom classifiers designed from scratch for tiny footprints
  • FastRNN / FastGRNN: RNN cells engineered for size and stability, not just accuracy
  • EMI-RNN: extracts critical signatures from time-series so RNNs can stop early
  • SeeDot: floating-point to fixed-point quantization tool with its own PLDI ‘19 paper
  • GesturePod: a working gesture-recognition pipeline for actual microcontrollers
  • Dual TensorFlow and PyTorch packages with matching C reference implementations

Caveats

  • The README notes v0.4 and points to ELL for optimized ONNX binaries, suggesting this library stops at the “research code” stage for some deployment paths
  • Several algorithms (Bonsai, ProtoNN) have C++ training code; others appear to be Python-only for training with C inference

Verdict

Worth a look if you’re building ML for actual sensors and need to prove it can run without a cloud umbilical cord. Skip if your “edge” is a Raspberry Pi with a GPU — this is for the truly silicon-starved.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.