How Dreem algorithm works

Every 30 seconds, Dreem's machine learning algorithms determine what sleep stage you are in. The sum of these stages of sleep over a full night is the hypnogram that you discover each morning on your app.

Extraction of data

100 values ​​are extracted every 30 seconds from the different sensors of the Dreem headband (electroencephalogram, accelerometer, pulse oximeter). Among these values:
  • the number of movements
  • slow oscillations
  • sleep spindles (or spindles), small bursts of fast rhythms, whose amplitude increases and decreases
  • K complexes, characteristic waves of the transition from light sleep to deep sleep
  • heartbeat
  • etc.

Prediction of the sleep phase

To more accurately define your sleep phase, the algorithm compares the 30-second ranges with a base of several hundred "scored" records by sleep specialists.
In order to put each 30-second range in context, we use the long short term memory (LSTM) model, which takes into account the history of the 20 preceding 30-second tracks analyzed in order to analyze the current range. The model will consider for example the fact that you have been in deep sleep for a few minutes to analyze the current range.
Please note:
  • The classification of the sleep stages is not an exact science, but an interpretation, usually done by experts and here made by our algorithm which improves continuously.(improvement of the extracted values, complexity of the LSTM model, etc.). 
  • The number of nights "scored" by sleep specialists is growing continuously, resulting in a more precise detection of sleep stages.
  • The quality of the measured signal directly impacts the quality of the estimation of the extracted values, and thus the prediction of the sleep stage. Learn more about improving signal quality.
Was this article helpful?
4 out of 5 found this helpful