1. 引言
人体活动识别(Human Activity Recognition, HAR)是通过传感器、摄像头或可穿戴设备捕获人体运动数据,并利用算法对特定活动(如行走、跑步、跌倒、坐立等)进行自动分类和识别的技术。随着物联网、智能医疗和健康监测技术的快速发展,HAR在多个领域展现出广阔的应用前景[1]。
随着传感器技术和普适计算技术的飞速发展,基于传感器的HAR技术得到了越来越广泛的应用,隐私也得到了很好的保护。研究人员探索了不同类型的传感技术在活动识别中的作用,以提高识别准确率。根据传感器在环境中的使用方式,HAR技术可以大致分为两类:基于固定传感器的方法和基于移动传感器的方法[2]。
基于固定传感器的方法是指从安装在固定位置的传感器中获取信息,涉及声学传感器[3]、雷达[4]、静态相机[5]和其他基于环境的传感器,其中基于相机的方法是最流行的方法,通常应用背景减除法、光流法和基于能量的分割法提取特征[6]-[9]。尽管这些活动监视方法可以提供更好的识别准确性,但是它们不适合于许多室内环境,尤其是在隐私受到关注的情况下。此外,基于视觉的方法识别效果容易受到光照变化、环境遮挡和背景变化的影响,这极大地限制了其实际应用。
另一种活动识别方法是使用移动的传感器。在这些方法中,不同类型的行为信息通常是从一组专用的身体穿戴式运动传感器收集的,例如加速度计、陀螺仪和磁力计。加速度和角速度数据会随着人体运动而变化。因此,传感器的小型化和灵活性允许个人佩戴或携带嵌入有各种传感单元的移动设备。这与基于固定传感器的方法不同[10]。而且这些传感器具有低成本、低功耗、大容量、小型化、对周围环境依赖性小等特点[11],因此基于移动传感器的活动识别因其便携性和日常生活中接受度高而受到广泛关注,相应地,已经进行了大量的研究来探索移动传感器以无处不在和普遍的方式进行活动识别的潜力。Margarito等人[12]将加速度传感器置于受试者手腕上采集加速度数据,然后利用模板匹配算法对8种常见的体育运动进行分类。在文章[13]中,提出了一种针对老年人和残疾人的智能生活辅助系统(SAIL),Zhu等人[13]通过多传感器融合策略的方式收集特征,实现了识别13种日常活动的目标。
深度神经网络已经成为当今人工智能系统的基础设施。不同类型的任务通常涉及不同类型的网络。例如,多层感知器(MLP)或全连接(FC)网络是经典类型的神经网络,它由多个线性层和非线性激活堆叠在一起[14]。卷积神经网络(CNNs)引入卷积层和池化层来处理图像等平移不变数据[15]。而递归神经网络(RNNs)利用递归单元来处理序列数据或时间序列数据[16]。Transformer是一种新型神经网络。它主要利用自注意力机制提取内在特征[17],并在人工智能应用中显示出广泛应用的巨大潜力。Hinton等人[18]引入了神经网络中的胶囊概念,以利用数据的相关空间信息。一个胶囊包括一组神经层,这些神经层堆叠在一个单层中,并形成一个被称为CapsNets的网络[19]。与CNNs产生的标量值不同,胶囊中的神经元组将输出封装成信息活动向量(表示位置或大小等特征)。Sabour等人[20]使用动态路由算法对CapsNet架构的设计进行了改进。该算法不需要输入活动数据,而是利用活动向量(也被称作实例化参数)来表示特征,以及向量的长度来表示特定特征的存在概率。受现有模型的启发,本文提出了一种Transformer模型与胶囊模型的集成融合,以提高胶囊模型用于人体活动识别的性能。
2. 方法
2.1. 胶囊模型
胶囊网络[20]旨在克服传统网络结构(如CNNs)的一些限制。其整体框架可以分为两个部分:编码部分包括具有整流线性单元(ReLU)的卷积层(例如ReLU Conv 1)、主胶囊层(即Primary Caps)和第二个封装层(Second Caps);解码部分包括多个具有非线性激活函数ReLU和Sigmoid的全连接层(例如FC ReLU和FC Sigmoid)。
传统神经网络的神经元输入和输出只能表示提取特征的概率,而没有考虑它们的空间关系。相比之下,胶囊网络使用胶囊作为基本组件[20],它由多个神经元组成,每个神经元由一个向量表示。值得注意的是,这些神经元的输入和输出都是向量,其中输出值表示实体存在的概率在0到1的范围内。这些向量的大小和方向相应地表示实体特征的概率和属性。
Table 1. Differences between vector neurons (VN) and scalar neurons (SN)
表1. 矢量神经元(VN)和标量神经元(SN)之间的差异
|
|
VN |
SN |
输入 |
|
|
|
操作 |
转换 |
|
- |
|
加权求和 |
|
|
|
非线性激活 |
|
|
输出 |
|
|
|
表1对比了向量神经元(Vector Neural, VN)和标量神经元(Scalar Neural, SN)之间的差异。在该表中,
表示标量神经元的输入,
表示相应的权重,b表示偏置。变量
表示较低级别的胶囊,而
表示较低级别胶囊对于较高级别胶囊的预测,
表示对输入的求和运算,
表示不同层向量元素之间的耦合系数,
表示对当前层胶囊向量的输入,即预测向量的加权和。在向量神经元的前向传播过程中,不同的胶囊之间使用动态路由算法进行交互。在标量神经元的前向传播过程中,将输入
和权重的乘积相加以形成标量
,然后通过非线性函数将其转换为输出
。动态路由算法旨在迭代地更新连接胶囊层的权重矩阵,以便选择表现出与初级胶囊层高度一致性的检测胶囊。该算法有助于将表示人体活动特征的初级胶囊层与表示活动类别的次级胶囊层进行匹配。计算过程概述如下:
(1)
(2)
(3)
其中
表示从向量
到向量
的预测向量,
表示对应的权重矩阵,
表示胶囊
的输出向量。向量
通过非线性squash函数压缩和归一化后,得到单位向量
。
(4)
其中参数
用于更新耦合系数,其初始值通常设为0,具体公式如下:
(5)
在每次前向传播过程中,
的值是基于
计算得出的。通过迭代更新
并对耦合系数
进行后续更新,最终得到最优的耦合系数。
2.2. Transformer模型
Transformer最初由Google团队于2017年提出[17],作为机器翻译的序列到序列模型。与CNN和RNN不同,它采用自注意力机制来建立全局上下文信息,并使用位置编码来表示输入数据。因此,Transformer可以实现更多的并行计算,与传统网络结构相比,性能得到了显著改善。
Transformer架构由多个编码器和解码器层组成。编码器和解码器都由N个完全相同的层组成,每个层都使用残差连接和层归一化。编码器获取输入特征并将其转换为高级嵌入,然后由解码器进行转换以生成输出。每个编码器主要由一个多头自注意力(MSA)模块和一个位置前馈网络(FFN)组成。为了实现更深层次的模型,每个模块都应用了残差连接,然后进行层归一化(LN)。相比之下,解码器在MSA和FFN模块之间包括一个额外的交叉注意(CA)模块。
在Transformer模型中,自注意力机制是一个重要的部分。在计算多头自注意力时,首先通过公式(6)~(8)将输入向量x转换为查询向量Q、键向量K、值向量V:
(6)
(7)
(8)
其中
、
、
分别对应
的权重矩阵。
注意机制的公式定义如下:
(9)
其中softmax函数也被称作归一化指数函数,它将每一个元素的范围都压缩到(0, 1)之间,并且所有元素的和为1。
MSA机制将Q、K和V划分为h个头,从而实现输入x和其他相似输入的并行计算。然后将输出拼接起来,从而显著提高了模型的计算效率。在并行计算中,先在输入矩阵x和权重矩阵
、
、
之间进行矩阵乘法,再通过获得的矩阵
计算其注意力,最后将各个注意力头拼接起来乘以权重矩阵
得到输出矩阵。相关公式如下所示:
(10)
(11)
其中
表示第i个头的注意力。
Transformer编码器部分中的前馈层基本上由具有线性结构和卷积结构的多层感知器(MLP)组成。它利用高斯误差线性单元(GELU)和线性激活函数,并且可以从以下公式中获得,其中
是来自前一层的输出,
和
是学习参数:
(12)
(13)
2.3. 改进Capsule-Transformer模型
所提出的模型架构如图1所示,该架构由三个部分组成:门控卷积层、Transformer层和胶囊层。前两个部分用于特征提取,而第三部分用于人体活动的分类和检测。在卷积层中,我们使用门控卷积[21]。利用该方法可以将动态特征选择机制应用于每个通道和空间位置。该方法利用三个并行的门控卷积神经网络块从输入特征中提取信息,每个并行块由三个卷积层组成。在每个块之后,沿着频率轴应用二维最大池(Max Pool)以进行降维,而时间轴保持不变以匹配目标长度。此外,在卷积层内使用相同大小的卷积核来从输入特征中提取信息。图2展示了传统部分卷积和门控卷积之间的比较。在部分卷积的情况下,ReLU更新通过更新掩码来表示卷积特征。
Transformer模型的编码器部分被添加在卷积层之后。这一增加有助于系统捕获输入信号中的全局信息。编码器结构由自注意力机制和前馈神经网络层组成,并且在自注意力层之后使用残差连接和归一化,以提高收敛速度。随后,将特征输入到前馈神经网络层,在前馈神经网络层中,使用具有GELU激活函数的全连接层来增强模型的泛化能力,然后在最终输出之前应用残差连接和归一化。本文所采用的Transformer架构如图3所示。
在胶囊层中,我们利用改进的胶囊网络结构,结合时间注意力层,并与第二个胶囊层并行计算输出。该层的引入有效地解决了输入数据中背景噪声导致的模型性能降低问题,特别是在复杂数据集中[22]。这些特征通过ReLU激活函数输入到初级胶囊层,从而使输出变成单独的时间片,这些时间片被视为后续层的单独输入。然后,时间片被传递到第二胶囊层和时间注意力(Temporal Attention, TA)层。在第二胶囊层中,动态路由算法用于训练特征并计算输出。与传统胶囊动态路由算法相比,时间注意力层受到文献[23]中概述的注意力方案的启发,对活动帧采用注意力权重,即关注重要帧,衰减无关帧,最后,将第二胶囊层和时间注意力层输出合并,得到数据特征的预测值。这些预测值可以被视为相对于从时间注意力层导出的概率分布的胶囊的预期长度。
实验结果表明,相比于原来的路由机制,使用时间注意力层能产生更好的性能。本文所使用的胶囊层的结构流程图如图4所示。
Figure 1. The neural network architecture proposed in this paper
图1. 本文提出的神经网络架构
Figure 2. Illustration of the partial convolution (left) and the gated convolution (right)
图2. 部分卷积图(左)和门控卷积图(右)
Figure 3. The network architecture of the transformer encoder
图3. Transformer编码器的网络结构
Figure 4. The network architecture of the capsule layer
图4. 胶囊层的网络架构
3. 实验结果与分析
3.1. 数据集描述
HAR实验使用智能手机中嵌入的加速度计传感器和陀螺仪传感器记录的数据进行。在这项工作中,本研究在两个数据集上实现并观察改进Capsule-Transformer模型的性能,即UCI-HAR [24]和WISDM [25]。
UCI-HAR数据集[24]是根据30名年龄在19~48岁之间的受试者的记录构建的。在记录期间,所有受试者都被指示遵循活动协议。他们戴着智能手机(三星Galaxy S Ⅱ),腰部周围嵌有惯性传感器,日常生活的六项活动分别是站立、坐下、平躺、行走、下楼和上楼。此外,该数据集还包括发生在静态姿势之间的转换:站到坐、坐到站、坐到躺、躺到坐、站到躺和躺到站。具体地说,由于姿势转换的百分比很小,本文只选择了六种基本日常活动作为输入样本。实验已经被视频记录以手动标记数据。最后,研究人员以50 Hz的恒定采样频率捕获了三轴加速度和三轴角速度数据。据统计,该数据集中的样本数量为748,406,详细信息见表2。
Table 2. Activities of UCI-HAR
表2. UCI-HAR活动
活动 |
样本数 |
百分比 |
行走 |
122,091 |
16.3% |
上楼 |
116,707 |
15.6% |
下楼 |
107,961 |
14.4% |
坐下 |
126,677 |
16.9% |
平躺 |
136,865 |
18.3% |
站立 |
138,105 |
18.5% |
WISDM数据集[25]共有1,098,209个样本,与每种活动相关的样本占总样本的百分比如表3所示。可以看出,WISDM是一个不平衡的数据集,其中走路的活动样本占比最大,达到38.6%,而站立仅占总样本的4.4%。其实验对象由36名受试者组成,这些受试者在前腿口袋里放一部Android手机进行某些日常活动。使用的传感器是采样频率为20 Hz的加速度计,它也是智能手机的内置运动传感器。该实验共记录了六种日常行为活动,分别是站立、坐、走路、上楼、下楼和慢跑。为了确保数据的质量,数据采集由专人进行监督。
Table 3. Activities of WISDM
表3. WISDM活动
活动 |
样本数 |
百分比 |
走路 |
424,400 |
38.6% |
上楼 |
122,869 |
11.2% |
下楼 |
100,427 |
9.1% |
坐 |
59,939 |
5.5% |
慢跑 |
342,177 |
31.2% |
站立 |
48,397 |
4.4% |
3.2. 数据预处理
为了提高模型的准确性和鲁棒性,需要对可穿戴传感器收集的原始数据进行预处理。采用噪声滤波器对传感器信号进行预处理,降噪后的信号以2.56 s的窗口大小采样,重叠率为50%,每个窗口包括128个读数[26]。采用低通巴特沃斯滤波器分离加速度传感器信号中的物体加速度和重力加速度分量。假设重力具有低频分量,滤波器的截止频率为0.3 Hz [26],然后将所有特征值在[−1, 1]范围内归一化。数据集的70%作为训练数据,30%用作测试数据。
3.3. 实验环境与评估指标
本次实验均在配备英特尔酷睿i7-8700处理器8核3.2 GHz CPU、32 GB内存存储和NVIDIA GeForce GTX 2080 TI 4 GB-128位显卡的台式机上进行。使用Python 3.9.2环境进行计算,在深度神经网络训练中使用TensorFlow库,Numpy用于数组操作,matplotlib用于数据可视化。以准确率、精度、召回率和F1-Score作为性能指标,比较不同算法的有效性,模型均采用10倍交叉验证。
Table 4. Model parameters (feature extraction)
表4. 模型参数(特征提取)
|
Conv1 |
Tf1 |
Conv2 |
Tf2 |
Conv3 |
Tf3 |
卷积核尺寸 |
64@3 × 3 |
- |
64@3 × 3 |
- |
64@3 × 3 |
- |
步长 |
1×1 |
- |
1×1 |
- |
1×1 |
- |
池化尺寸 |
2 × 2 |
- |
2 × 2 |
- |
2 × 2 |
- |
注意力头数 |
- |
1 |
- |
1 |
- |
1 |
丢弃率 |
0.2 |
0.3 |
0.2 |
0.3 |
0.2 |
0.3 |
激活函数 |
ReLU |
ReLU |
ReLU |
ReLU |
ReLU |
ReLU |
Table 5. Model parameters (capsule layers)
表5. 模型参数(胶囊层)
|
初级胶囊层 |
次级胶囊层 |
卷积核尺寸 |
32@3 × 3 |
- |
步长 |
1×1 |
- |
丢弃率 |
0.5 |
- |
激活函数 |
Squashing |
Squashing |
胶囊维度 |
8 |
16 |
表4和表5展示了模型不同阶段使用的超参数设置,其中“Tf”表示Transformer架构,后缀数字代表对应的Transformer层索引。在门控卷积网络部分,本文采用了64个尺寸为3 × 3的滤波器,池化尺寸均设置为2 × 2。为抑制过拟合并加速收敛,在每个卷积层和初级胶囊层后均实施了批归一化操作。在Transformer结构中,采用的是单注意力头的编码器架构设计。
在优化策略方面,本文采用Adam优化器[25]作为梯度下降算法,维持0.01的固定学习率。动态路由的迭代次数设置为4次,学习率每训练50个周期后按0.9系数衰减。选用二元交叉熵作为损失函数,并据此进行梯度计算。批量大小设置为128,每次实验均进行300批次训练。
在人体活动识别领域中,准确率(Accuracy)、精度(Precision)、召回率(Recall)和F1分数(F1-Score)是衡量分类模型性能的四个重要指标。这些指标都是基于混淆矩阵(Confusion Matrix)来计算的,混淆矩阵包括以下四种类型:真正例(True Positive, TP),即实际为正,预测为正的样本;真负例(True Negative, TN),即实际为负,预测为负的样本;假正例(False Positive, FP),即实际为负,预测为正的样本;假负例(False Negative, FN),即实际为正,预测为负的样本。
准确率(Accuracy)衡量模型整体预测正确的比例,反映模型对所有类别(正类和负类)的综合分类能力。计算公式如下:
(14)
精度(Precision)衡量模型预测为正类的样本中实际为正类的比例,关注预测结果的可靠性。计算公式如下:
(15)
召回率(Recall)衡量实际为正类的样本中被模型正确预测的比例,关注模型对正类的覆盖能力。计算公式如下:
(16)
F1分数(F1-Score)是精度和召回率的调和平均数,综合平衡两者性能,尤其适用于类别不平衡的数据。计算公式如下:
(17)
3.4. 与最新模型的比较
为了全面验证所提出模型的性能,本文使用了两个公开数据集进行测试。图5和图6分别显示了使用UCI-HAR和WISDM数据集的测试集预测模型时获得的分类混淆矩阵。以准确率、精度、召回率和F1分数作为性能指标,验证本文所提出算法的有效性。图7和图8分别为UCI-HAR和WISDM数据集的分类报告图表。对于UCI-HAR数据集,整体准确率达到96.0%,整体精度达到95.7%,整体召回率达到96.0%,整体F1分数达到95.9%。但在区分坐下和站立两种活动时表现相对欠佳,分类准确率仅有89%和91%。主要原因可能是这两种活动从运动传感器的视角来看具有相似性,仅通过加速度数据难以挖掘更深层次的差异信息。当将训练好的模型应用于不平衡的WISDM数据集的测试集时,整体准确率达到96.5%,整体精度达到96.4%,整体召回率达到96.5%,整体F1分数达到96.4%。但在区分上楼和下楼两种活动时表现相对欠佳,分类准确率仅有89%和96%。混合模型在多数类别上F1分数超过90%,表明其泛化能力较强,适用于实际场景中的多类别分类任务。
Figure 5. Classification confusion matrix on the UCI-HAR
图5. 基于UCI-HAR的分类混淆矩阵
Figure 6. Classification confusion matrix on the WISDM
图6. 基于WISDM的分类混淆矩阵
Figure 7. Classification report chart on the UCI-HAR
图7. 基于UCI-HAR的分类报告图表
Figure 8. Classification report chart on the WISDM
图8. 基于WISDM的分类报告图表
为进一步验证模型性能,在相同实验场景下将本文所提出的Transformer-Capsule模型与Yang等⼈提出的CNN模型[27]、DeepConvLSTM模型[28]进行比较。所有结果均通过准确率、精度、召回率和F1分数验证,以确保后续比较的公平性与一致性。表6和表7展示了上述深度学习模型的评估结果。本文所提出的模型在UCI-HAR和WISDM数据集上的性能均超越另外两个模型。这些结果证明了所提方法在不同公共数据集上的优越性能。
Table 6. Performance of three models on UCI-HAR
表6. 三个模型在UCI-HAR上的性能
UCI-HAR |
准确率 |
精度 |
召回率 |
F1分数 |
CNN |
92.4% |
92.0% |
92.5% |
92.1% |
DeepConvLSTM |
93.6% |
93.4% |
93.5% |
93.2% |
Transformer-Capsule |
96.0% |
95.7% |
96.0% |
95.9% |
Table 7. Performance of three models on WISDM
表7. 三个模型在WISDM上的性能
WISDM |
准确率 |
精度 |
召回率 |
F1分数 |
CNN |
89.8% |
89.6% |
89.8% |
89.2% |
DeepConvLSTM |
90.7% |
90.4% |
90.6% |
90.3% |
Transformer-Capsule |
96.5% |
96.4% |
96.5% |
96.4% |
Figure 9. Classification confusion matrix of the standalone Transformer model
图9. 独立Transformer模型的分类混淆矩阵
Figure 10. Classification report chart of the standalone Transformer model
图10. 独立Transformer模型的分类报告图表
本研究提出了一种基于Transformer与Capsule网络的混合架构。为深入探究模型的有效性,我们在统一实验环境下设计了消融实验:通过固定门控卷积以及模块参数配置,分别使用独立Transformer以及独立Capsule网络在UCI-HAR数据集上进行基准测试。实验结果显示如图9~12,独立Transformer分支取得94.17%的准确率,Capsule网络分支达到93.67%的准确率,而混合模型则展现出显著优势,准确率跃升至96.0%。表8展示了消融实验的评估结果。在综合评估指标方面,混合模型在精度、召回率和F1分数上均相较于单一Transformer模型和单一Capsule模型有所提升。这些实验数据充分表明,通过有效整合Transformer模型在全局特征以及Capsule网络在局部特征上的各自优势,混合架构能够产生显著的协同效应,为神经网络结构设计提供了新的优化路径。
Figure 11. Classification confusion matrix of the standalone Capsule model
图11. 独立Capsule模型的分类混淆矩阵
Figure 12. Classification report chart of the standalone Capsule model
图12. 独立Capsule模型的分类报告图表
Table 8. Performance of three models on UCI-HAR
表8. 三个模型在UCI-HAR上的性能
UCI-HAR |
准确率 |
精度 |
召回率 |
F1分数 |
独立Transformer |
94.1% |
94.1% |
94.1% |
94.1% |
独立Capsule |
93.6% |
93.4% |
93.6% |
93.3% |
Transformer-Capsule |
96.0% |
95.7% |
96.0% |
95.9% |
4. 结论
本研究针对传统深度学习算法在人体活动识别任务中时序动态建模与空间关系捕捉的局限性,创新性地在人体活动识别中提出了一种基于Transformer与胶囊网络的混合架构。通过Transformer的多头注意力机制有效捕获传感器数据的全局时序依赖特征,结合胶囊网络的动态路由机制精准提取局部空间关联特性,实现了对人体复杂活动模式的多层次特征表征。实验验证表明,本模型在UCI-HAR和WISDM数据集上分别取得96.0%和96.5%的识别准确率,相较单一Transformer架构和独立胶囊网络模型在UCI-HAR数据集上分别提升1.9%和2.4%的识别准确率,同时显著优于CNN、LSTM等传统深度学习模型。实验结果充分验证了所提模型在时空特征协同学习方面的优越性,其通过异构网络的优势互补机制,在保证模型轻量化的基础上实现了端到端特征学习,避免了传统方法中复杂的特征工程需求。与近期同类研究相比,本方法在识别精度与模型鲁棒性方面均展现出竞争优势,为可穿戴设备在智能健康监护等实际应用场景提供了更可靠的技术支撑。未来研究将重点优化模型计算效率,并拓展其在多模态传感器数据融合中的应用。
NOTES
*通讯作者。