SomnoNet is an extremely lightweight yet highly effective deep learning framework for automatic sleep staging.
| Dataset | Overall | F1 score | |||||||
|---|---|---|---|---|---|---|---|---|---|
| OA | MF1 | k | W | N1 | N2 | N3 | R | ||
| Physio2018 | SomnoNet | 80.9 | 79.0 | 0.739 | 84.6 | 59.0 | 85.1 | 80.2 | 86.3 |
| SleePyCo | 80.9 | 78.9 | 0.737 | 84.2 | 59.3 | 85.3 | 79.4 | 86.3 | |
| SomnoNet-nano | 80.5 | 78.6 | 0.734 | 84.0 | 57.8 | 84.8 | 80.2 | 86.2 | |
| XSleepNet | 80.3 | 78.6 | 0.732 | - | - | - | - | - | |
| SeqSleepNet | 79.4 | 77.6 | 0.719 | - | - | - | - | - | |
| U-time | 78.8 | 77.4 | 0.714 | 82.5 | 59.0 | 83.1 | 79.0 | 83.5 | |
| SHHS | SomnoNet | 88.1 | 80.8 | 0.833 | 93.1 | 48.6 | 88.6 | 85.0 | 88.6 |
| SleePyCo | 87.9 | 80.7 | 0.830 | 92.6 | 49.2 | 88.5 | 84.5 | 88.6 | |
| SleepTransformer | 87.7 | 80.1 | 0.828 | 92.2 | 46.1 | 88.3 | 85.2 | 88.6 | |
| XSleepNet | 87.6 | 80.7 | 0.826 | 92.0 | 49.9 | 88.3 | 85.0 | 88.2 | |
| SomnoNet-nano | 87.4 | 79.0 | 0.822 | 92.3 | 43.0 | 88.0 | 83.9 | 87.9 | |
| IITNet | 86.7 | 79.8 | 0.812 | 90.1 | 48.1 | 88.4 | 85.2 | 87.2 | |
| SeqSleepNet | 86.5 | 78.5 | 0.81 | - | - | - | - | - | |
Table1. Benchmarking against recent state-of-the-art methods
Fig1. EEG data with different adoption rates
| Method | parameter |
|---|---|
| SomnoNet-nano | 0.049M |
| SomnoNet | 0.43M |
| SalientSleepNet | 0.9M |
| U-time | 1.1M |
| TinySleepNet | 1.3M |
| SleepEEGNet | 2.1M |
| DeepSleepNet | 21M |
Table2. The number of model parameters for different methods
We additionally provide three interpretability visualization notebooks for understanding the learned features of SomnoNet, along with example data and corresponding models.
To better understand how SomnoNet extracts discriminative features for sleep staging, we provide three visualization Jupyter notebooks:
