Residual Compensation Networks for Heterogeneous Face Recognition阅读笔记

发布于2019年7月。

1 动机

  • 异质人脸识别存在模态差异较大和训练图像不足的问题。
  • 模型使用小数据集训练,容易出现过拟合现象;使用参数共享的CNN去提取NIR和VIS图像特征会遭受模态差异。

2 工作

  • 提出了残差补偿卷积神经网络(RCN)来缓解HFR的过度拟合并同时减少模态差异,并且可以扩展到其他跨域任务中。
  • 设计了一个易于实现的模态差异损失(MD损失),以有效地减少模态差异。
  • 该方法在四个HFR数据集上达到了最先进的性能。即在IIIT-D Viewed Sketch上占90.34%,在Forensic Sketch上占62.26%,在CASIA NIR-VIS 2.0上占99.32%,在CUHK NIR-VIS上占99.44% 。

3 优势

  • 保持与VIS模态完全相同的表示能力。
  • 通过调整参数很少的轻量级RC模块,可以有效地减少过拟合。
  • 可从大规模配对图像输入中受益,从而减轻了过拟合。
  • 通过基于余弦的MD Loss来减少模态差异,同时通过标准的交叉熵损失来保持身份间的鉴别力。

4 整体结构

在这里插入图片描述
训练流程:

  1. 将相同标签但是模态不同的图像对(例如NIR和VIS)输入到RCN中。
  2. 左分支用于提取NIR图像特征,首先经过一个ResNet-10网络输出128维特征,然后再将特征送入RC模块输出最终的特征。
  3. 右分支用于提取VIS图像特征,经过一个ResNet-10网络输出128维特征。其中左右分支的ResNet-10网络是权重共享的。
  4. 使用Softmax Loss和MD Loss对模型进行端到端的训练。

注意点:

  • 由于FC层中有大量参数,因此仅使用单个FC层。更多的FC层可能容易导致过度拟合。
  • 非线性激活函数用于提高表示能力,因为残留补偿不是必需的线性映射,并且VIS和NIR之间的关系是高度非线性的。

5 RC模块

在这里插入图片描述

  1. X 表示图像提取的特征
  2. f 表示预训练的CNN网络
  3. theta 表示CNN网络的参数
  4. I 表示输入图像
  5. v 表示VIS域
  6. n 表示NIR域
  • 上述公式表示用同一个网络分别提取相同标签的VIS图像特征和NIR图像特征。但是预训练的CNN可能会带来模态差异。
    在这里插入图片描述

  • 两个模态特征之前存在相同的隐藏分量。
    在这里插入图片描述

  • 上式说明两个模态特征之间的差异可以近似用残差模块建模表示。
    在这里插入图片描述

  • 最小化两个模态特征之间的差异,具体方法是将预训练的CNN提取的NIR图像特征通过一个残差模块得到最终特征。这样就减少了两个域之间的差异。

6 Loss

在这里插入图片描述

  • Loss由Softmax Loss和MD Loss组成。λ是权衡这两项的超参数。
    在这里插入图片描述
  • MD Loss考虑两个特征之间的余弦相似度来测量两个人脸图像的差异。
  • 欧几里得距离在开始时可能很大,并且在整个训练损失中占主导地位,这可能对训练有害并且可能导致发散。相反,MD损失使用的余弦距离永远不会大于1。因此,与开始时的交叉熵损失相比,MD损失相对较小,并且只能在训练阶段的后期发挥重要作用,这使得训练过程更稳定,更易于收敛。

7 实验

7.1 数据集和协议

在这里插入图片描述

  • IIIT-D Viewed Sketch数据集含有238个素描照片图像对。使用含有1194个图像对的CUFSF数据集进行训练,在IIIT-D Viewed Sketch数据集上计算rank-1识别准确率。
  • Forensic Sketch数据集含有159个素描照片图像对。使用106名受试者进行训练,53名受试者进行测试。扩展MegaFace数据集中10000个人的10000张面部图像来模拟真实场景,计算rank-50识别准确率。
  • CASIA NIR-VIS 2.0数据集包含725名受试者的17580张照片,这些照片的姿势、年龄、分辨率和表情各不相同。在View 1上调整参数,并在View 2上报告rank-1人脸识别准确率(VR)和错误接受率(FAR)。
  • CUHK NIR-VIS有2876个受试者,每个受试者只有一张红外线人脸图像和一张可见的人脸图像。使用1438对红外和可见光图像对作为训练集,其余1438对作为测试集。

7.2 实施细节

  • 数据集预处理:使用MTCNN进行人脸检测然后人脸对齐并裁剪到112×96大小。之后对每个像素减127.5除以128的归一化操作。
  • 在CASIA-WebFace,CACD2000,Celebrity+,MSRA-CFW,cleaned MS-Celeb-1M 数据集上预训练backbone ResNet-10网络。采用交叉熵损失和中心损失的联合监督来训练该网络。
  • 用预先训练好的模型来初始化共享ResNet-10,并用交叉熵损失和MD损失来训练我们的RCN。我们将batch_size设置为128,即64个图像对,初始学习率为0.01。为了减少过拟合,我们冻结了预先训练的CNN的所有卷积层,只训练FC层和RC模块。

7.3 RC模块实验

在这里插入图片描述
在这里插入图片描述
RCN与几个基准模型进行比较:

  • 预先训练的模型在两个数据集上的性能都是最差的,这表明VIS和NIR/Sketch人脸图像之间存在很大的模态差异。
  • 对预先训练好的模型的所有层(第二行)进行微调,大大提高了算法的性能。但是容易出现过拟合问题。
  • 非线性PReLU层在CASIA NIR-VIS 2.0上的性能略有提高,而在IIIT-D上的性能显著下降。这是因为强大的非线性运算导致在小数据集上很容易过拟合。
  • c的表现差于ab,这是由于VIS分支没有PReLU层。
  • 中心损失无法学习受试者的有效中心,对比损失难以在较少样本的情况下找到有效的负/正对。与交叉熵损失相比,这两种损失函数的值都很大,这使得训练不稳定。
    在这里插入图片描述
  • 去掉PReLU层,识别准确率有所下降,这验证了非线性映射可以提高表示能力的观点。
  • 堆叠两个RC层略逊于RCN,这表明更多的参数会导致在小数据集上过拟合。
  • 使用3×3的卷积层RC模块效果不好,是因为这两个数据集的训练样本数量有限。
    在这里插入图片描述
  • 过高的MD Loss会损害类别间的可区分性,导致性能下降。

在这里插入图片描述

  • IIIT-D Viewed Sketch数据集。
    在这里插入图片描述
  • Forensic Sketch数据集。
    在这里插入图片描述
  • CASIA NIR-VIS 2.0数据集。
    在这里插入图片描述
  • CUHK NIR-VIS数据集。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ma lidong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值