温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
迁移
学习
VGG
16
表情
识别
魏小明
人工智能本栏目责任编辑:唐一东Computer Knowledge and Technology电脑知识与技术第19卷第1期(2023年1月)第19卷第1期(2023年1月)基于迁移学习VGG-16的微表情识别魏小明(河北工程大学,河北 邯郸 056004)摘要:为提高微表情识别精度更好地为微表情分类,提出迁移学习技术与VGG-16模型相结合的微表情识别方法。以CASME、CASME作为数据集,在预处理阶段通过对图像进行几何变换、均衡化构建微表情数据集。利用迁移学习后的VGG-16为模型,用数据增强后的数据集,在相同参数环境下,与AlexNet、GooLeNet、ResNet-18模型做对比,探究了不同模型对8种微表情识别的影响,同时探究了不同数据集对模型的性能影响。实验结果:基于迁移学习的VGG-16模型,训练精度及训练损失值均优于参照模型,模型识别精度与数据集数量成正比。关键词:微表情识别;迁移学习;VGG-16;数据增强中图分类号:TP391文献标识码:A文章编号:1009-3044(2023)01-0031-04开放科学(资源服务)标识码(OSID):微表情是一种一闪而过的面部表情,通常在一个情绪唤起之后快速出现,很难抑制1往往能体现出人们的真实想法。由于微表情可应用于医学、犯罪侦查、安防、测谎等重要领域,微表情识别的研究受到国内外的广泛关注。近年来,计算机技术不断发展,微表情识别技术相比之前有了很大的提高。微表情识别技术主要分为传统方法和基于深度学习的方法。在传统方法例如LBP-TOP、LBP-TOP与光流结合等,由于此类方法主要采用手工制作来提取特征,导致识别精度和效率不高2,性价比低于深度学习方法。卷积神经网络(Convolutional neural network,CNN)在计算机视觉领域应用得很成功,并相继推出了几个经典的网络模型。其中 VGGNet 更是在 2014 年LSVRC2014比赛分类项目的第二名和定位项目的第一名3。VGG-16模型,由多组卷积层、池化层、激活层组合而成,有着结构简洁的特点,它通过增加结构深度,更加有效的提升模型性能,提升拓展性,减少出错概率。利用迁移学习,能有效地提高识别分类效率及泛化性。本研究拟采用基于迁移学习的VGG-16作为训练模型,与基于其他网络模型做对比,探究微表情识别精度。1 数据集与预处理1.1 实验数据实验所用到的数据集来源于中国科学院心理研究所的 CASME4、CASME5。1.2 图像预处理1.2.1 数据扩充为了防止过拟合现象的发生,本研究对已有图像进行数据增强。通过对图像进行几何变换:翻转(图d)、水平镜像(图f);对比度变化:对比度增强(图b)、对比度减弱(图c);设置椒盐噪声(图a)的方法,实现样本扩充。为减少因数据样本来源不同,导致样本大小及格式的不同,将所有图像进行大小及格式统一化操作,图像增强效果如图1所示。(a)椒盐噪声(b)对比度增强(c)对比度减弱(d)垂直翻转(e)原始图像(f)水平镜像图1 图像增强效果数据集根据微表情类别划分为8个微表情标签,收稿日期:2022-10-30作者简介:魏小明(1995),男,河北邯郸人,主要研究方向为图像识别。E-mail:http:/Tel:+86-551-65690963 65690964ISSN 1009-3044Computer Knowledge and Technology电脑知识与技术Vol.19,No.1,January202331DOI:10.14004/ki.ckt.2023.0053本栏目责任编辑:唐一东人工智能Computer Knowledge and Technology电脑知识与技术第19卷第1期(2023年1月)第19卷第1期(2023年1月)从Fear到Repression分别对应18的标签编号。由表1得知,各个类别的微表情均扩充了8倍。样本总数由原来的3638张扩充到现在的29104张。表1CASME1数据集样本数量微表情类别FearTenseDisgustSadnessSurpriseContemptHappinessRepression总 计原始数量/张621515715117316652346143638数据增强后数量/张49612120572093625285201872491229104标 签12345678-1.2.2 数据均衡化为尽量消除样本分布不均的现象,对样本数据进行均衡化处理。具体做法是将数据增强后的各类样本数量进行排序,取中位数作为样本数量的上限值,若样本数量超过此值则随机剔除直至满足条件。样本未均衡化与均衡化后的分布情况见图2、图3。图2 未均衡化样本分布情况图3 均衡化后样本分布情况1.3 搭建训练模型1.3.1 VGG-16网络模型VGG-16网络模型结构见图4。VGG-16网络模型开始由输入层(ImageInputLayer)输入目标图像后,分别做两次卷积(Concolution Layer)和两次relu(激活层)后作最大池化(Max pooling)处理。将上述两次卷积+两次relu层+一次最大池化为一组,分别作五组处理,后面经过两组全连接层(Fully Connected Layer)+relu层+dropout(全连接)层后,进入softmax分类层后,最后由输出层(Image output Layer)输出目标图像。1.3.2 图像分类全连接层会把卷积、激活、池化后输出的二位特征图(feature map),串联在一起转化为(N*1)的一个一维向量,然后将向量结果输入softmax层。softmax层多用于分类问题的处理,它不再唯一地确定某一个最大值,而是输出每个分类结果的概率值,表示这个类别的可能性,它将选择最大概率值对应的微表情种类作为输出。softmax函数表达式为:si=eaii=1neai(1)式(1)中,si表示当前单元的指数与所有单元指数和的比值(概率值),n表示微表情类别总数,ai表示当前分类输出si的上一级输出。输出层通过交叉熵计算softmax函数的损失函数得出误差值,评估当前训练得到的概率分布与真实分布的差异情况6,便于梯度下降反向传播,利于优化。交叉熵损失函数表达式为:H(p,q)=-xp(x)logq(x)(2)式(2)中:p代表真实值,q代表预测值,p(x)是指真实分布的概率,q(x)是模型通过数据计算出来的概率估计。1.3.3 迁移学习深度学习中在计算机视觉任务和自然语言处理任务中将预训练的模型作为新模型的起点是一种常用的方法,通常这些预训练的模型在开发神经网络的时候已经消耗了巨大的时间资源和计算资源,迁移学习可以将已习得的强大技能迁移到相关的问题上7。图4 VGG-16网络模型结构32人工智能本栏目责任编辑:唐一东Computer Knowledge and Technology电脑知识与技术第19卷第1期(2023年1月)第19卷第1期(2023年1月)迁移学习有着:1)使用不同的测试数据时,不用重复训练新模型,大大降低工作量;2)当使用新的数据集时,不需要变更训练数据,降低工作难度及减少经费支出;3)不用考虑数据集过期问题;4)对于快速出现的新领域,能够快速迁移和应用,体现时效性优势的优点8。因此本文选用VGG-16作为预训练模型,加入迁移学习方法,研究微表情的分类。2 实验结果本研究实验方法基于Matlab2020b平台,操作系统是 Windows 10 64 位,CPU 与 GPU 分别为 intel i7-10700与12G的英伟达RTC3060显卡并利用Cuda10.1进行加速训练,以及内存为32GB的微星MAC B460M主板。VGG-16模型的参数设置见表2。表2 VGG-16模型的参数设置参数名称训练批次/次训练最大轮数/轮每轮迭代/次共迭代/次验证频率权重衰减初始学习率Dropout层随机丢弃概率训练批次/次参数值3230126537950100迭代/次1x10-50.0010.532本 研 究 选 取 AlexNet、GoogLeNet、SqueezeNet、VGG-16四种模型,验证笔者所用方法的准确性与优异性。将4种模型设置相同参数,在同一条件下进行训练和验证。训练曲线图见图5与图6。训练精度曲线表示了随着迭代次数的增长,预测模型精度的波动情况9。由图5 得知,VGG-16模型收敛速度最快,SqueezeNet收敛速度最慢。在1000次迭代时,只有VGG-16与AlexNet的训练精度达到了90%以上,4000次迭代后,4种模型趋于收敛。训练损失曲线表示了随着迭代次数的增长,真实模型值与预测模型值的偏差波动情况,损失值越小,表明模型精度越高,出错概率越小9。由图6得知,在1000次迭代时SqueezeNet损失值为0.5,其余3种模型损失之均在0.5以下,同样是迭代4000次后4种模型损失值区域收敛。4种模型的具体训练结果见表2。由表2 可得,VGG16虽然在训练时间以及模型大小上没有明显优势,但其训练精度与训练损失值的表现均好于其余3种模型,分别为:训练精度95.02%,训练损失值0.0121。0123456789迭代次数/(103)102030405060708090100训练精度/%AlexNetVGG-16GoogLeNetSqueezeNet图5 训练精度曲线0123456789迭代次数/(103)00.511.522.53训练损失值AlexNetVGG-16GoogLeNetSqueezeNet图6 训练损失曲线表3 4种模型训练结果名 称AlexNetVGG16GoogLeNetSqueezeNet训练时间/h0.644.771.050.47模型大小/MB20247621.32.64训练精度/%94.9195.0293.9794.48训练损失值0.01730.01210.04880.0319为验证不同数据集下VGG16模型的识别性能,本人分别采用CASME1、CASME2两组数据集进行训练、验证以及测试出模型的精度,见表3。两组数据集均采用了数据增强操作,其中,图片数量是指数据增强后用于模型训练以及测试的样本数量。由表3 可得,CASME2数据集中,训练精度、验证精度、测试精度均在95%以上,分别为95.55%、95.21%、95.02%,全方位高于CASME1数据集的95.02%、94.94%、94.09%。笔者分析,数据集样本数量越高,其精度及泛化能力越高。表4 不同数据集下VGG16模型识别性能数据集名称CASME1CASME2图片数量/张1262419063类型微表情微表情训练精度/%95.0295.55验证精度/%94.9495.21测试精度/%94.0995.0233本栏目责任编辑:唐一东人工智能Computer Knowledge and Technology电脑知识与技术第19卷第1期(2023年1月)第19卷第1期(2023年1月)3 结论与不足笔者在对微表情识别的研究中,采用了VGG16模型与迁移学习相结合的方法,对微表情进行识别与分类。笔 者 通 过 此 模 型 与 AlexNet、GoogLeNet、SqueezeNet三种模型,在设置了相同参数的环境下,对实验结果进行比较,实验结果可知此笔者所提模型无论在训练精度还是训练损失值上的表现均好于3种参照模型,其训练精度达到了 95.2%,训练损失值为0.0121。笔者还在不同数据集下探究了VGG16模型识别性能,实验结果表明,模型精度与图片数量成正比,同时,迁移学习技术改善了模型的收敛情况,对提高模型性能提供了帮助。此模型也有明显的不足之处,模型识别精度虽略微高于参照模型识别精度,但它的训练时间,以及模型大小,大大超出了参照模型,效率大打折扣。故此模型在时间及空间上还有很大的优化空间。参考文献:1 Baron R A,Byrne D.社会心理学M.黄敏儿,王飞雪,译.上海:华东师范大学出版社,2004.2 诗雨桐,袁德成.基于深度学习的面部微表情识别J.沈阳化工大学学