Connect with us

Anderson 视角

AI工具去除化妆以防止未成年人绕过年龄检查

mm
Flux, SDXL, Photoshop Neural filters, Firefly, Krita et al.

化妆的外观让未成年用户,主要是女孩,能够绕过基于自拍的年龄检查,在诸如约会应用和电子商务网站等平台上。一个新的AI工具解决了这个漏洞,使用一个区分模型来擦除化妆,同时保留身份,使得未成年人更难欺骗自动系统。

 

第三方基于自拍的年龄验证服务的使用正在增加,不仅是因为全球范围内对在线年龄验证的普遍趋势。

例如,在英国的在线安全法案的新执行制度中,年龄验证可以由各种第三方服务进行,使用各种可能的方法,包括视觉年龄验证,AI被用来预测用户的年龄(通常从实时移动相机拍摄的照片中)。使用这种方法的服务包括Ondato、TrustStamp和Yoti。

然而,年龄估计并非万无一失,传统上青少年渴望拥有成年人的权利,这意味着年轻人已经开发出各种有效的方法来进入禁止他们年龄段的约会网站、论坛和其他环境。

他们使用的一种方法,主要是女性使用的,就是化妆——一种已知的方法,可以欺骗自动化的年龄估计系统,这些系统通常会高估年轻人的年龄,并低估老年人的年龄。

不仅仅是女孩

在引起抗议之前,考虑到化妆是“女性化”的焦点,我们必须注意到任何人脸上的化妆都是一个非常不可靠的性别指标:

在论文'面部化妆对自动性别和年龄估计算法的影响'中,美国研究人员发现,性别验证系统被性别交换化妆所迷惑。来源:https://cse.msu.edu/~rossarun/pubs/ChenCosmeticsGenderAge_VISAPP2014.pdf

在论文’面部化妆对自动性别和年龄估计算法的影响’中,美国研究人员发现,性别验证系统被性别交换化妆所迷惑。来源:https://cse.msu.edu/~rossarun/pubs/ChenCosmeticsGenderAge_VISAPP2014.pdf

2024年,美国18-24岁的男性消费者中有72%被估计将化妆融入他们的日常护理中——尽管大多数人使用化妆产品来增强健康皮肤的外观,而不是沉迷于更女性化的视觉美学。

所以,我们不能不将本文研究的材料按照最常见的场景来处理——即女性未成年人使用化妆来破坏自动化的视觉年龄验证系统。

有效的化妆去除——AI的方式

上述研究来自纽约大学的三位贡献者,以新论文DiffClean:基于扩散的化妆去除,用于准确的年龄估计的形式出现。

该项目的目标是实现一种AI驱动的方法来从图像(可能包括视频图像)中去除化妆的外观,以便更好地了解化妆背后的人的真实年龄。

来自新论文的例子,展示化妆去除。来源:https://arxiv.org/pdf/2507.13292

来自新论文的例子,展示化妆去除如何显著改变年龄预测。 来源:https://arxiv.org/pdf/2507.13292

开发此类系统面临的挑战之一是围绕收集或整理未成年女孩化妆图像的潜在敏感性。最终,研究人员使用了一种名为EleGANt的第三方生成对抗网络系统来人工地施加化妆风格,这种方法被证明非常有效:

清华大学2022年的EleGANt系统使用生成对抗网络(GAN)将化妆真实地叠加到源照片上。来源:https://arxiv.org/pdf/2207.09840

清华大学2022年的EleGANt系统使用生成对抗网络(GAN)将化妆真实地叠加到源照片上。来源:https://arxiv.org/pdf/2207.09840

使用这种方法获得的合成数据,以及来自各种辅助项目和数据集的帮助,作者能够在遇到表演性或“明显”的化妆时超越最先进的年龄估计方法。

论文指出:

‘DiffClean [擦除]化妆痕迹,使用基于文本的扩散模型来抵御化妆攻击。[它]提高了年龄估计(未成年人与成年人准确率提高了4.8%)和面部验证(TMR在FMR = 0.01时提高了8.9%)与竞争基线相比,在数字模拟和真实化妆图像上。’

让我们来看看他们如何完成这项任务。

方法

为了避免获取未成年人化妆图像,作者使用EleGANt将合成化妆应用于来自UTKFace数据集的图像,生成用于训练的前后对。

UTKFace数据集的示例。来源:https://susanqq.github.io/UTKFace/

UTKFace数据集的示例。 来源:https://susanqq.github.io/UTKFace/

然后对DiffClean进行训练,以逆转此变换。由于年龄估计算法在处理年轻年龄组时最容易出错,研究人员发现有必要开发一个代理年龄分类器,针对目标年龄(10-19岁)进行微调。为此,他们使用了在UTKFace数据集上训练的SSRNet架构,并使用加权L1损失。

DiffClean的骨干是一个简化版本的2021年OpenAI扩散模型,作者保留了核心架构,但修改了它以增加额外的注意力头,在不同的分辨率下,增加了更深的层,并增加了BigGAN风格的块,以提高上采样和下采样阶段。

使用CLIP提示引入了方向控制:具体来说,带有化妆的脸不带化妆的脸,这样模型就可以学习朝着所需的语义方向移动,允许化妆被去除,而不会损害面部细节、年龄线索或身份。

使用EleGANt应用的合成化妆。每个三元组显示原始UTKFace图像(左)、参考化妆风格(中)和样式转移后的结果(右)。

使用EleGANt应用的合成化妆。每个三元组显示原始UTKFace图像(左)、参考化妆风格(中)和样式转移后的结果(右)。这种化妆转移在计算机视觉文献中很常见,这种功能也可在Adobe Photoshop的神经滤镜中找到,可以将参考图像中的化妆应用于目标图像。

四个关键损失函数指导了化妆去除,而不会影响面部身份或年龄线索。除了上述基于CLIP的损失外,身份被保留使用来自InsightFace库的加权对ArcFace损失——这些损失测量了生成面部与原始干净图像和“化妆”版本之间的相似性,确保了化妆去除前后主体在视觉上保持一致。

第三,感知损失LPIPS使用L1距离来执行像素级的真实性,并保持原始图像在化妆被去除后的整体外观。

最后,年龄由在UTKFace数据集上微调的SSRNet监督,模型使用平滑的L1损失(对于10-29岁年龄范围内的错误有更重的惩罚,因为在这个范围内错误最常见)。模型的一个变体用CLIP基于年龄的提示取代了它,提示模型匹配特定年龄的外观。

在推理时(与训练时相反),使用了2023年的MiVOLO框架进行年龄估计。

数据和测试

在UTKFace上微调的SSRNet使用15,364张图像的训练集,对6,701张图像的测试集。原始20,000张图像被过滤以删除任何年龄超过70岁的人,然后以70:30的比例分割。

按照2023年DiffAM项目之前的方法,训练分两个阶段进行,第一次会话使用300张真实世界的化妆图像(这次是200/100的训练和验证分割),来自BeautyGAN的MT数据集。然后使用300张额外的UTKFace图像进行了模型的进一步改进,这些图像使用EleGANt进行了合成化妆。这样就创建了一个最终的600个示例的训练集,跨五个参考样式来自BeautyGAN。

由于化妆去除涉及将许多化妆风格映射到一个干净的脸上,训练集中注重广泛的泛化,而不是涵盖每一种可能的化妆变体。

性能是在合成和真实世界图像上评估的。合成测试使用了2,556张Flickr-Faces-HQ(FFHQ)数据集图像,均匀地采样了70岁以下的九个年龄组,并使用EleGANt进行了修改。

使用来自BeautyFace和LADN的3,000张图像来评估泛化,后者包含355张真实化妆图像。

BeautyFace数据集的示例,展示了定义各种受影响面部表面区域的语义分割。来源:https://li-chongyi.github.io/BeautyREC_files/

BeautyFace数据集的示例,展示了定义各种受影响面部表面区域的语义分割。 来源:https://li-chongyi.github.io/BeautyREC_files/

指标和实现

对于指标,作者使用了平均绝对误差(MAE)来计算真实年龄和预测年龄值之间的差异,结果越低越好;年龄组准确率被用来评估预测年龄是否属于正确的组;未成年人/成年人准确率被用来评估正确识别18岁以上的人的能力(在这种情况下,结果越高越好)。

此外,尽管它与当前主题没有直接关系,但作者还报告了身份验证指标,以真匹配率(TMR)和假匹配率(FMR)为单位,并报告了相关的ROC值。

SSRNet在64×64px图像上使用批大小为50的Adam优化器进行了微调,权重衰减为1e−4,并使用余弦退火调度器和1e−3的学习率,训练200个epoch,并使用早期停止。

相比之下,DiffClean模块接收256×256px的输入图像,并在5个epoch内使用Adam优化器进行了微调,学习率为4e−3。采样使用40个DDIM逆转步骤和6个DDIM正向步骤。所有训练都在单个NVIDIA A100 GPU(无论是否具有40GB或80GB的VRAM)上进行。

竞争系统包括CLIP2Protect和前面提到的DiffAM。作者使用“matte”化妆风格,因为CLIP2Protect已经注意到这种风格可以实现更高的成功率(可能为那些试图击败这种方法的人提供了一条途径——但那是另一个话题)。

为了复制DiffAM作为基线,BeautyGAN的预训练模型在MT数据集上进行了微调。对于对抗性化妆转移,使用了DiffAM的检查点,使用了默认参数,针对目标模型、参考图像和身份。

DiffClean与基线在年龄估计任务上的性能比较,使用MiVOLO。报告的指标包括未成年人/成年人分类准确率、年龄组准确率和平均绝对误差(MAE)。具有CLIP年龄损失的DiffClean在所有指标上都取得了最好的结果。

DiffClean与基线在年龄估计任务上的性能比较,使用MiVOLO。报告的指标包括未成年人/成年人分类准确率、年龄组准确率和平均绝对误差(MAE)。具有CLIP年龄损失的DiffClean在所有指标上都取得了最好的结果。

作者指出:

‘我们的方法DiffClean优于两个基线,CLIP2Protect和DiffAM,并且可以成功恢复由于化妆而破坏的年龄线索,通过降低MAE(到5.71)和提高整体年龄组预测准确率(到37%)。’

‘我们的目标集中在未成年人年龄组上,结果表明我们实现了优越的未成年人与成年人年龄分类,准确率为88.6%。’

基线和提议方法的化妆去除结果。最左边的列显示源图像,下一列显示CLIP2Protect和DiffAM的输出。第三列显示DiffClean通过SSRNet和CLIP基于年龄的损失的结果。作者声称DiffClean更有效地去除化妆,避免了CLIP2Protect中的特征失真和DiffAM中遗留的化妆。

基线和提议方法的化妆去除结果。最左边的列显示源图像,下一列显示CLIP2Protect和DiffAM的输出。第三列显示DiffClean通过SSRNet和CLIP基于年龄的损失的结果。作者声称DiffClean更有效地去除化妆,避免了CLIP2Protect中的特征失真和DiffAM中遗留的化妆。

作者进一步指出,化妆并不对感知年龄产生统一的影响,而是可以增加、减少或保持面部的感知年龄不变。因此,DiffClean并不对预测年龄施加“统一的减少”,而是尝试通过去除化妆痕迹来恢复原始的年龄指标:

CelebA-HQ和CACD数据集的化妆去除示例。每列显示一对图像,在化妆去除前(左)和化妆去除后(右)。在第一列中,预测年龄在化妆去除后减少;在第二列中,预测年龄保持不变;在第三列中,预测年龄增加。

CelebA-HQ和CACD数据集的化妆去除示例。每列显示一对图像,在化妆去除前(左)和化妆去除后(右)。在第一列中,预测年龄在化妆去除后减少;在第二列中,预测年龄保持不变;在第三列中,预测年龄增加。

为了测试DiffClean在新数据上的性能,它在BeautyFace和LADN数据集上运行,这些数据集包含真实的化妆,但没有同一主题的无化妆图像。比较了化妆去除前后的年龄预测,以评估DiffClean在减少化妆引入的失真的有效性:

LADN(左对)和BeautyFace(右对)数据集的化妆去除结果。DiffClean通过去除化妆来减少预测年龄,缩小了显现年龄和实际年龄之间的差距。白色数字显示了处理前后的估计年龄。

LADN(左对)和BeautyFace(右对)数据集的化妆去除结果。DiffClean通过去除化妆来减少预测年龄,缩小了显现年龄和实际年龄之间的差距。白色数字显示了处理前后的估计年龄。

结果表明,DiffClean在两个数据集上都能一致地缩小显现年龄和实际年龄之间的差距。平均而言,它将过估计和低估的错误减少了大约三年,表明该系统对真实世界的化妆风格具有良好的泛化能力。

结论

很有趣,也许是不可避免的,表演性化妆会被以对抗方式使用。鉴于女孩以不同的速度成熟,但作为一个群体始终更快地成熟,识别未成年人和成年人女性之间的界限可能是研究界面临的最雄心勃勃的任务之一。

然而,时间和数据可能最终会确定一致的与年龄相关的标志,这些标志可以用来锚定视觉年龄验证系统。

 

* 由于这个主题容易引起激烈的语言,并且“女孩”一词是排他性的(而“女性和女孩”这个目前被接受的术语在这种情况下不是一个准确的描述),我默认使用“女性”作为最好的妥协方案——尽管它没有捕捉到所有人口统计学的细微差别,对此我表示歉意。

在本文中,我使用“表演性”来指代旨在被看到和识别为化妆的化妆,例如睫毛膏、眼线、腮红和粉底,与用于遮瑕的化妆品不同。

首次发布于2025年7月18日

机器学习作家,人类图像合成领域专家。曾任 Metaphysic.ai 研究内容负责人。
个人网站: martinanderson.ai
联系: [email protected]
Twitter:@manders_ai