浙江大学学报(工学版), 2025, 59(3): 504-511 doi: 10.3785/j.issn.1008-973X.2025.03.008

计算机技术

基于小样本人体运动行为识别的孪生网络算法

姚明辉,, 王悦燕, 吴启亮, 牛燕, 王聪

1. 天津工业大学 航空航天学院,天津 300384

2. 天津工业大学 人工智能学院,天津 300384

Siamese networks algorithm based on small human motion behavior recognition

YAO Minghui,, WANG Yueyan, WU Qiliang, NIU Yan, WANG Cong

1. School of Aeronautics and Astronautics, Tiangong University, Tianjin 300384, China

2. School of Artificial Intelligence, Tiangong University, Tianjin 300384, China

收稿日期: 2023-12-19  

基金资助: 国家自然科学基金重点资助项目 (12232014).

Received: 2023-12-19  

Fund supported: 国家自然科学基金重点资助项目(12232014).

作者简介 About authors

姚明辉(1971—),女,教授,博士,从事振动能量俘获与转换研究.orcid.org/0000-0002-6313-268X.E-mail:merry_mingming@163.com , E-mail:merry_mingming@163.com

摘要

为了使用更少传感器实现更高精度的人体运动行为识别,提出基于DSC-BiGRU-Att孪生网络的方法,旨在使用加速度传感器通过深度学习网络模型,实现对人体运动行为的准确识别. 基于人体运动行为多分类任务目标,以孪生网络为基本框架,将预处理后的加速度传感器数据样本对输入孪生网络. 孪生网络由2个结构相同、参数共享的深度可分离网络(DSC)、双向门控循环单元(BiGRU)和注意力机制(Att)组成. 深度可分离卷积网络提取运动行为信号中的空间特征,双向门控单元提取信号中的时间特征,引入注意力机制对提取的特征进行强化,最终实现人体运动行为的识别. 利用真实的数据集对所提出的DSC-BiGRU-Att孪生网络进行验证. 实验结果表明,所提出的算法在样本量较少的情况下取得了较好的行为识别结果,改模型在自采集加速度数据集上的准确率为98.89%.

关键词: 深度学习 ; 人体运动行为识别 ; 注意力机制 ; 深度可分离卷积 ; 孪生网络

Abstract

A human motion behavior recognition method was proposed based on the DSC-BiGRU-Att Siamese networks, to address the challenge of achieving higher accuracy in human motion behavior recognition using fewer sensors. The method aimed to achieve accurate recognition of human motion behavior through deep learning network models using acceleration sensors. The pairs of pre-processed acceleration sensor data samples were inputted, based on the multi-classification task objective of human motion behavior, with Siamese networks as the basic framework. The Siamese networks consisted of two deeply separable convolutional (DSC) networks with identical structures and shared parameters, a bidirectional gated recurrent unit (BiGRU), and an attention mechanism (Att). The DSC network extracted spatial features from the motion behavior signal, while the BiGRU extracted temporal features. The attention mechanism was introduced to enhance the extracted features and ultimately facilitated human motion behavior recognition. Real-world datasets were utilized to validate the proposed DSC-BiGRU-Att Siamese networks. Experimental results demonstrated that the proposed algorithm achieved favorable behavior recognition results despite a small sample size, with an accuracy rate of 98.89% attained on the self-collected acceleration dataset.

Keywords: deep learning ; human motion behavior recognition ; attention mechanism ; deep separable convolution ; Siamese networks

PDF (1040KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

姚明辉, 王悦燕, 吴启亮, 牛燕, 王聪. 基于小样本人体运动行为识别的孪生网络算法. 浙江大学学报(工学版)[J], 2025, 59(3): 504-511 doi:10.3785/j.issn.1008-973X.2025.03.008

YAO Minghui, WANG Yueyan, WU Qiliang, NIU Yan, WANG Cong. Siamese networks algorithm based on small human motion behavior recognition. Journal of Zhejiang University(Engineering Science)[J], 2025, 59(3): 504-511 doi:10.3785/j.issn.1008-973X.2025.03.008

人体运动行为识别技术是健康检测领域的研究热点,对疾病预防和管理有着重要意义[1]. 目前,常见的人体行为识别技术包括计算机视觉、传感器技术和Wi-Fi感知技术等[2-4]. 与其他技术相比,基于传感器信号的行为识别技术具有独特的优势. 首先,传感器信号的采集和处理不会对被监测者生理或心理造成任何影响. 其次,基于传感器技术的行为识别可以适应多种环境和场景,具有更广泛的应用前景. 因此,本研究旨在利用智能手机传感器信号识别人体运动行为.

人体运动行为识别的关键步骤为特征提取和行为识别. 传统行为识别方法主要依赖于人工的设计特征,例如支持向量机、K近邻分类器、决策树分类器和隐马尔科夫模型等[5-8]. Tang等[9]使用支持向量机(SVM)算法分类识别30名志愿者的日常行为,从智能手机中提取不同信号特征,验证其对人体活动识别准确率的影响. 然而,传统的机器学习算法严重依赖于启发式手工特征提取. 随着智能设备的普及和深度学习技术的发展,国内外利用深度学习进行人体运动行为识别的研究越来越多,如卷积神经网络[10-13]或长短期记忆网络[14-16](long-short term memory,LSTM),以自动识别日常活动. Xing等[17]提出卷积神经网络模型,在UCI数据集上取得了95.99%的识别准确率. Shi等[18]提出基于一维卷积神经网络(CNN)(convolutional neural network)的深度学习方法检测人体运动行为,在PAMAP2数据集取得94.8%的识别准确率. vsman Sarwar等[19]提出基于注意力的双向门控循环单元(gate recurrent unit,GRU)来增强递归神经网络,实现人体运动行为的分类与识别. Arshad等[20]提出由卷积神经网络和双向长短期记忆网络构成的分层深度学习模型,在MobiAct数据集取得了96.61%的准确率.

综合以上研究发现,单一的神经网络模型在处理时间序列数据时往往无法充分捕获关键信息. 相比之下,使用多模型结合的方法可以更全面地提取运动行为的特征,进而提高识别准确性. 其次,为了获得良好的行为识别效果,基于深度学习的研究方法要融合不同种类的传感器数据样本进行模型训练,然而,这通常需要大量数据和计算资源,限制了在数据有限的情况下达到理想识别效果的可能性. 因此,为了解决深度神经网络在小样本行为识别上准确度不高的问题,将深度可分离卷积、双向门控循环单元和注意力机制相结合,提出多损失孪生网络模型,即DCS-BiGRU-Att多损失孪生网络. 主要创新点如下:在小样本数据情况下,基于孪生网络的模型结构能确保行为识别的准确性;深度可分离卷积能够减少模型的参数量,提升模型的泛化能力,而注意力机制能够自适应学习信号中的关键特征,提高模型对重要时间步的关注度,帮助模型更好地理解时间序列数据中的动态变化;引入多损失函数融合,能进一步优化模型分类的准确率.

1. 孪生网络

在健康监测领域,对于行动不便的老人或进行康复训练的患者来说,收集大量传感器数据以用于人体运动行为识别是一项挑战. 当前研究亟待解决的问题是如何有效利用单一传感器所采集的小样本数据来进行准确的行为识别. 孪生网络[21]是用于度量学习的神经网络结构,在小样本问题上具有一定的优势. 孪生网络由2个共享权重的子网络组成,它们被称为孪生分支. 这种结构使得网络能够同时处理2个输入,然后将2个输入样本映射到一个相同维度的特征空间中,通过比较特征空间内的样本距离来判断它们的相似度或差异性.

孪生网络的共享权值和结构可以减少模型的参数数量,提高模型的鲁棒性. 此外,基于孪生网络的深度学习框架可以构建多个样本组合,对于n个训练样本,可以创建n(n−1)个样本组合,其中每个样本组合由2个样本构成,这样做可以在数据有限的情况下增加训练样本,减轻因数据样本数量不足而产生的过拟合问题,同时提高模型的泛化能力和稳定性. 孪生网络训练过程通常采用对比损失函数,使得同一类样本在目标空间中的距离尽可能近,不同类样本在目标空间中的距离尽可能远. 最终,孪生神经网络能够学习到用于衡量2个输入之间相似性的映射函数,从而在各种任务中获得更好的性能.

孪生网络基本结构如图1所示.图中,$ {X_{\mathrm{a}}} $$ {X_{\mathrm{b}}} $为输入样本对,分别输入子网络Network_1和Network_2,这2个网络分支共享相同的权重$ {{W}} $和模型结构,在经过特征提取后,得到对应的向量$ {{\boldsymbol{G}}_{\rm{w}}}({X_{\mathrm{a}}}) $$ {{\boldsymbol{G}}_{\mathrm{w}}}({X_{\mathrm{b}}}) $. 然后,通过欧氏距离函数来计算2个输出向量之间的距离,记为

图 1

图 1   孪生网络基本结构

Fig.1   Structure of Siamese networks


$ {E}_{\rm{w}}\left(X_{\mathrm{a}}, X_{\mathrm{b}}\right)=\left\|\boldsymbol{G}_{\rm{w}}\left(X_{\mathrm{a}}\right)-\boldsymbol{G}_{\rm{w}}\left(X_{\mathrm{b}}\right)\right\| . $

式中:$ \parallel ·\parallel $表示向量的范数或距离. $ {{{E}}_{\rm{w}}}({X_{\mathrm{a}}},{X_{\mathrm{b}}}{)} $越小,表明输入样本对相同或者相似度较大;$ {{{E}}_{\rm{w}}}{(}{X_{\mathrm{a}}},{X_{\mathrm{b}}}{)} $越大,表明输入样本对不同或者相似度较小.

2. 算法设计

2.1. 骨干网络框架

所提出的行为识别骨干网络结构如图2所示. 为了减少模型的参数量,加快模型运行速度,将常用的卷积神经网络替换为深度可分离卷积. 三轴加速度传感器数据经过DSC层提取空域特征;然后,将得到的特征集合输入双向GRU层进行时域特征提取;在双向GRU层后连接注意力层,以更好地学习时间序列中重要的信息,并在模型训练时分配更多的权重给关键的时间步,同时,加入注意力机制以有效提高模型的准确性和鲁棒性;经过层层筛选之后,将人体运动行为特征集合输入全连接层,利用权重矩阵将其映射到样本标记空间中. 最后使用softmax函数进行分类计算,预测每种类别的概率分布,并选择概率最大的类别作为输入数据样本的预测类别. 通过这种方式,模型能够有效地对输入数据进行分类,并为每个输入样本输出一个预测结果,以帮助用户更好地理解人体运动行为的类型和特征.

图 2

图 2   行为识别骨干网络结构

Fig.2   Activity recognition backbone network architecture


2.2. 深度可分离卷积模块

深度可分离卷积[22]是卷积神经网络中的一种卷积方式,标准卷积会在卷积深度增加过程中加大模型的参数量和计算量,而深度可分离卷积将一个标准的卷积过程分为2个步骤,分别是深度卷积(depthwise convolution)和逐点卷积(pointwise convolution). 深度卷积指将输入数据分成多个通道,每个通道分别进行卷积操作,得到一个深度特征图. 逐点卷积是指将深度特征图上的每个像素与对应的权重相乘并求和,得到一个输出特征图. 这种方式可以减少模型的参数量,提高模型的计算效率. 同时,使用深度可分离卷积能够在训练过程中降低过拟合现象的产生,有助于提高模型的泛化能力. 因此,提出使用DSC代替传统卷积神经网络的模块,获取传感器数据中的空间特征.

将处理后的三轴加速度数据输入深度可分离卷积层. 首先,输入三轴加速度数据$ {\boldsymbol{A}} = [{a_x},{a_y},{a_z}] $,将3个时间序列重组为一个形状为(time_steps, 3, 1)的张量,其中最后一个维度代表特征维度,然后深度卷积层对每个轴进行卷积操作,得到每个轴对应的特征图,表达式如下:

$ {y_i}{(}x{)} = \sum\limits_{m = - K+1}^{K - 1} {{a_i}} {(}x+m{)} {K_{{\mathrm{d}},i}}{(}m{)}. $

式中:$ {y_i}(x) $为输出特征图中第$ i $个通道在位置$ x $的值;$ {a_i}(x+m) $为输入张量中第$ i $个通道在位置$ x+m $的值;$ {K_{{\rm{d}},i}}(m) $为深度可分离卷积层中第$ i $个通道的卷积核在位置$ m $的值;$ K $为卷积核的大小; $ m $为整数,表示卷积核相对于当前位置$ x $的偏移量.

通过逐点卷积将3个特征图进行相加,得到最终的特征图,表达式如下:

$ F{(}x{)} = {\mathrm{sum}}_{i = {1}}^{3}{D_i}{(}x{)} {W_{\mathrm{p}}}{(}i{)}. $

式中:$ F{(}x{)} $为最终输出的特征图在位置$ x $的值,$ {D_i}(x) $为第$ i $个轴向数据的深度卷积结果,$ {W_{\mathrm{p}}}(i) $为逐点卷积核的第$ i $个权重. 通过这种方式,深度可分离卷积网络能够有效地从三轴加速度数据中提取空间特征. 每个轴的特征图是通过深度卷积得到的,而逐点卷积则将这些特征图组合起来,形成最终的特征表示.

表1所示为DSC模块的主要结构参数. 其中池化层的池化窗口大小均为2.如表2所示为DSC模块结构下使用不同卷积方式的参数量变化情况. 表中,M为参数量. 可以看出,将标准卷积替换为DSC,神经网络卷积层的参数量明显减少,使用DSC模块的整体模型的参数较CNN模型的参数量减少35%,有效解决了卷积核参数冗余的问题.

表 1   DSC模块主要结构参数

Tab.1  Main structural parameters of DSC module

层名称核数量核大小输出维度
卷积1644$ \times $1125$ \times $64
池化10062$ \times $64
BN0062$ \times $64
卷积2322$ \times $161$ \times $32
池化20030$ \times $32

新窗口打开| 下载CSV


表 2   DSC模块结构下不同卷积方式参数量对比

Tab.2  Comparison of parametric quantities for different convolution methods under DSC module structure

层名称M
CNNDSC
卷积1832268
池化100
BN1256256
卷积241282208
池化200

新窗口打开| 下载CSV


2.3. 双向门控循环单元模块

深度可分离卷积模块仅提取传感器数据的空间域信息,对于数据中的时间域信息同样须建模. 人体行为数据是时间序列数据,而循环神经网络是以序列数据为输入,根据序列的演进方向进行递归,且所有循环单元按链式连接的神经网络. 相比于卷积神经网络,循环神经网络能够更好地捕获数据时间步长之间的依赖关系. GRU[23]是循环神经网络的一种. 与LSTM一样,都是为了解决长期记忆和反向传播中的梯度问题而提出的. GRU的特点是使用2个门控向量来控制信息的流动,一个更新门和一个重置门. 更新门决定是否保留当前时间步的信息,重置门决定是否抛弃之前的时间步信息. GRU神经元基本结构如图3所示.

图 3

图 3   GRU神经元结构

Fig.3   Structure of GRU neurons


人体当前的运动状态输出与前后的运动状态信息有关. 针对上述问题,使用双向门控循环单元模块提取数据的时间特征. BiGRU模块结构如图4所示. BiGRU模块同时考虑过去和未来的数据点,能够更好地捕捉时序上下文关系.

图 4

图 4   BiGRU模块结构

Fig.4   BiGRU module structure


调整深度可分离卷积得到特征图$ {\boldsymbol{X }}$的维度,并将其输入到双向GRU网络中. BiGRU模块由2个GRU层组成,一个处理正向序列,另一个处理反向序列. 对于每个时间步$ t $,将当前时间步的特征向量$ {{\boldsymbol{x}}_t} $作为输入,分别送入前向GRU和后向GRU中进行计算.

$ \boldsymbol{h}_t^{\mathrm{f}}=\operatorname{GRU}\left(\boldsymbol{x}_t, \boldsymbol{h}_{t-1}^{\mathrm{f}}\right) , $

$ \boldsymbol{h}_t^{\mathrm{b}}=\operatorname{GRU}\left(\boldsymbol{x}_t, \boldsymbol{h}_{t-1}^{\mathrm{b}}\right). $

式中: GRU函数为非线性变换函数,用于处理和转换输入的时间序列数据;$ {\boldsymbol{h}}_t^{\rm{f}}$$ t $时刻前向GRU的隐藏状态向量;$ {\boldsymbol{h}}_t^{\rm{b}} $$ t $时刻后向GRU的隐藏状态向量.

将前向GRU和后向GRU的输出隐状态$ {\boldsymbol{h}}_t^{\rm{f}}$${\boldsymbol{ h}}_t^{\rm{b}} $连接起来,得到当前时间步的网络输出:

$ \boldsymbol{h}_t=\left[\boldsymbol{h}_t^{\rm{f}}; \boldsymbol{h}_t^{\rm{b}}\right] . $

式中:$ [\;;\;] $表示张量的连接操作.

经过所有时间步的处理后,得到最终的双向GRU输出:

$ \boldsymbol{H} = [{\boldsymbol{h}_1};{\boldsymbol{h}_2};\cdots;{\boldsymbol{h}_t};{\boldsymbol{h}_T}]. $

式中:$ T $为时间序列的长度,$ {{\boldsymbol{h}}_t} $为第$ t $个时间步的网络输出向量.

2.4. 注意力机制模块

BiGRU模块可能会忽略时间序列数据中不同时间步之间的重要关系,导致模型对某些特定时间步的关注度较低. 为了解决这个问题,提出在BiGRU模块后连接注意力机制模块. 注意力机制[24]是对输入数据分配不同权重的机制. 它通过计算每个时间步的注意力权重,将重要的时间步与不重要的时间步进行区分. 在模型中嵌入注意力机制模块,使其能够自适应地学习到信号中的关键特征,从而提高模型的精度和可解释性.

在传统的“查询-键-值”注意力机制中,模型须学习额外的权重参数来生成注意力分数. 这意味着对于每个传感器数据点,模型都须维护一组参数,导致模型的参数量增加,从而增加模型的复杂性和计算成本. 本研究对象为小样本数据,因此使用一个简化的注意力机制. 对于每个时间步$ t $,首先将BiGRU的输出$ \boldsymbol{H}$映射为注意分数$ {\boldsymbol{e}_{t}} $,表达式如下:

$ \boldsymbol{e}_{{t}}=\tanh\; \left(\boldsymbol{W}_{{\mathrm{a}} x} \boldsymbol{h}_{{t}}+\boldsymbol{b}_{{\mathrm{a}} x}\right). $

式中:$ {\boldsymbol{W}_{{\mathrm{a}}x}} $$ {\boldsymbol{b}_{{\mathrm{a}}x}} $分别为须学习的上下文相关注意的权重矩阵和偏置参数,$ {\boldsymbol{h}_t} $为第$t $个GRU单元的输出.

注意分数可以反映特征的重要性或注意度. 然后,通过对注意分数进行softmax归一化,得到注意权重$ {\boldsymbol{a}_t} $,表达式如下:

$ \boldsymbol{a}_{t}=\frac{\exp\; \boldsymbol{e}_t}{\sum_{t=1}^T \exp\; \boldsymbol{e}_t} . $

$ {\boldsymbol{a}_t} $表示每个时间步特征的重要程度,最后,根据注意权重对所有时间步特征进行加权求和,得到上下文向量$ {\boldsymbol{c}_t} $,它是对所有时间步特征的加权表示,表达式如下:

$ \boldsymbol{c}_{{t}}=\sum_{i=1}^T \boldsymbol{a}_t \boldsymbol{h}_t . $

注意力机制结构如图5所示,通过引入注意力机制模块,提高了模型对重要时间步的关注度,并且帮助模型更好地理解时间序列数据中的动态变化,捕捉关键的运动模式和行为特征.

图 5

图 5   注意力机制模块结构

Fig.5   Structure of attention mechanism module


2.5. 多损失融合

现有大多数基于孪生网络模型的损失函数为对比损失函数,然而行为识别模型的主要任务是识别并分类不同的运动类型,因此,提出多损失融合的方法改进孪生网络,改进后的网络采用多任务学习方法,包括运动行为分类和输入样本对相似性判别.

基于DSC-BiGRU-Att多损失孪生网络的人体行为识别模型整体结构如图6所示. 在孪生网络的基础上,引入DSC-BiGRU-Att作为子网络提取传感器信号特征,网络包含3个输出分支,分别为2个交叉熵损失函数和1个对比损失函数. 交叉熵损失函数对应的输出分支在人体运动行为识别任务中用于运动行为的分类. 对比损失函数对应的输出分支用于判别输入样本对的相似性. 通过使用3个输出分支,网络可以同时进行多个任务的学习,每个分支都有对应的损失函数来指导网络的优化. 这种多任务学习的方法可以增强网络的泛化能力和鲁棒性,并且可以通过共享底层特征提取层来提高模型的效率和参数利用率.

图 6

图 6   基于DSC-BiGRU-Att多损失孪生网络的人体行为识别模型整体结构

Fig.6   Structure of human behavior recognition model based on DSC-BiGRU-Att multi-loss Siamese networks


模型输入的2个传感器数据序列为1和2,对应的特征表示为$ {z_1} $$ {z_2} $. 则对比损失函数可以定义为以下形式:

$ {L_{{{\mathrm{con}}}}} = \frac{1}{2}(1 - Y){D^2}+ \frac{1}{2}Y{\text{max}}\;{(0,m - D)^2}. $

式中:$ Y $为指示标签,表示2个样本序列是否属于同一类别,$ Y = 1 $表示属于同一类别,$ Y = 0 $表示不属于同一类别;$ m $为超参数,表示不同类别的样本序列之间所要达到最小距离的阈值;$ D $为样本序列特征间的欧氏距离. D的表达式如下:

$ D = \left[{\sum\limits_{i = 1}^{N_{\mathrm{c}}} {{{({z_{{1}i}} - {z_{{2}i}})}^2}} } \right]^{1/2}. $

式中:$ N_{\mathrm{c}} $表示特征向量的长度,$ {z_{{1}i}} $$ {z_{{2}i}} $分别表示样本序列1和样本序列2在第$ i $个特征上的取值.

将孪生神经网络中每个分支视为一个多分类模型. 具体而言,将从传感器数据中提取的特征输入到一个具有$ N $个神经元的全连接层中,其中$ N $表示行为类别的数量. 每个分支采用交叉熵损失函数进行训练,表达式如下:

$ {L_{{{\mathrm{cro}}}}} = - \sum\limits_{i = 1}^N {{y_i}} \log \; {\hat {y_i}}. $

式中:$ {y_i} $表示真实标签的one-hot编码,$ {\hat {y_i}} $表示模型预测行为类别的概率分布.

交叉熵损失函数通过衡量真实标签与模型预测之间的差异来指导网络的训练. 在本研究中,所提出的网络可以同时最小化3个损失函数,其中包括2个交叉熵损失和1个对比损失函数. 具体来说,网络的损失函数表达式如下:

$ L = {\lambda _1} {L_{{{\mathrm{cro}}1}}}+{\lambda _2} {L_{{{\mathrm{cro}}2}}}+{\lambda _3} {L_{{{\mathrm{con}}}}}. $

式中:$ {L_{\rm{cro1}}} $$ {L_{\rm{cro2}}} $表示2个交叉熵损失函数,$ {\lambda _1} $$ {\lambda _2} $为对应的权重,用于平衡不同损失函数对总体损失的贡献;$ {L_{\rm{con}}} $表示对比损失函数;$ {\lambda _3} $为对比损失函数的权重,用于调整其对总体损失的贡献.

通过同时最小化这3个损失函数,网络可以综合考虑分类任务和样本特征之间的距离关系. 经过实验验证,选取$ {\lambda _1} = 1.00 $$ {\lambda _2} = 1 .00 $$ {\lambda _3} = 0.05 $,使模型达到更好的行为分类和特征学习效果.

3. 实验结果与分析

3.1. 数据介绍

使用智能手机Iphone采集人体运动行为三轴加速度数据,其中包括行走、慢跑、上楼、下楼、跳跃和站立这6种行为. 采样频率为50 Hz,分别采集12名实验人员的运动数据,男生8名,女生4名. 在非固定的实验环境下,志愿者将智能手机不受限制的被放在裤子口袋中,实验人员根据自己的喜好选择将手机放在任意裤子口袋中,随意执行6种运动行为,每种行为执行时间不受限制. 具体动作描述如表3所示. 实验人员数据采集过程如图7所示. 为了更好地表现模型在实现实生活中的实用性, 仅选择自采集数据集作为研究对象.

表 3   6种动作具体描述

Tab.3  Specific description of six actions

编号动作类别动作描述
1行走在平坦的路面上以不同的速度行走和转弯
2慢跑以不同的速度跑步
3跳跃以不同的高度原地跳跃
4上楼以不同的速度在不同的地方爬楼梯
5下楼以不同的速度下楼梯
6保持下肢静态站在固体表面上
(上肢可以有其他动作行为)

新窗口打开| 下载CSV


图 7

图 7   数据采集过程

Fig.7   Data collection process


原始信号常常包含噪声和干扰,可能会降低模型识别的准确率. 因此,根据现有的研究结果及实验验证,使用5阶中值滤波和截止频率为20 Hz的三阶巴特沃斯滤波,去除原始加速度数据中的噪声. 此外,由于传感器信号采集数据量过长,不适合直接输入分类模型,因此,采用滑动窗口分割传感器数据. 将数据分割为2.56 s,即滑动窗口包含128个数据点,重叠率为50%,对传感器序列采样得到6326个样本序列. 其中,70%作为训练集,30%作为测试集.

3.2. 实验环境及行为识别性能评价指标

本算法在Windows 10系统Tensorflow 2.0框架下实现. 软件环境配置为CUDA11.2,Python3.7.2,处理器为AMD Ryzen 9 5900HX with Radeon Graphics 3.30 GHz,内存为16 G. GPU为NVIDIA GeForce RTX 3060. 训练时随机挑选样本对,迭代次数为100次,初始学习率为0.001,批大小为64.

行为识别属于多分类问题,因此在人体运动行为识别领域,常用的评价指标有:准确率A,精确率P,召回率R,F1值F1. 表达式分别如下:

$ {{{A}}} = \frac{{{\rm{TP}}+{\rm{TN}}}}{{{\rm{TP}}+{\rm{TN}}+{\rm{FP}}+{\rm{FN}}}},$

$ {{{P}}} = \frac{{{\rm{TP}}}}{\rm{TP+FP}}, $

$ {{{R}}} = \frac{\rm{TP}}{\rm{TP+FN}}, $

$ {{\rm{F}}1} = \frac{{2 {{P}} {{R}}}}{{P+R}}. $

式中:$ {\rm{TP}} $表示正确分类为正例的正例样本数,$ {\rm{TN}} $表示正确分类为负例的负例样本数,${\rm{ FP}} $表示错误分类为正例的负例样本数,$ {\rm{FN}} $表示错误分类为负例的正例样本数.

3.3. 训练样本数量对识别结果的影响

为了全面比较所提出的行为识别算法的性能,从自采集数据集的训练集中随机选取70、175、350、700、1400210028003639,对4428个训练样本进行训练,并与3种不同的网络架构进行对比,分别为:支持向量机SVM 、CNN和CNN-BiGRU,其中CNN、CNN-BiGRU模型参数与孪生网络的骨干网络参数保持一致.

行为识别结果如图8所示. 可以看到,随着训练样本数量B的增加, SVM、CNN、CNN-BiGRU和DSC-BiGRU-Att孪生网络的分类准确率都随之提高,表明训练数据的增多能够帮助模型学习到更加泛化的特征表示. 然而,当训练样本数量有限时,模型的泛化能力受到挑战,此时,DSC-BiGRU-Att孪生网络展现出其优越性. 在训练样本数量为 70~350的小样本条件下,DSC-BiGRU-Att孪生网络的准确率最高. 尤其当训练样本数量为175时,DSC-BiGRU-Att多损失孪生网络分类准确率明显高于其他模型的,说明DSC-BiGRU-Att孪生网络对于小样本有更好的处理能力. 当训练数据为全部样本时,DSC-BiGRU-Att孪生网络达到98.89%的准确率,仍高于CNN和CNN-BiGRU的.

图 8

图 8   训练样本数量对行为识别结果的影响

Fig.8   Effect of number of training samples on behavioral recognition results


3.4. 不同主干网络模型对比分析

为了深入分析不同主干网络对孪生网络性能的影响,在样本数量为350的条件下,对比不同深度和复杂度的网络结构,主干网络分别为:(a) 2层CNN网络、(b) 2层DSC网络、(c) 3层CNN网络、(d) 3层DSC网络、(e)单层LSTM、(f)单层GRU和(g)单层BiGRU,同(h)本研究提出的主干网络进行比较,每个主干网络后面均连接全连接层和输出层.

行为识别实验结果如表4所示. 由实验结果可以看出,卷积网络的层数增加可以增强模型的特征提取能力,能够在一定程度上提升识别准确率. 例如:3层DSC网络的准确率比2层DSC网络的准确率提高了约2个百分点. 但是,网络层数的增加会增加模型的复杂性,较少层数的网络通常会有更少的参数和计算量,考虑到实际应用中计算资源的有限性,选择2层DSC网络提取传感器数据的空间特征. 此外,单一使用卷积神经网络(CNN)或循环神经网络(RNN)的孪生网络,其识别精度为80%~88%,而本研究提出的DSC-BiGRU-Att多损失孪生网络模型识别准确率为91.85%,说明基于混合模型的孪生网络能够从数据中捕获更丰富的特征,从而提高整体的识别精度.

表 4   不同主干网络的实验结果

Tab.4  Experimental results of different backbone networks

PlanA/%P/%R/%F1
(a)88.2588.4688.360.8849
(b)89.0289.2189.320.8906
(c)90.8890.2590.560.9084
(d)90.8690.5690.490.9065
(e)80.5680.5980.740.8062
(f)81.3681.3281.350.8136
(g)85.6985.4885.390.8564
(h)91.8591.8491.680.9182

新窗口打开| 下载CSV


3.5. 消融实验

为了验证所提出算法的有效性,在数据集上进行消融实验以验证BiGRU模块、注意力机制和孪生网络结构对网络的有效性.

首先构建一个基线baseline,主要包括2个卷积层、1个池化层、1个BN层. 接下来在基线网络中添加不同的模块,具体方案如下:1) baseline+DSC,基线卷积层替换为DSC;2) baseline+DSC+ BiGRU,在方案1)的基础上加入BiGRU模块;3) baseline+DSC+BiGRU+Att,在方案2)的基础上加入注意力机制模块;4) baseline+DSC+BiGRU+Att孪生网络,在方案3)的基础上加入孪生网络结构,即本研究所提算法.

实验结果如表5所示. 可以看出,在网络加入 BiGRU模块和注意力机制后,模型的准确率、精确率和召回率均有所提升,注意力机制模块的加入对网络的性能有较大的提升,准确率、精确率和召回率分别提升了4.83、4.97和5.35个百分点. 在融合孪生网络后,准确率和精确率进一步提升了1.25和1.08个百分点. 由此可以看出,上述模块都能有效提高行为识别的准确性和鲁棒性.

表 5   消融实验结果对比

Tab.5  Comparison of ablation experiment results

方案A/%P/%R/%F1
1)92.8192.7592.310.9250
2)94.8894.8294.800.9485
3)97.6497.7297.660.9766
4)98.8998.8098.890.9889

新窗口打开| 下载CSV


4. 结 语

针对单个传感器获得数据量有限,且传统深度学习模型精度不够的问题,提出基于DSC-BiGRU-Att多损失孪生网络用于人体运动行为识别. 该网络结合了特征提取、注意力机制和多任务学习,能够更好地处理传感器信号数据并完成人体运动行为识别任务. DSC模块可以捕捉到输入数据中的空间关系,BiGRU模块可以建模时间序列数据的依赖性,同时注意力机制模块能够自适应地关注关键的时空特征. 模型使用多个损失函数进行训练,包括分类损失和对比损失. 分类损失用于优化网络对行为类别的预测,对比损失用于增强网络对不同样本之间的差异性学习. 这种多损失的训练策略可以提高模型的鲁棒性和泛化能力. 不同训练样本数量的行为识别试验结果和不同主干网络的行为识别结果表明,孪生网络处理小样本数据有一定的优越性. 在自采集小样本数据集上的消融实验结果表明,本研究设计的网络结构具有较好的性能和灵活性,在人体运动行为识别任务中具有潜力和应用前景. 不过,本研究提出的算法未在公开数据集上检验其泛化性,之后的研究重点为继续对于难以区分的复杂人体运动行为进行分类识别,并在公开数据集上与现有的模型进行对比,以证明所提出算法的有效性.

参考文献

AGGARWAL J K, RYOO M S

Human activity analysis: a review

[J]. ACM Computing Surveys, 2011, 43 (3): 16- 28

[本文引用: 1]

BEDDIAR D R , NINI B , SABOKROU M , et al. Vision-based human activity recognition: a survey[J]. Multimedia Tools and Applications , 2020, 79(41): 30509-30555.

[本文引用: 1]

LI Y, YANG G, SU Z, et al

Human activity recognition based on multienvironment sensor data

[J]. Information Fusion, 2023, 91: 47- 63

DOI:10.1016/j.inffus.2022.10.015     

WANG W, LIU A X, SHAHZAD M, et al

Device-free human activity recognition using commercial WiFi devices

[J]. IEEE Journal on Selected Areas in Communications, 2017, 35 (5): 1118- 1131

DOI:10.1109/JSAC.2017.2679658      [本文引用: 1]

HALIM A, ABDELLATIF A, AWAD M I, et al

Prediction of human gait activities using wearable sensors

[J]. Proceedings of the Institution of Mechanical Engineers, Part H: Journal of Engineering in Medicine, 2021, 235 (6): 676- 687

[本文引用: 1]

ENGÜL G, OZCELIK E, MISRA S, et al

Fusion of smartphone sensor data for classification of daily user activities

[J]. Multimedia Tools and Applications, 2021, 80 (24): 33527- 33546

DOI:10.1007/s11042-021-11105-6     

MASWADI K, GHANI N A, HAMID S, et al

Human activity classification using Decision Tree and Naïve Bayes classifiers

[J]. Multimedia Tools and Applications, 2021, 80 (14): 21709- 21726

DOI:10.1007/s11042-020-10447-x     

WANG Z, CHEN Y

Recognizing human concurrent activities using wearable sensors: a statistical modeling approach based on parallel HMM

[J]. Sensor Review, 2017, 37 (3): 330- 337

DOI:10.1108/SR-01-2017-0003      [本文引用: 1]

TANG T, ZHENG L, WENG S, et al. Human activity recognition with smart watch based on H-SVM [M]// Frontier Computing: Theory, Technologies and Applications . Singapore: Springer, 2018: 179−186.

[本文引用: 1]

HUANG J, LIN S, WANG N, et al

TSE-CNN: a two-stage end-to-end CNN for human activity recognition

[J]. IEEE Journal of Biomedical and Health Informatics, 2020, 24 (1): 292- 299

[本文引用: 1]

NOORI F M, RIEGLER M, UDDIN M Z, et al

Human activity recognition from multiple sensors data using multi-fusion representations and CNNs

[J]. ACM Transactions on Multimedia Computing, Communications, and Applications, 2020, 16 (2): 1- 19

KAYA Y, TOPUZ E K

Human activity recognition from multiple sensors data using deep CNNs

[J]. Multimedia Tools and Applications, 2024, 83 (4): 10815- 10838

KIM C, LEE W

Human activity recognition by the image type encoding method of 3-axial sensor data

[J]. Applied Sciences, 2023, 13 (8): 4961

DOI:10.3390/app13084961      [本文引用: 1]

LI H, SHRESTHA A, HEIDARI H, et al

Bi-LSTM network for multimodal continuous human activity recognition and fall detection

[J]. IEEE Sensors Journal, 2020, 20 (3): 1191- 1201

[本文引用: 1]

VARSHNEY N, BAKARIYA B, KUSHWAHA A K S, et al

Human activity recognition by combining external features with accelerometer sensor data using deep learning network model

[J]. Multimedia Tools and Applications, 2022, 81 (24): 34633- 34652

DOI:10.1007/s11042-021-11313-0     

UZUNHISARCIKLI E, KAVUNCUOĞLU E, ÖZDEMIR A T

Investigating classification performance of hybrid deep learning and machine learning architectures on activity recognition

[J]. Computational Intelligence, 2022, 38 (4): 1402- 1449

DOI:10.1111/coin.12517      [本文引用: 1]

XING Y, ZHU J, LI Y, et al

An improved spatial temporal graph convolutional network for robust skeleton-based action recognition

[J]. Applied Intelligence, 2023, 53 (4): 4592- 4608

DOI:10.1007/s10489-022-03589-y      [本文引用: 1]

SHI L, XU H, JI W, et al

Real-time human activity recognition system based on capsule and LoRa

[J]. IEEE Sensors Journal, 2021, 21 (1): 667- 677

[本文引用: 1]

USMAN SARWAR M, REHMAN JAVED A, KULSOOM F, et al

PARCIV: recognizing physical activities having complex interclass variations using semantic data of smartphone

[J]. Software: Practice and Experience, 2021, 51 (3): 532- 549

DOI:10.1002/spe.2846      [本文引用: 1]

ARSHAD H, KHAN M A, SHARIF M, et al

Multi-level features fusion and selection for human gait recognition: an optimized framework of Bayesian model and binomial distribution

[J]. International Journal of Machine Learning and Cybernetics, 2019, 10 (12): 3601- 3618

DOI:10.1007/s13042-019-00947-0      [本文引用: 1]

PANDEY A, ZEESHAN M, KUMAR S

Csi-based joint location and activity monitoring for COVID-19 quarantine environments

[J]. IEEE Sensors Journal, 2023, 23 (2): 969- 976

[本文引用: 1]

易子文, 孙中华, 冯金超, 等

用于行为识别的通道可分离卷积神经网络

[J]. 信号处理, 2020, 36 (9): 1497- 1502

[本文引用: 1]

YI Ziwen, SUN Zhonghua, FENG Jinchao, et al

Channel separable convolutional neural network for behavior recognition

[J]. Signal Processing, 2020, 36 (9): 1497- 1502

[本文引用: 1]

ZHANG X, WANG Y, CHEN Y, et al. Short-term wind speed prediction based on GRU [C]// IEEE Sustainable Power and Energy Conference . Beijing: IEEE, 2019: 882-887.

[本文引用: 1]

BAHDANAU D, CHOROWSKI J, SERDYUK D, et al. End-to-end attention-based large vocabulary speech recognition [C]// IEEE International Conference on Acoustics, Speech and Signal Processing . Shanghai: IEEE, 2016: 4945–4949.

[本文引用: 1]

/