APP下载

DCNN-DGML融合深度神经网络步态识别算法

2021-11-25肖秦琨

自动化与仪表 2021年11期
关键词:精确度层数步态

王 欢,肖秦琨

(西安工业大学 电子信息工程学院,西安710021)

步态识别一直以来是科研界研究关注的热点,其中也涌现出一大批优秀的算法。现有的步态识别可以分为基于非模型和基于模型的步态识别算法。

在基于非模型的步态识别算法中,文献[1]提出分割步态轮廓,统计并分析步态轮廓的形状进行步态识别;文献[2]引出步态能量图(gait energy image,GEI)概念,经过加权平均处理一个步态周期的能量图;文献[3]提出一种改进对数方法对步态能量图提取相位一致的特征,补偿了噪声并进行判别分析,正确识别率得到提升,但缺点是需要很高的频率,所以步态特征有所损失;文献[4]利用多种融合方法将静态与动态两种特征进行融合,识别结果有提升但等错率还是比较大。从以上不难看出,步态轮廓图的分割过程会产生误差且会引入视角、衣着和携带物等协变量,分类结果并不理想。步态能量图同样也存在缺陷,它在轮廓序列的周期叠加后会丢失时序信息。

基于模型的步态识别算法可以避免行人行走过程中物体遮挡的问题,而且对于视角的变化敏感度低。文献[5]从人体轮廓提取骨架关键点,然后以关键点之间的距离和角度作为特征通过支持向量机进行步态识别;由于手工提取的骨架繁琐且精确度低,文献[6]提出一种针对Kinect 骨骼数据应用贝叶斯分类器分析步态障碍和识别帕金森病的方法,分类结果不理想;文献[7]利用Openpose 提取骨架关键点,再将其放入PTSN 网络进行步态特征的学习,完成了跨视角识别。

综上所述,本文首先利用微软Kinect2.0 传感器直接获得骨架信息表征人体骨架步态特征;其次利用多层特征融合机制改进GoogleNet 神经网络提取步态空间特征;同时,在LSTM 的基础上提出动态门记忆学习网络; 最后讨论算法的最佳训练参数,并与其它方法进行性能对比。

1 DCNN-DGML 融合网络

1.1 基于深度学习的步态识别算法研究

人的步态数据的变化遵循时空规律,因此本文提出的人体骨架步态识别深度学习网络模型包含视觉空间特征提取器深度卷积神经网络(deep con volutional neural network,DCNN)与可进行顺序时间特征识别任务的动态门记忆学习(dynamic gated memory learning,DGML)网络。本算法能够对人体步态动态时空信号进行准确建模,进而实现快速动态模式识别。

1.2 深度卷积神经网络——DCNN

在深度学习中,通过增加神经网络深度和宽度的方式以提高网络识别的准确性和识别速度,但与此同时会使网络复杂,从而带来梯度爆炸和过拟合等问题。针对此问题,GoogleNet[8]网络于2014年提出Inception 模块,如图1 所示,巧妙解决了网络的深度和宽度的局限性。

图1 Inception 模块示意图Fig.1 Schematic diagram of Inception module

Inception 模块的设计思路是拟化最优稀疏结构,使用4 种不同大小的卷积核对输入特征图进行特征提取。第1 个模块是1×1 卷积核,利用小感受野提取输入图相关性最高的特征;第2,3 个模块是1×1 卷积核分别与3×3 卷积核和5×5 卷积核串联,这样的设置减少了通道数和近一成的参数运算量,提取了一个较大感受野的特征; 第4 个模块是3×3池化层与卷积核串联,4 个模块都在聚合操作下合并。在感受野保持不变的情况下,GoogleNet 利用对应尺寸下的小卷积核代替大卷积核,网络的深度和运算量都得到提升。

步态视频的特征需要结合全局的运动轨迹和局部的步态变化描述,故本文对GoogleNet 卷积神经网络进行改进,从而达到从视频片段中提取空间特征的目标。基于改进GoogleNet 空间特征提取网络如图2 所示。

图2 基于改进GoogleNet 空间特征提取网络Fig.2 Based on improved GoogleNet spatial feature extraction network

该网络保持原有GoogleNet 网络结构不变,在Inception(4a),Inception(4d)和Inception(5b)网络模块后分别增加新的支路。支路增加1 个1×1 卷积层,其意义在于利用1×1 卷积层将不同尺度的特征调整为同一尺度特征用于特征融合,利用不同特征感受野的不同特点,将浅层特征和深层特征相融合,从而提高最终特征的完整性和有效性。采用1×1卷积层集和池化(SP)层代替原有的全局平均池化层,1×1 卷积层用于特征尺度调整,并将其结果输入到SP 层,对池化后的特征进行加法操作,将整个步态周期的特征组合到一起,再利用最大池化层得到最终输出特征。其中SP 层包含3 个平行的池化层,分别为最大池化层、平均池化层和中值池化层。

1.3 动态门记忆学习

递归神经网络[9](recurrent neural network,RNN)是一种结构简单且能分析处理时间序列数据的强大学习算法。相比于多层感知器,该算法能处理序列隐藏状态关键数据,并更新序列数据的先前和现存信息。长期短期记忆序列(long short term memory,LSTM)[10]和门控循环单元(gated recurrent unit,GRU)[11]是递归神经网络的流行结构,其解决了递归神经网络梯度爆炸的问题,且在处理时间序列数据的问题上表现出良好的性能,例如语音识别、机器翻译、 音频分析以及基于骨架的动作识别等方面,故利用递归神经网络处理骨架步态数据是可行的。

从网络结构来看,GRU 和LSTM 具有相似性能,但至今仍未证明前者可替代LSTM,故LSTM 仍具有研究价值。LSTM 细胞结构如图3 所示,其巧妙之处在于通过增加输入门限、遗忘门限和输出门限以调整自循环的权重,从而解决梯度消失和梯度膨胀的问题。

图3 LSTM 细胞示意图Fig.3 Schematic diagram of LSTM cells

每个LSTM 单元的计算公式如下:

式中:ft表示遗忘限;it表示输入门限表示前一时刻cell 状态;Ct表示cell 状态;ot表示输出门限;ht表示当前输入单元;ht-1表示前一时刻单元的输出。

在训练期间,门具有自主处理内部结构状态的能力,但会学习一些冗余信息,而长时间的学习会导致门仅处理相似信息。针对此问题,在基于LSTM的结构上,增加新的可训练的链接[12]以设计出动态门记忆学习网络(dynamic gated memory learning,DGML)。该网络采用可训练的链条将输入门、输出门和忘记门两两相连,以产生自循环状态。细胞被每个门自循环连接和3 个门互循环连接所包围。DGML 结构如图4 所示,其核心在于门信息共享。在图像识别模式中,3 个门可以通过彼此协作以缓解学习压力,转移并减小系统误差。

图4 DGML 结构图Fig.4 DGML structure diagram

(1)DGML 正向通道学习

在DGML 正向通道学习中,假设一个神经网络包含输入层I,循环隐藏层H(其包含模块A,一个模块A 包含多个细胞c)和输出层K,且所有的层都是全连接的。其中,当单元j=w,φ,l 时,vj表示输入;φj表示网络的激活函数;χj为一个单元的激活函数;fc表示输入门的挤压信息;gc表示一个内部细胞c 挤压信息。定义和在t=0 时为0。

输入门:

忘记门:

细胞输入:

细胞状态:

输出门:

细胞输出:

(2)DGML 反向通道学习

细胞输出:

输出门:

细胞状态:

细胞输入:

忘记门:

输入门:

2 实验

2.1 实验数据集建立

为了测试算法的鲁棒性,利用新型体感外设Kinect2.0 采集身高体型不同的10 位测试者各自骨架步态信息。在镜头方向与行走方向呈90°的视角下,测试者1 到测试者10 独自在Kinect2.0 摄影范围内正常行走20 次,每次30~40 s,得到200 个运动视频序列,然后将每段视频平均分成10 段,以形成10 类姓名标签的2000 个骨架步态短视频序列数据集。

2.2 实验结果与分析

本文在这一部分列出相关实验参数[13],优化和分析所提模型并讨论实验结果,以证明系统的可靠性。最后将实验结果和几种最先进的竞争网络进行比较。

数据集分为90%训练集和10%测试集,该算法将网络模型根据骨架步态特征的目标参数进行优化。网络设置的最佳超参数值如表1 所示。

表1 超参数Tab.1 Hyperparameters

为了清晰地看到网络在训练期间精确度和损失度的变化,实验记录了训练集和验证集每500 步迭代的结果,如图5 所示。可以看出,随着迭代次数的增加,精确度也在增加,损失函数急速下降。

图5 组合网络模型Fig.5 Combined network model

复杂背景下的步态识别所产生的混淆矩阵(confusion matrix),如图6 所示。矩阵中位于主对角线上的元素表示骨架步态数据集按照身份特征被正确分类的比例及个数,其它位置为骨架步态数据集被误识为其它个体的比例和个数。从图6 骨架步态识别结果可以看出,1 个标签为“xue”的骨架序列被误认为标签“gao”;1 个标签为“xue”的骨架序列被误认为标签“yu”;1 个标签为“yan”的骨架序列被误认为标签“yang”;其它标签为全部被正确识别的骨架序列。

图6 DCNN+DGML 融合架构的混淆矩阵Fig.6 Confusion matrix of DCNN+DGML fusion architecture

学习率是最重要的超参数,能直接影响模型收敛速度和找到最佳下坡路径的能力。故学习率设置太小或太大都不适合。参数设置太小会使系统更新得很慢,需要很长的训练时间;参数设置太大,会直接引起损失函数震荡,甚至不能收敛,模型的分类能力也会变得很差。通过调整学习率对网络模型进行优化,分类准确率的结果展示如表2所示。

表2 学习率对模型分类准确率的影响Tab.2 Effect of learning rate on model classification accuracy

从表2 可以看出当学习率设置为0.0001 时,精确度最高为96%。

为了观察DGML 的层数对分类精确度的影响,保持DCNN 的参数不变,设置DGML 的层数在1,2,3 范围内变化,每层单元数为2000,以建立此网络模型。层数对网络模型的影响曲线如图7所示,DGML 不同层的分类精度统计结果如表3所示。

图7 DGML 层数和精度之间的曲线关系Fig.7 Curve relationship between the number of DGML layers and accuracy

表3 不同DGML 层数的分类准确率Tab.3 Classification accuracy of different DGML layers

从图7 可以看到DGML 的层数对于网络收敛速度和迭代的影响。训练在迭代300 步之前,层数k=1 的迭代速度快,但是随着迭代步数的增加,层数k=3 的收敛速度赶上层数k=1 的网络,原因在于层数越多训练的参数多,但层数k=1 的网络一直平稳上升,最后达到最高精确度。

从表3 可以看出,实验效果最佳的是1 层的DGML,精确度达到93%。随着DGML 层数目的增加,分类精确度并没有随之增加,反而DGML 层数为1 的实验效果优于层数为2,3 的分类结果。这表明并不是层数越深,效果越好。因此本文选择一层的DGML。

为了验证DGML 的性能,基于同一数据集将本文提出模型和biLSTM,GRU 进行比较。模型迭代曲线结果如图8 所示。

图8 DGML,biLSTM 和GRU 系统的迭代曲线Fig.8 Iterative graph of DGML,biLSTM and GRU models

从图8 发现,DGML 模型相较于biLSTM 和GRU 系统表现出良好的收敛性能,精度-迭代速度和损失-迭代速度最快且精确度最高。虽然增加了门连接机制,但是并没有产生额外的计算成本。通过门之间的合作机制可以提取更完整且数量更多的步态特征。随着训练时间的加长,分类分数也在提高。从另一方面来说,在小数据集上GRU 的收敛速度较biLSTM 稍快。

为了验证改进后的GoogleNet 对于步态各层空间特征的融合效果,本文将具有特征融合机制的GoogleNet 和GoogleNet,AlexNet,ResNet 在相同的数据集进行实验比较,并进行重复实验以避免误差。各个模型的分类结果如表4 所示。

从表4 可以看出,在此研究中,改进GoogleNet网络在数据集上的平均精确度最高,比原始的GoogleNet 的分类精度高约3.5%,ResNet 网络虽然比GoogleNet 结构好,但在数据集上过拟合,识别效果并不好。

表4 各种模型对骨架步态分类的准确性(均值)Tab.4 Accuracy of various models for skeletal gait classification(mean value)

3 结语

本文提出的DCNN+DGML 模型在自建步态数据库上表现突出。证明了此模型是可以通过训练来捕获时空状态相关性的视觉识别模型。与其它算法相比,该算法不用手动提取骨架步态特征,避免了选择最佳特征的复杂性,对于骨架步态识别达到了显著的成果。此融合模型在空间和时间上都很深,可以处理输入数据中的时空相关性强的信息。

猜你喜欢

精确度层数步态
基于步态参数分析的老年跌倒人群步态特征研究
填筑层数对土石坝应力变形的影响研究
上海发布药品包装物减量指南
研究核心素养呈现特征提高复习教学精确度
“硬核”定位系统入驻兖矿集团,精确度以厘米计算
MoS2薄膜电子性质随层数变化的理论研究
基于面部和步态识别的儿童走失寻回系统
基于Kinect的学步期幼儿自然步态提取
步态研究及其在踝关节不稳中的应用进展
住在哪一层