自然环境下的多种族人脸:利用信息最大化自适应网络去减少种族偏差
演讲摘要
种族偏见是生物特征识别中的一个重要问题,但在人脸识别领域还没有得到深入的研究。在这篇论文中,我们首先提供了一个名为“自然环境下的多种族人脸”(RFW)的数据库。利用该数据库,我们验证了四个商业API和四个当前最先进算法都存在种族偏见。然后,我们进一步提出利用深度无监督域自适应算法来解决种族偏差,并提出了一个深度信息最大化自适应网络(IMAN)。在算法中,我们以白种人作为源域,其他种族作为目标域来缓解这种偏差。这种无监督的方法一方面在域层面减小源域和目标域的全局分布,另一方面在类别层面学习有区分性的目标域特征。此外,我们还提出了一种新的互信息损失,在没有标签的情况下,进一步提高了网络输出的鉴别性。通过在RFW、GBU和IJB-A数据库上进行的大量实验表明,IMAN学习到的特征在不同种族和不同数据库上有很好的泛化性。
演讲PPT及解读
![](https://bbsfile.sffai.com/2020-07-08/1594202753-154964-8cd8b97c-36df-4e1c-a8e9-25d62528c712.png)
今天给大家分享一篇我们关于人脸识别中种族偏差的工作,题目是自然环境下的多种族人脸:利用信息最大化自适应网络去缓解种族偏差。
![](https://bbsfile.sffai.com/2020-07-08/1594202758-52711-178183c6-c625-4cfe-8037-ef2e8af9cf2c.png)
我们将从三个方面来介绍我们的工作,第一个是介绍一下背景和种族偏差的定义。然后我们从数据库和算法两个方面来介绍我们的工作。
![](https://bbsfile.sffai.com/2020-07-08/1594202765-941877-013dfb15-6a57-456f-a98d-3fa4182d1143.png)
深度卷积神经网络的出现极大地推动了人脸识别的发展,并且人脸识别已经广泛的应用在生活的各个方面,比如刷脸打卡,视频监控,刷脸支付。
![](https://bbsfile.sffai.com/2020-07-08/1594202773-874218-9f2c5eee-aacb-46d1-bff7-ae5ea99d62a7.png)
人脸识别已经形成了很成熟的框架,从人脸检测到数据预处理到网络训练到模型测试。并且通过不同损失函数和网络架构的完善,人脸识别在常用的测试库,如LFW,上的精度最高已经达到了99.8%。虽然达到这么高的精度,但是人脸识别问题就真的被解决了吗?
![](https://bbsfile.sffai.com/2020-07-08/1594202777-277708-7af06398-bd9f-43e3-9c1e-f137960b20cb.png)
在我们查阅了各种资料之后发现,仍然有一个问题存在于人脸识别中,那就是种族偏差。如图第一篇发表于2011年的文献中,他们发现在非深度人脸识别算法中,如果利用亚洲人训练,那么测试的时候亚洲人的精度就最高;反之,如果用白人训练,那么测试的时候白人的精度就最高。因此他们提出,如果训练集某种种族占比越高,那么测试的时候这个种族的精度就越好。如图第二篇发表于2012文献中,他们发现如果用种族平衡的训练集进行训练,那么各个种族的精度依然不平衡,且黑人的精度最低。综上所述,我们可以得出,在非深度人脸算法中,种族偏差来源于两个方面,一个是训练集中的数据偏差,另一个是某些种族本身对现有的算法来说就比较难识别。
![](https://bbsfile.sffai.com/2020-07-08/1594202785-173358-c9c7f730-b496-4e49-822c-7e3edd13780c.png)
然后,我们有个疑问就是,当人脸识别进入了深度时代,有了更强的特征表达能力之后,深度人脸识别算法是否还受到种族偏差的影响呢?我们可以从一些现实中得到答案。如果前段时间有报道表明,亚马逊的人脸识别工具错误的把28名国会议员认成了罪犯,其中黑人的错误率是白人的两倍。因此,我们猜测,深度人脸算法中也存在种族偏差。
![](https://bbsfile.sffai.com/2020-07-08/1594202790-949060-246515b9-dc25-4772-9817-e2549e12d1b4.png)
但是,到目前为止,没有文献研究过这个问题。其重要原因是因为,缺乏一个合适的训练和测试集。大部分现有的训练和测试库都是以白人为主,种族偏差的这个现实被数据集掩盖了。
![](https://bbsfile.sffai.com/2020-07-08/1594202794-234027-66de8f0c-991e-4c02-91b4-1d02d6973493.png)
因此我们就先构造了这样的训练和测试库来供学术界研究种族偏差问题。
![](https://bbsfile.sffai.com/2020-07-08/1594202800-417937-2def6825-1c2f-4473-91b0-bd281d6350e0.png)
首先我们构建了一个测试库来公平地衡量深度人脸识别中的种族偏差,名叫RFW。它包含四个测试子集,即高加索人、亚洲人、印度人和非洲人。每一个子集包含约 10K 张人脸图像,属于 3K 个不同身份,用于人脸验证。
![](https://bbsfile.sffai.com/2020-07-08/1594202805-156094-ea83540f-7020-4939-beac-b1f90aeeb814.png)
我们简单的介绍一下构造构成。首先我们从MS-Celeb-1M里面选取不同种族的人脸图片构成RFW。MS-Celeb-1M是微软构造的大型人脸训练库,其中FreeBase是跟随训练库一起发布的一个人名列表。FreeBase是类似于百度百科的信息表,其中包含了性别/国籍等信息。因此对于亚洲人和印度人,我们根据国籍信息直接选出。对于白人和黑人,我们则利用face++ API来筛选。筛选完种族之后,我们利用人工清洗我们的图片。保证每个种族的图片里面没有其他种族,同时每个人的图片里面没有其他人的图片。
![](https://bbsfile.sffai.com/2020-07-08/1594202811-937314-22820840-1acb-4234-bc67-0aedac5b4dc1.png)
清洗完图片之后,我们则利用这些图片构造正负对以供人脸验证使用。我们利用相似度选取较难的正负对构成我们的RFW。对于性能评估,我们建议同时使用 ROC 曲线和LFW 协议。ROC 曲线旨在报告一个全面的性能,在 3K 个身份所有图像对(约 14K 个正样本和 50M 负样本)上评估算法。LFW 协议有助于在 6K 对图像上对算法进行简单而快速的比较。
![](https://bbsfile.sffai.com/2020-07-08/1594202818-328725-37ff51da-a9fc-4742-809c-d9f82ad0d2d0.png)
在 RFW 中,每个种族的图像都是从 MS-Celeb-1M 中随机采集的,没有任何偏向,因此它们能够公平地衡量种族偏差。并且,在不同种族中,人们的姿态、年龄和性别分布是相似的。下图给出了由 Face++ 测量的详细分布。从这些数字可以看出,不同种族之间没有显著差异。此外,图二也显示了 3K 困难样本对的姿态和年龄差距分布,这表明所选择的困难对在不同种族之间也是公平的,并且包含较大的类间差异。
![](https://bbsfile.sffai.com/2020-07-08/1594202828-304010-782419bf-cae3-42e2-bd5c-28d9382cf788.png)
图三给出了 6K 样本对的一些例子,从图中可以看出,一些样本甚至对人类来说都是非常具有挑战性的。
![](https://bbsfile.sffai.com/2020-07-08/1594202833-120739-3f047be2-e494-4cf6-8119-50f8f378e7ab.png)
我们知道,种族偏差来源于训练数据和算法两个方面。因此我们也构造了不同训练库以便于我们从数据方面进行种族偏差的研究。其中BUPT-Balancedface训练集是一个种族平衡的数据库,每个人种7000个人。BUPT-Globalface训练集是按照地球比例构造的,每个种族的比例和地球比例一样。我们最近也有一篇文章是利用强化学习在这两个库上解决种族偏差问题,感兴趣的可以关注一下Mitigating Bias in Face Recognition using Skewness-Aware Reinforcement Learning. M Wang, W Deng - arXiv preprint arXiv:1911.10692, 2019。BUPT-Transferface可以用来利用迁移学习的方法解决种族偏差,其中白人有大量有标签的数据,而其他人种有少量没有标签的数据,可以通过迁移学习将知识从白人迁移到其他人种。
![](https://bbsfile.sffai.com/2020-07-08/1594202839-999844-65435e50-b543-411f-9b82-bf29752a7ca2.png)
接下来我们将在RFW上验证深度人脸算法是否存在种族偏差,以及这种偏差是否是由于数据和算法两个方面造成。首先,在 RFW 上我们测试了学界最先进(SOTA)的算法,Center loss, Sphereface, VGGFace2 和 ArcFace,以及四个商业识别 API,Face++、百度、亚马逊和微软。所有 SOTA 算法和 API 在白种人测试子集上表现最好,其次是印度人,在亚洲和非洲表现最差。这是因为,在白种人居多的数据上训练的特征,会丢弃对识别非白种人面孔有用的信息。
![](https://bbsfile.sffai.com/2020-07-08/1594202847-780923-65a1a009-0636-44db-a621-13ea22274d53.png)
这是一些ROC曲线,可以看出,种族偏差在现有算法和API上是存在的。
![](https://bbsfile.sffai.com/2020-07-08/1594202853-927877-43baeac3-50bf-4486-976e-1c3a34d1e066.png)
图七是不同人种的平均脸,我们对每个种族的所有人脸都进行对齐,然后取像素上的平均得到的。可以看出,不同种族在几何结构上差异还是很大的。我们在特征层面页进行了可视化和定量比较。如图八所示,我们提取了图像的深度特征,并分别使用 t-SNE 进行可视化。不同种族的特征在特征空间上是分开的,并没有混合在一起。我们也使用 MMD 来计算白种人和其他种族的图像之间的分布差异。从这些数据中,可以得出相同的结论:白种人与其他种族之间的分布差异要远远大于白种人自身的分布差异,这说明不同种族人脸之间存在着域差异。
![](https://bbsfile.sffai.com/2020-07-08/1594202858-812068-e9f45e57-f80f-41c4-900d-cc9985f17a1d.png)
我们还测试了利用CASIA Webface 数据库训练的模型在RFW上的性能,发现种族偏差是存在的。然后我们从BUPT-Balancedface中选取了和CASIA Webface相同规模的数据,构建了一个均衡的数据集 Equalizedface。它包含 14K 个名人的 590K 张图像,种族之间基本平衡,每个种族有 3.5 K 个身份。以 Equalizedface 为训练数据,我们发现,相比于CASIA Webface模型对所有种族的识别效果都很好,种族偏差被明显消除。这证明了种族偏差的一个来源在于训练数据。然而,即使平衡训练,非白种人的识别效果仍然不如白种人,说明有些人脸本身就比较难识别。此外,我们还对同一种族的 7K 身份的训练特定模型,其性能比平衡(每个种族 3.5K 人)要低一些。我们认为由于相似的低级特征,不同种族人脸之间存在着协同关系,因此种族人脸的混合能提高识别能力。
![](https://bbsfile.sffai.com/2020-07-08/1594202863-973692-900a45da-42cc-4dde-aaa6-bea5d297c913.png)
我们还尝试探究为什么黑人比白人难识别的原因。我们对RFW数据库加入模糊和噪声,观察在模糊和噪声情况下,不同人种的表现。我们发现,当噪声和模糊程度不断加大的时候,黑人和白人的识别率都会下降,但是黑人的下降速度更快。因此我们得出结论,黑人更容易受到噪声和图像质量的影响。这可能是黑人难识别的原因之一。
![](https://bbsfile.sffai.com/2020-07-08/1594202868-180339-a9404fc8-a7f0-42af-bd7c-abd1b6a9f0ca.png)
因为我们发现,不同人种之间具有域差异,因此我们提出了利用迁移学习来缓解提升其他人种的性能。
![](https://bbsfile.sffai.com/2020-07-08/1594202874-135700-f670d808-e6dc-4c91-a3e1-a0ad4c2e1d5b.png)
迁移学习解决的问题就是,当训练集和测试集有分布差异的时候,如果在训练集上训练一个模型,让他在测试集上也表现良好。
![](https://bbsfile.sffai.com/2020-07-08/1594202878-209528-228f1c82-1fb7-461c-b482-fa2d78ee6539.png)
迁移学习有很多分类,在我们这篇论文中,主要使用无监督域自适应。在无监督域自适应中,源域是有标签的白人,目标域是没有标签的其他人种。我们在训练的时候,想利用有标签的白人和无标签的黑人学到具有泛化能力的特征,使他在黑人上表现良好。
![](https://bbsfile.sffai.com/2020-07-08/1594202883-886138-91b1f730-efd4-4d2a-a3b5-4011d203ef61.png)
在标准的域自适应上一般都是这么做的:由于源域和目标域之前具有分布差异,所以他们在特征空间上是不对齐的,而域自适应则通过学习域不变的特征,将他们在特征空间上对齐,从而使源域的分类也能在目标域上获得良好的性能。
![](https://bbsfile.sffai.com/2020-07-08/1594202887-714064-a498652d-7f2f-44c4-a295-4b673b5527d0.png)
深度域自适应有很多的方法,感兴趣的可以参考M. Wang and W. Deng. Deep visual domain adaptation: A survey. Neurocomputing, 312:135-153,2018.我们的这篇工作。
![](https://bbsfile.sffai.com/2020-07-08/1594202893-843485-8e6581cd-c929-4a17-a6a1-97cddf7478de.png)
然而当域自适应用在人脸的时候,会面临两个难题。第一是,人脸识别相比于物体识别更需要具有区分性的特征。因为人脸的特殊性,同一个人不同图片可能因为姿态和年龄有很大的差异,而不同的人可能因为特定角度而非常相像,所以在人脸识别中更有区分性的特征是十分必须的。另一方面,人脸识别中源域和目标域是肯定类别不同的,这一点和物体识别的迁移学习很有大的区别。因此这篇论文也会重点解决这两个问题。
![](https://bbsfile.sffai.com/2020-07-08/1594202897-320123-6394f023-a0c4-4db4-8040-f179e754ac2d.png)
我们提出了一个信息最大化自适应网络。这个网络包含两个子网络。源域CNN的输入是白人,目标域CNN的输入是其他人种,这两个子网络共享权重。首先利用MMD的loss减少两个域的差异,使两个域对齐,从而目标域得到初步提升。但是由于源域和目标域之间类别不同,所以这种对齐的提升效果有限,因此我们又提出了伪标签的方法来进一步提升性能。利用图对目标域无标签的图像进行聚类,得到伪标签,然后微调网络。最后,为了得到更具有区分性的特征,我们又提出了一个无监督的互信息损失。
![](https://bbsfile.sffai.com/2020-07-08/1594202903-380165-6079339c-57d6-4c9d-9899-2981d88125f5.png)
MMD损失是迁移学习中最常用的一个方法。他通过将源域和目标域的特征映射到一个再生核的希尔伯特空间,然后在这个空间计算不同域的特征均值,然后通过减少这个均值差异来减少不同域之间的分布差异。
![](https://bbsfile.sffai.com/2020-07-08/1594202906-699593-9ed4f23c-bc57-48d0-8b96-93f109372d06.png)
传统的 UDA 方法使用源分类器来预测目标域中的伪标签,网络可以使用有监督损失进行微调。但是,由于人脸识别中两个域之间的身份不重叠,这些方法虽然成熟但并不适合。因此,我们引入一种聚类算法,为 pre-adaption 训练产生伪标签。聚类算法的具体步骤如下:首先,将无标签的目标数据输入网络,得到深度特征。然后用深度特征建立 N*N 的邻接矩阵,N 为目标域人脸数目,矩阵的每个元素为目标两个人脸之间的余弦相似度。 然后,根据邻接矩阵建立聚类图,节点目标域的人脸,边表示两个目标人脸的余弦相似度与参数λ之间的关系,如果相似度大于λ则边为1;反之则为0。 最后,将连接了至少3个节点的图像保存为一个类,并获取这些目标图像的伪标签。因此,我们的方法只获得部分图像的伪标签,具有较高的置信度,以减轻伪标签样本带来的负面影响。然后我们就可以用 Softmax 损失对网络进行预适应。
![](https://bbsfile.sffai.com/2020-07-08/1594202913-410918-14c2ba49-c653-498d-a4eb-1ad53e42a1ea.png)
虽然伪标签已经得到了对目标图像的初步预测,但由于只有部分图片获得了伪标签,如何才能充分利用所有目标图像,并学习更多的判别表示呢?在初步预测的基础上,作者提出在没有标签信息的情况下进一步优化分类器输出的分布。其中一个想法是通过扩大分类器对某一个类的输出,同时以无监督的方式抑制其他类的输出,在特征空间中学习大的决策边界。分类器预测 p(Ot|xti) 的理想条件分布应为 [0,0,…,1,…,0]。H(Ot|xti) 有效地满足了这一要求,因为当分类器的预测分布是均匀时,该熵项是最大化的,反之亦然。然而,在完全无监督学习的情况下,简单地最小化这个熵将导致更多的决策边界被移除,使大多数样本被分配到同一类。因此,作者选择类别的均匀分布,因此需要最大化p(Ot)的熵。因此,作者将两个熵项结合,得到数据 Xt 和预测 Ot 之间的互信息。公式第一项是 Ot 条件分布的熵,能够扩大分类器对某一类别的输出,并抑制对其他类别的输出;第二项是 Ot 边界分布的熵,能够避免大量样本被分到同一类。
![](https://bbsfile.sffai.com/2020-07-08/1594202921-422686-5f0519f7-e2eb-4234-8978-1875a392fd6c.png)
我们在RFW上测试了我们算法的性能。可以发现,首先,没有域适应的 Arcface(CVPR2019,在 LFW 和 Megaface 挑战赛上的 SOTA 方法),由于种族差距,无法在非白种人身上获得较好的表现。其次,DDC 和 DAN 方法(MMD)与 Softmax 和 Arcface 模型相比,改进有限,这也证实了目前流行的基于源域和目标域全局对齐的方法不足以提升人脸识别的性能。第三,IMAN-A(使用 Arcface 损失)和 IMAN-S(使用 softmax 损失)的性能明显优于其他方法。
![](https://bbsfile.sffai.com/2020-07-08/1594202925-729152-4b24375c-8640-40c8-937b-1e7630d407ff.png)
我们的伪标签方法和互信息方法还可以互相促进性能。通过图八可以看出,通过交替迭代地执行预适应和 MI 适应来进一步优化 IMAN,性能逐渐提高直至收敛。同时我们还进行了消融研究。结果表明,算法的两个组成部分对减少种族偏差均有独特的作用。另外,为了验证 IMAN 学习特征的可迁移性,在特征层进行了可视化比较。自适应后,更多的源数据和目标数据开始在特征空间中混合,使它们之间没有边界。
![](https://bbsfile.sffai.com/2020-07-08/1594202929-347173-9d43af3f-318e-4d69-984e-e8e395c40049.png)
我们还给出了伪标签聚类的效果。可以发现,在大部分情况下,都是可以很好的聚类。但是某些情况下,如图九,本来属于两个人的图片,会被聚成同一个人;或者本来属于同一个人的图片,由于年龄等影响,被分成了不同的类。
![](https://bbsfile.sffai.com/2020-07-08/1594202933-880937-9eb93e0b-0ac4-4521-a655-8ead04be87d5.png)
同时,我们的方法还可以用在其他迁移实验中。比如从中科院的数据库迁移到更加模糊的IJB-A上,或者从中科院的数据库迁移到GBU上。可以看到利用我们的方法,都得到了一定的提升。
![](https://bbsfile.sffai.com/2020-07-08/1594202938-906496-1ce5edf3-2c98-4b22-a761-fa21e76e0cd9.png)
这是对应的ROC曲线。
版权声明