XceptionTime: sEMG Gesture Recognition
- XceptionTime is a deep learning architecture for sEMG-based gesture recognition that leverages depthwise separable convolutions, adaptive pooling, and μ-law normalization to extract joint spatial-temporal features.
- The model employs Inception-style modules with parallel kernels and skip-connections to reduce parameters while efficiently capturing diverse features from multichannel sEMG signals.
- It achieves state-of-the-art accuracy on the Ninapro DB1 dataset with a 93.91% test accuracy and a 4.6-fold parameter reduction, ensuring robustness to window length variability and temporal shifts.
XceptionTime is a deep learning architecture specifically designed for hand gesture classification from sparse multichannel surface electromyography (sEMG) signals. The model integrates depthwise separable convolutions, adaptive average pooling, and a novel μ-law non-linear normalization method to jointly extract spatial and temporal features across channels and time, while maintaining robustness to window length variability and temporal translation. XceptionTime sets a new state-of-the-art for sEMG-based gesture recognition with substantially fewer parameters than conventional CNN-based approaches, as demonstrated on the Ninapro DB1 dataset of 52 gestures captured from 10 sEMG channels (Rahimian et al., 2019).
1. Network Architecture and Core Components
XceptionTime processes a windowed data segment of length ms (e.g., 200 ms) from sEMG channels sampled at 100 Hz; thus, the network input is an array of time samples. Its primary building block is the XceptionTime Module, featuring two parallel computation paths designed to efficiently capture feature diversity:
- Path A (Inception-style):
- 1×1 bottleneck convolution reduces channels.
- Three parallel depthwise-separable Conv1D operations with kernel sizes , , , each outputting channels.
- Path B (Skip-connection/Mixer):
- MaxPooling1D (kernel size 3, stride 1).
- 1×1 convolution producing channels.
The four -channel outputs from the three kernels and the pooling path are concatenated, yielding channels.
The full XceptionTime network consists of four stacked modules with intermediate residual connections (1×1 convolution plus BatchNorm) and ReLU activation. The filter sizes in successive modules are . Two Adaptive Average Pooling (AAP) layers ensure model invariance to window length: the first reduces the time dimension to 50, the second collapses it to 1. Final layers consist of three 1×1 convolutional layers (with BatchNorm and ReLU), ultimately producing a 52-dimensional output vector for softmax-based classification.
2. Depthwise Separable Convolutions: Structure and Parameter Efficiency
Standard 1D convolutions with channels and kernel size require parameters. XceptionTime employs depthwise separable convolutions, reducing parameter count as follows:
- Depthwise step: separate -length filters ( parameters).
- Pointwise step: a 1×1 convolution mixes channels ( parameters).
Total parameters per layer: .
With and in XceptionTime:
This structure leads to a total parameter count of approximately 413,516 for the network at ms, a 4.6-fold reduction compared to the 1,918,476 parameters required by an otherwise identical architecture using regular 1D convolutions.
3. Novel μ-Law Non-Linear Normalization
Each sEMG signal sample undergoes a μ-law non-linear normalization prior to convolutional processing. The transformation, with , is defined as:
This normalization stretches small-magnitude signal values (increasing SNR) and compresses large-magnitude values, directly improving model robustness and accuracy, especially for short time windows. Empirically, replacing μ-law with MinMax normalization degrades accuracy by up to 10 percentage points for short input windows.
4. Adaptive Average Pooling and Temporal/Window Robustness
Adaptive Average Pooling (AAP) enables the network to maintain invariance to the input segment length. For an input feature map over time indices , output bins are computed as:
with partitions covering evenly. This process supports:
- Temporal translation invariance: Temporal shifts in input only alter the average content of the corresponding pooled bin.
- Window length independence: Changes in window size require no architectural changes or retraining.
In XceptionTime, AAP first compresses the time axis to 50, enabling window-agnostic processing, and finally reduces it to length 1 for final classification.
5. Training Protocol and Dataset
- Dataset: Ninapro sub-DB1, comprising 27 able-bodied subjects, 52 gesture classes, 10 sEMG channels sampled at 100 Hz.
- Windowing: Input segmented into 200 ms windows via a sliding window with a 10 ms stride.
- Train/Test Split: Repetitions 2, 5, and 7 are reserved for the test set; the remaining seven are used for training.
- Preprocessing: First-order Butterworth low-pass filter at 1 Hz, followed by μ-law normalization.
- Optimization: Adam optimizer with initial learning rate ; the learning rate is halved every 20 epochs using a cyclical schedule.
- Batch size: 32.
- Loss: Categorical cross-entropy.
- Activations: ReLU; BatchNorm after each convolution; residual summations included.
6. Quantitative Evaluation and Comparative Results
XceptionTime achieves an average test accuracy of 93.91% on Ninapro DB1 for the 200 ms window, an absolute improvement of 5.71 percentage points over the prior best (PLOS2018 hybrid CNN-RNN at ~88.20%). Additional results:
| Method | Accuracy (%) | Params (approx.) |
|---|---|---|
| Geng et al. (2016) | 79.45 | — |
| Wei et al. (2017) | 82.53 | — |
| PLOS2018 (Hu et al.) | 92.39 | — |
| Atzori2016 (Conv-only) | 80.20 | — |
| ICASSP2019 (TCN) | 71.81 | — |
| TBE2019 (Multi-view CNN) | 90.24 | — |
| XceptionTime | 93.91 | 413,516 |
| XceptionTime-V2 (no DSConv) | 94.59 | 1,918,476 |
Training XceptionTime on a mix of window lengths ms yields further gains in robustness and generalization. The deployment of μ-law normalization is especially beneficial for shorter windows.
7. Advantages, Limitations, and Prospective Work
Advantages
- Joint spatial and temporal feature extraction from multi-channel sEMG data without manual feature engineering.
- Substantial regularization and overfitting resistance via bottlenecks, depthwise separable convolutions, and BatchNorm, without reliance on large fully connected layers.
- Empirical independence from window length and resilience to temporal signal shifts due to adaptive average pooling.
- Lightweight model (<0.5M parameters), compatible with real-time prosthetic control scenarios.
Limitations and Future Directions
- Validation performed exclusively on sparse sEMG (DB1); applicability to high-density sEMG or cross-subject calibration scenarios remains untested.
- Potential for performance improvement via channel attention mechanisms or dynamic kernel sizing.
- Need for research into online adaptation schemes to address electrode shift and muscle fatigue.
- Planned open-sourcing of training code to facilitate reproducibility and community-driven ablation studies.
XceptionTime combines the efficiency of depthwise separable convolutions, Inception-style multi-kernel modules, and window-agnostic pooling—augmented by μ-law normalization—to advance state-of-the-art sEMG-based gesture recognition (Rahimian et al., 2019).