传统机器学习采用"原始信号 → 手工特征提取 → 模型训练 → 测试"的流程,每个环节均依赖领域先验知识。尽管深度学习已成为主流,传统方法在数据量有限、计算资源受限或可解释性要求高的场景中仍具有不可替代的价值。
数据预处理
原始传感信号在进入特征提取前,需经过以下预处理步骤:
- 滤波:人体 sEMG 信号的有效频谱通常为 20–500 Hz,需级联带通滤波器和陷波滤波器(50/60 Hz 工频干扰)去除噪声。
- 归一化:归一化处理旨在将不同传感器(如肌电与惯性传感器)的原始数值映射至统一的无量纲尺度,消除量纲差异带来的权重偏倚,并加快基于梯度下降等优化算法的模型收敛速度。最小-最大归一化(Min-Max)将特征映射至 [0,1] 或 [−1,1] 区间;Z-score 归一化将特征转换为均值为 0、标准差为 1 的标准正态分布,增强模型对异常值的鲁棒性。
- 窗口分割:将连续时序数据流切片为基本分析单元(Epoch)。为满足实时系统的连续解码需求,通常采用滑动窗口(Sliding Window)策略,窗口长度一般为 100–300 ms,步长为 10–50 ms。窗口长度越短,系统延迟越低,但每窗口可用的信号信息量也越少;步长越小,输出更新越频繁,但计算开销也随之增加。
特征提取
特征设计高度依赖领域先验知识,通常涵盖时域、频域或时频域融合特征,可分为三大类:
- 统计特征:均值(Mean)、标准差(Standard Deviation)、峰度(Kurtosis)等,计算高效。
- 结构参数特征:自回归(AR)模型的线性拟合斜率和截距,反映信号内在规律。
- 任务特异性特征(Heuristic Features):针对 sEMG 信号的过零点数(Zero Crossing)、波形长度(Waveform Length)、斜率符号变化数(Slope Sign Change)等。
常用特征选择策略包括过滤法(Filter)、包裹法(Wrapper)和嵌入法(Embedded)。特征维度过高会引发"维度灾难",导致模型在小样本数据集上过拟合,因此特征选择与降维(如 PCA)是传统流程中不可忽视的环节。
分类模型
主流分类算法包括:
- 线性判别分析(LDA):计算简单、实时性好,是 sEMG 手势识别的经典基线方法,推理延迟可低至毫秒级,适合假肢控制等实时场景。
- 支持向量机(SVM):在小样本场景下泛化能力强,适合高维特征空间。
- 随机森林(RF):集成学习方法,对噪声鲁棒,可输出特征重要性。
- 隐马尔可夫模型(HMM):天然适合建模时序状态转移,广泛用于动态手势识别。
- K 近邻(KNN)、朴素贝叶斯(NB)、决策树(DT)、多层感知器(MLP)等亦有广泛应用。
回归模型
用于连续参数估计(如手指弯曲角度)的常用回归模型:多元线性回归(MLR)、高斯过程回归(GPR)、支持向量回归(SVR)、随机森林回归(RFR)及各类人工神经网络(ANN)。
动态手势:动态时间规整(DTW)
动态时间规整(Dynamic Time Warping, DTW)通过动态规划寻找两个时间序列之间的最佳非线性对齐路径,能有效处理手势执行速度不一致的问题,是动态手势模板匹配的经典方法。DTW 的时间复杂度为 O(n²),可通过 Sakoe-Chiba 约束带或 Itakura 平行四边形等约束策略降低计算量。DTW 在小样本场景下尤为有效——每类手势仅需少量模板即可完成匹配,无需大规模标注数据集,适合快速原型验证和个性化手势定义。
正如"没有免费的午餐"(No Free Lunch, NFL)定理所指出的,不存在能够完美适配所有手势任务和受试者数据集的通用模型。算法选择应综合考量识别精度、计算开销、内存占用、可解释性等实际需求,并通过广泛的基准测试加以验证。
传统机器学习在实时嵌入式系统(如假肢控制器、智能手表)中仍是主流选择——LDA 的推理延迟可低至毫秒级,而深度学习模型在边缘端的部署成本往往高出一个数量级。在数据量有限或可解释性要求高的场景中,经过精心特征工程的传统方法往往优于直接套用的深度模型。