Phone drop detection in under 22 parameters

Replaced a deep-learning drop detector of millions of parameters with sensor features and a model of under 22, saving over 95% of the power.

  • Sensor and behaviour ML
  • Samsung R&D Institute India
  • Mar 2023 – May 2023
  • Shipped
  • 1 min read
millions → under 22
model parameters
○ reported, from my account
95%+
power saved
○ reported, from my account
97% → 95.2%
accuracy before and after
○ reported, from my account
0g1g2g3g4g5g6gabout 1 gnear 0 gfree fall t = 0.45 s → h = g·t²/2 ≈ 1.0 mimpacthard surfacethis dropsoft bedother surfacehandin the aircaught gentlyno impact spike: not a dropfall timeringingsettlingpeakmotionsensors onlymodel sizedeep network: millionsthis model: under 22not to scalepowerbeforeafter: 95%+ lessaccuracy97% → 95.2%

1 of 6At rest

A phone at rest reads about 1 g, from gravity alone.

6 steps · 40 s
Illustration drawn by code, not a recording: the fall time follows from the physics of a 1 m fall; the impact, surface and toss shapes are drawn to show the idea.

Detects a drop, estimates how far the phone fell, and sorts the surface into a hard surface, a soft bed or another surface. It also tells a real drop from a phone tossed in the air and caught. The deep-learning model it replaced was accurate but heavy; features from the motion sensors alone and a small statistical model did the job and saved over 95% of the power, at a small cost in accuracy (97% to 95.2%).

Problem

A drop detector has to listen to the motion sensors all the time, so every bit of compute costs battery. The existing model had millions of parameters.

Approach

  • Use the physics. A falling phone reads close to zero g until it hits something; how long that lasts gives the height, and the impact says how hard the surface was.
  • Engineer the features. Sensor fusion turns the motion signals, and nothing else, into a handful of features that carry those facts.
  • Not every fall is a drop. A phone tossed in the air and caught is in free fall too, but a catch slows it gently, with no impact spike, so it is not counted.
  • Keep the model tiny. Small statistical models on those features, under 22 parameters in all.

Results

From millions of parameters to under 22, saving over 95% of the power. Accuracy went from 97% to 95.2%: under two points traded for a model small enough to run all the time.

More in sensor and behaviour ml