表情识别FER | 局部特征学习和Handcrafted特征结合

简介: 作者的BOVW模型,分测试和训练两个阶段。在训练阶段,作者对所有训练图片,提取了稠密SIFT特征,然后用K-mean聚类的方式,量化这些描述子,成为visual word(VW),视觉词汇,个人认为主要是针对bag这种投票集成算法,针对视觉图像定义的。这些VW存储在k-d树形成的随机森林里以减少搜索代价。在建立好词汇表后,训练和测试等价,意思就是训练和测试没有之前离线分类那种明显的区分了,后面有用到KNN,所以,训练和测试没有明显区分。

作者基于局部特征学习和手工特征,集成模型(BOVW)的方式,在FER2013上达到75.42%的精度,在FER+上达到86.71%的精度。超过所有比赛结果,目前最好。


640.png



本文主要包含:多CNN模型特征提取、手工特征提取,两者模型集成、混合两种类型的特征之后,作者设计了一个局部学习框架,分如下三步:


   1.采用KNN模型,针对每张测试图片,选择与其最类似的训练样本(若干)


   2.利用上面1得到的样本数据,训练出1:N的多分类器SVM,


   3.该SVM用来预测每张测试图片的类别。


下面具体说明:


1.多CNN模型特征提取


作者采用了VGG-Face,VGG-13,VGG-f三种CNN网络模型,其中,VGG-f,VGG-Face作者采用预训练结果进行,之后三种模型训练,采用SGD,batch 512,动量0.9,所有模型基于数据水平翻转做了增强。


VGG-Face16层,是作者采用的最深的一个网络结构,因为该网络结构预训练的网络权重是用作人脸识别,因此,作者固定了卷积层参数,只训练全连接层参数来适应面部表示识别,并修改了最后的softmax输出类别数,作者采用一个0均值单位方差的高斯分布随机初始化该层。学习速率0.0001,学习策略为验证误差不在下降超过10个epoch时下降10%。作者采用DSD方式fineturn了VGG-Face网络模型,在FER2013数据集上,第一次训练采用Dense方式训练110epoch,然后采用 sparse方式训练40个epoch,稀疏比0.6,之后,再用Dense方式,训练了40个epoch,接着又做了一次sparse训练10次epoch,还是0.6稀疏比。同样,作者也在FER+数据集上训练了FC层,8类,DSD训练过程为:250个Dense epoch->60个Sparse  epoch->30个Dense epoch->60个Sparse epoch。


VGG-F,8层,预训练为物体分类网络,作者fineturn全层,学习速率0.0001,学习策略为验证误差不在下降超过10个epoch时下降10%。作者在每个FC后面,增加一个dropout(0.5),同时也在最后两个卷积层后增加了dropout(0.35)。(话说,都18年的论文了,怎么还有人改这种模型,用这种思路),同样,也采用DSD的方式 ,训练。但是,不同的地方在于,作者对VGG-F的前两个卷积层,在Sparse阶段,做了部分抑制,因为这两层对验证误差,有较高的负面影响,如下图:


640.png


因此,作者采用分段稀疏比的方式,每层的最高稀疏比,在{0.3,0.4,0.5,0.6}。这种方式,在FER2013上,对验证集的精度影响不超过0.5%。最终的DSD训练方式:300个Dense epoch->50个Sparse  epoch->50个Dense epoch->50个Sparse epoch->100个Dense epoch->150个Sparse epoch->50个Dense epoch,共750个epoch。在FER+上,学习速率0.001,同样采用DSD,但是没有使用权重抑制,采用一样的dropout机制,但是卷积层后面的占比下降到0.25,DSD过程为:



60个Dense epoch->20个Sparse  epoch->20个Dense epoch


VGG-13该网络结构,只在FER+数据集上重新设计,主要的参数,不在多说了,作者也没啥提升,尤其是DSD没有帮助,因此,没有使用DSD方式fineturn。有兴趣的可以看论文。


2.手动特征提取


作者的BOVW模型,分测试和训练两个阶段。在训练阶段,作者对所有训练图片,提取了稠密SIFT特征,然后用K-mean聚类的方式,量化这些描述子,成为visual word(VW),视觉词汇,个人认为主要是针对bag这种投票集成算法,针对视觉图像定义的。这些VW存储在k-d树形成的随机森林里以减少搜索代价。在建立好词汇表后,训练和测试等价,意思就是训练和测试没有之前离线分类那种明显的区分了,后面有用到KNN,所以,训练和测试没有明显区分。


对每张测试/训练图像,存储每张图片上,是否存在每个VW元素的状态,形成二值特征值向量。标准的BOVW模型,没有考虑VW元素之间的空间信息,所以作者通过将图片分块,针对每块提取上面的二值向量特征,然后把每个块得到的二值特征联合起来,形成最终的特征表示。这么做的原因,通俗的解释就是人脸特征表示,尤其是表示的特征,实际上只跟五官等关键区域有关。例如AUs,所以,作者,通过这种方式建立起二值特征之间的空间联系。


3.特征融合与学习


模型融合,作者在学习阶段之前,通过联合自动和手动特征,实现模型融合。其中,自动特征,采用多个CNN网络模型生成,去除了softmax层,即最后的FC层特征,作为输入图片的自动特征表示,并用L2-norm归一化。BOVW只有手动特征,即上面生成的二值向量,也用L2-norm归一化。


  • 全局学习,作者采用线性SVM进行1:N分类。


  • 局部学习,局部学习的目的在于,针对每个类别下的分类效果,进行局部调整,即相对于全部类别一起分,作者分解成针对每个类别,与其他类别的分类训练独立的分类器,以此提高性能。局部学习算法如下:


1.针对每张测试图片,选择与其特征类似的训练样本,这里采用KNN实现。    


2.针对1选择的这些图片,训练一个线性SVM分类器,1:N。    


3.根据上面2得到的SVM,预测测试图片的类别。


需要注意的是,相似度度量,不是欧式距离,而是余弦距离。


巧合的是,这些每个输入空间的线性SVM分类器,形成的局部学习框架,在整体上来看,却变成了非线性的。这种结构的好处如下:


640.png


4.FER结果


从结果可以看出:


  1. VGG-Face,原始版本,单模型加上局部SVM,已经到达68.96%。作者fineturn后,增加数据增强,结果达到72.11%,但是移除softmax,用局部SVM代替后,精度反而下降了0.61%。


  1. VGG-F,原始版本,实际效果只有59.38%,在此基础上增加SVM,也只有66.09%,这应该是局部SVM的作用。作者fineturn后,达到70.30%。移除softmax后,增加SVM,70.60%。


  1. VGG-1366.87%比其他都低。


其他结果如下图:


640.png

640.png


最终的最佳效果,是多个模型融合出来的特征组合,即BOVW特征向量,预训练VGG-Face, Fineturn VGG-Face,fineturn VGG-F,VGG-13四个CNN网络结构提取出的深度特征,最终采用局部SVM的方式,达到75.42.


其他基于FER+的,不在赘述。有兴趣的可以看论文。

相关文章
|
8月前
|
机器学习/深度学习 自然语言处理 数据可视化
深度探索变分自编码器在无监督特征学习中的应用
【4月更文挑战第20天】 在深度学习领域,无监督学习一直是研究的热点问题之一。本文聚焦于一种前沿的生成模型——变分自编码器(Variational Autoencoder, VAE),探讨其在无监督特征学习中的关键作用与应用潜力。不同于传统的摘要形式,本文将直接深入VAE的核心机制,分析其如何通过引入随机隐变量和重参数化技巧,实现对复杂数据分布的有效建模。文章还将展示VAE在多个实际数据集上的应用结果,验证其作为无监督特征提取工具的有效性和普适性。通过理论与实践的结合,本文旨在为读者提供关于VAE在无监督特征学习领域的全面认识。
|
6月前
|
机器学习/深度学习 编解码 计算机视觉
【YOLOv8改进 - 特征融合NECK】 GIRAFFEDET之GFPN :广义特征金字塔网络,高效地融合多尺度特征
YOLOv8专栏探讨了目标检测的创新改进,提出了GiraffeDet,一种轻量级主干和深度颈部模块结合的高效检测网络。GiraffeDet使用S2D-chain和GFPN,优化多尺度信息交换,提升检测性能。代码和论文可在相关链接找到。GFPN通过跳跃和跨尺度连接增强信息融合。文章还展示了核心组件如SPPV4、Focus和CSPStage的代码实现。
|
8月前
|
机器学习/深度学习 存储 数据可视化
MambaOut:状态空间模型并不适合图像的分类任务
该论文研究了Mamba架构(含状态空间模型SSM)在视觉任务(图像分类、目标检测、语义分割)中的必要性。实验表明,Mamba在这些任务中效果不如传统卷积和注意力模型。论文提出,SSM更适合长序列和自回归任务,而非视觉任务。MambaOut(不带SSM的门控CNN块)在图像分类上优于视觉Mamba,但在检测和分割任务中略逊一筹,暗示SSM在这类任务中可能仍有价值。研究还探讨了Mamba在处理长序列任务时的效率和局部信息整合能力。尽管整体表现一般,但论文为优化不同视觉任务的模型架构提供了新视角。
117 2
|
机器学习/深度学习 传感器 编解码
史上最全 | BEV感知算法综述(基于图像/Lidar/多模态数据的3D检测与分割任务)
以视觉为中心的俯视图(BEV)感知最近受到了广泛的关注,因其可以自然地呈现自然场景且对融合更友好。随着深度学习的快速发展,许多新颖的方法尝试解决以视觉为中心的BEV感知,但是目前还缺乏对该领域的综述类文章。本文对以视觉为中心的BEV感知及其扩展的方法进行了全面的综述调研,并提供了深入的分析和结果比较,进一步思考未来可能的研究方向。如下图所示,目前的工作可以根据视角变换分为两大类,即基于几何变换和基于网络变换。前者利用相机的物理原理,以可解释性的方式转换视图。后者则使用神经网络将透视图(PV)投影到BEV上。
史上最全 | BEV感知算法综述(基于图像/Lidar/多模态数据的3D检测与分割任务)
|
8月前
|
机器学习/深度学习 编解码 人工智能
论文介绍:HigherHRNet——用于自下而上人体姿态估计的尺度感知表示学习
【5月更文挑战第22天】HigherHRNet是针对自下而上人体姿态估计的尺度感知方法,通过构建高分辨率特征金字塔,改善多尺度人体姿态估计的准确性。该论文提出的新架构在COCO测试集上提高了2.5%的中号人物平均精度,达到70.5%的AP,且在CrowdPose上超越所有自上而下方法,实现67.6%的AP。作者通过消融实验验证了各个组件的重要性,并指出未来可优化模型以适应更复杂场景。论文链接:[https://arxiv.org/abs/1908.10357](https://arxiv.org/abs/1908.10357)
54 1
|
机器学习/深度学习 编解码 移动开发
【论文解读】——基于多尺度卷积网络的遥感目标检测研究(姚群力,胡显,雷宏)
【论文解读】——基于多尺度卷积网络的遥感目标检测研究(姚群力,胡显,雷宏)
【论文解读】——基于多尺度卷积网络的遥感目标检测研究(姚群力,胡显,雷宏)
|
8月前
|
编解码 算法 自动驾驶
【计算机视觉】基于光流特征的目标跟踪算法LK光流法的讲解(图文解释 超详细)
【计算机视觉】基于光流特征的目标跟踪算法LK光流法的讲解(图文解释 超详细)
515 0
|
8月前
|
机器学习/深度学习 文字识别 算法
[Halcon&图像] 基于多层神经网络MLP分类器的思想提取颜色区域
[Halcon&图像] 基于多层神经网络MLP分类器的思想提取颜色区域
172 0
|
机器学习/深度学习 传感器 算法
基于监督学习的多模态MRI脑肿瘤分割,使用来自超体素的纹理特征(Matlab代码实现)
基于监督学习的多模态MRI脑肿瘤分割,使用来自超体素的纹理特征(Matlab代码实现)
|
机器学习/深度学习 存储 数据采集
使用深度神经网络对肿瘤图像进行分类
使用 Inception-v3 深度神经网络对可能不适合内存的多分辨率全玻片图像 (WSI) 进行分类。 用于肿瘤分类的深度学习方法依赖于数字病理学,其中整个组织切片被成像和数字化。生成的 WSI 具有高分辨率,大约为 200,000 x 100,000 像素。WSI 通常以多分辨率格式存储,以促进图像的高效显示、导航和处理。
167 0

热门文章

最新文章