论文题目:Consistent Instance False Positive Improves Fairness in Face Recognition
论文地址:https://arxiv.org/abs/2106.05519
代码地址:https://github.com/Tencent/TFace
文章贡献:
1. 基于softmax损失,提出了一种新的损失函数:假阳性率惩罚损失,该损失函数通过提高实例 False Positive Rate(FPR)的一致性来减轻人脸识别的偏差。
2. 该方法不需要人口统计学标注,可以减轻由各种属性划分的人口群体之间的偏差,而且这些属性不需要在训练中预定义。
1 背景与动机
论文主要的点在于提高人脸识别的公平性。过往的方法主要从两方面考虑:数据集或算法。
1. 大规模使用的人脸数据集一般都是在网上搜集的,因此样本一样在种族、年龄等属性方面会不平衡,一些研究提出了一些新的人脸识别数据集,在种族、年龄等属性方面相对均衡,但是人脸属性之多,很难完全覆盖与平衡。
2. 基于人口统计属性信息的算法:(1)人脸属性迁移,比如将从白种人中学习到的识别知识迁移到其它种族;(2)设计多个特定分类器,一个分类identity,其它的分类人口属性。
主要都在于减轻种族不同产生的识别不准确问题,可迁移性不强,且依赖于准确的人口统计属性信息。
为了解决上述问题,论该论文从一个新的角度评估人脸识别中的偏差,并在此基础上提出假阳性率惩罚损失。
2 相关工作
损失函数
许多基于边缘的损失函数被提出,以获得高度区分特征的人脸识别。比如SphereFace, CosFace ,ArcFace是广泛使用的margin-based的损失函数。虽然它们在识别准确率上有效,但其没有考虑属性偏差。
人脸识别中的偏差缓解
1. 数据集
DiF有100w张人脸的注释,the Racial faces in-the-wild (RFW)被提出作为种族偏差的测试集,BUPT-balanced可作为一种关于种族的平衡数据集,BUPT-Globalface揭示利润世界人口的真实分布情况。BFW包含8个属性group用于偏差评估,每个group都拥有200个受试者,每个受试者有2.5k张图像。
2. 算法
Wang等人提出了一种深度信息最大化自适应网络,利用深度无监督域自适应来缓解偏差。他们随后引入了一种基于强化学习的比赛平衡网络,该网络通过预先训练的网络模块选择不同比赛的附加损失角裕度函数。
Gong等人提出了一个带有四个特定分类器的反偏对抗网络,其中一个分类器用于身份,其他三个用于人口属性。他们最近进一步改进了该方法,采用了基于估计人口属性的群体自适应分类器。
以上算法均需要人口统计标注,人口统计属性的手工标注在目前的研究中是必要的,但在实践中通常是不可用的,且各种辅助模块(属性分类器等)通常增加了训练难度。
3 提出的方法
FPR和Bias的关系
1. 名词解释
在人脸识别系统中,对于两张图像,有如下定义:
- positive pair(正对):两张图是同一个人
- negative pair(负对):两张图像不是同一个人
通常会计算这两张图像的相似度,与阈值Tu来进行比较,判断是正对还是负对:
- false positive pair (FPP):相似度高于阈值的负对;
- false negative pair (FNP):相似度低于阈值的正对;
false positive rate (FPR)和false negative rage (FNR)都是人脸识别中常用的评估指标, 有如下公式表示:
其中,N-表示负对的个数,S-[i]表示第i个负对的相似度。N+表示正对的个数,S+[i]表示第i个正对的相似度。即:
- FPR:假正率,FPP / 所有负对;
- FNR:假负率,FNP / 所有正对。
以g表示不同的人口属性group,如种族、性别、年龄等,可以计算得到不同group的FPRg和FNRg:
2. 偏差分析
下图是使用resnet34+ArcFace损失在BUPT-Balanced数据集上训练,以RFW数据集作为验证集,在4种不同种族group上,FNR和FPR在不同阈值下的结果:
可以看到,在同一阈值取值下,FPR的标准差远大于FNR的标准差,NIST FRVT中也提到了这个结果。因此,论文认为实现FPR在不同group间的一致性可以提高人脸识别的公平性,将人口统计学与总体FPR比值的标准差定义为偏差程度:
上式中,Ng是group总数,rg+是g group的FPR,μ是所有group的平均FPR,r+是总体的FPR。
3. 实例FPR的一致性
上面的一致性计算均是基于group来的,而想要基于group,就需要人口统计学标注,且人脸属性繁多,不一定能划分到准确的group。
考虑到一个极端的情况,如果一个group里只有一张图,那么group的FPR就变成了实例的FPR,对于不同group间FPRs的一致性就变成了对于不同实例间FPRs的一致性。
因此,论文考虑实现不同实例间FPRs的一致性,这样就不要人口统计学标注信息,一样能够实现人脸识别的公平性。
FPR惩罚损失
1. softmax损失函数
原始的损失函数表达式:
类别数为n,嵌入特征大小为d。xi∈ R(d)表示属于yi类的第i个样本的深度特征,Wj和bj∈R(n)表示权重W(d*n)的第j列。
使用L2正则化后,有bj=0,||Wj||=1,深度特征也归一化并缩放为s,L变为:
由于原始的softmax损失对人脸识别不拥有足够的分辨力,因此有其变体:
G和H用于调节正余弦和负余弦的相似性,在margin-based的损失函数(如ArcFace)中,有 用于强调类间相似性;在mining-based的损失函数中,H被设计来挖掘困难的负对以减少类内混淆。
该变体可以提高一般的基准中分类准确率,但不能提高人脸识别的公平性。
2. 实例FPR的额外惩罚
由于权重W(d*n)的第yi列通常可以作为第yi类的代表,那么对于第i个实例,它属于类别yi,那么cos(θyi)可以被认为是正对的相似度,而cos(θj)(j≠yi)可以被认为是负对的相似度。
那么根据公式3:,通过负对的相似度和阈值,对应总体FPR γu+,可计算实例FPR γi+为:
为了使γi+更加一致,即更加接近于γu+,论文在softmax的分母处增加了一个额外惩罚项,有:
其中,α>0,因此 恒大于1,γi+/γu+ 的比值越大,损失值就越大。即,实例FPR越一致,损失越小,符合训练目标。
考虑到需要注意硬样本(相似度很高的假阳性样本)的影响,论文提出了加权FPR:
函数F给相似度高的假阳性样本赋予更高的权重,因此应为单调增函数。为了不失一般性,论文定义F为:
其中,p>=1,sgn(·)为符号函数(大于0为1,小于0为-1)。
由于阈值Tu恒大于0,因此sgn(·)相当于abs(·),因此F函数可以简化为F(z)=z^p,当p=1时,F(·)=cos(θj)。
3. 论文提出的损失函数的效果
(1)FPR一致性对比:
图a使用ArcFace损失,图b是论文的损失函数,可以看到论文的方法在训练了10w个steps后,除了印度人的FPR较低,其它种族的FPR趋于一致,而ArcFace4个种族的FPR依然相差较大。
(2)训练差异的比较:
图a是在小批次中,大于0的实例FPR的比例;图b是各group的PFR的标准差;图c是实例FPR的标准差。黑线是Arcface损失函数,红线是论文的方法,可以看到,论文方法的FPR一致性均优于Arcface,说明有效的解决了种族偏差。
4. 训练中的FPR设置和阈值估计
论文提出的方法依赖于总体FPR γu+的取值,进一步依赖于阈值Tu的取值。
在实际应用中,FPR的取值取决于人脸识别系统的部署场景,论文设置总体FPR的取值范围为[1e-1, 1e-5]。
给定一个总体FPR,通常从所有负对分布的分位数估计阈值Tu。
5. 优化器
损失函数算法流程:
使用SGD优化器,设Gi为类别是yi的样本的sG(cos θyi ),Hj为s(cos θj + αγi+/γu+),Ij为 mining mask(取值1或0,表示分类正确与否),考虑损失函数的cosFace形式,有:
,
那么反向传播过程[1]有:
公式12的来源可见[1],有:
上式的Y对应公式12的G和H,G对应的是正对的Y,H对应的是负对的Y。
相比较于常规的反向传播和公式12,可以发现,如果样本类别j是假阳性样本,Ij=1,那么就会有一个新的组合项 ,
从高于阈值的假阳性样本带来梯度调整,
通过对特定假阳性情况的相似性进一步调整。
4 实验结果
数据集
1. 训练集:BUPT-Balancedface 和BUPT-Globalface。
BUPT-Balancedface拥有130w张共2.8w个名人的照片,每个种族大概有7k个不同的人。BUPT-Globalface拥有200w张共3.8w个名人的照片,它的种族分布与世界人口的真实分布大致相同。
2. 验证集:RFW和BFW。
RFW由4个种族人口组成,每个种族有将近1w共3k人的图像。BFW由2个性别和4个种族人口共8个group组成,每个group由200名不同的人,每个人有2.5k张图像。
消融实验
1. 总体FPR γu+的影响
γu+ = 1e-4时,几乎所有种族的效果都最好。
2. p对函数F(z)的影响
固定γu+ = 1e-4,p=2时效果最好:
与先进方法的比较
1. RFW数据集上的精度
使用不同训练集,RFW作为验证集的结果:
2. RFW数据集上的FPR
ROC曲线:
根据偏差程度δ来评价结果:
3. BFW数据集上的FPR
ROC曲线:
根据偏差程度δ来评价结果:
5 个人理解
1. 该论文主要是提出了一种用于人脸识别的损失函数。通常对于不同属性的人脸,比如不同年龄、种族等,如果训练集中各种特征不平衡的话,比如多数都是黄种人,那么对白种人的识别效果可能不会很好,具体体现在不同人脸属性group的FPR差异过大,因此大多方法都需要人口统计学标注信息。而人脸的属性是非常多的,从数据集方面可能不能考虑的很完全。
该论文提出的损失函数可以有效的降低这种差异,从而提高人脸识别的准确率。同时,它也不需要人口统计学标注。
2. 关于降低这种差异。论文在softmax损失函数上增加了一个FPR惩罚,从而在训练时loss不断降低的过程中,使得各group的FPR更加一致。
3. 关于不需要人口统计学标注的原因。如果看成一般性的情况,一个group中会有多张图片,且如何划分group并实现这之间的样本均衡也是一个问题。那么考虑极端情况,认为一张图就是一个group,也就不需要划分,可以直接计算,因此不用标注。