通过模板级知识蒸馏进行掩模不变人脸识别

news2024/9/22 1:45:22

Mask-invariant Face Recognition through Template-level Knowledge Distillation

创新点

        1.提出了一种掩模不变人脸识别解决方案(MaskInv),该解决方案在训练范式中利用模板级知识蒸馏,旨在生成与相同身份的非蒙面人脸相似的蒙面人脸嵌入。

        2.除了提炼的信息之外,学生网络还受益于基于边缘的身份分类损失,ElasticFace,使用蒙面和非蒙面面孔的额外指导。

        学生模型使用蒙面和非蒙面人脸图像进行训练,以便它可以处理这两种情况,而 KD 过程确保模型生成的蒙面人脸嵌入与相同身份的非蒙面人脸嵌入相似。

网络结构

        通过共同学习蒙版和非蒙版人脸图像的正确身份分类,并通过嵌入级别 KD 确保蒙版人脸的嵌入与相同身份的非蒙版图像的嵌入相似来实现。 KD 教导学生网络以产生类似于老师生成的非蒙面人脸嵌入的嵌入的方式处理蒙面人脸,从而尝试忽略蒙版引入的非身份相关信息。

        在非蒙面人脸上训练的性能良好的人脸识别模型充当我们知识蒸馏架构中的教师模型。第二个 FR 系统充当学生网络,并通过与教师模型的交互进行训练,使其具有掩模不变性,从而从蒙面面部生成的嵌入与从非蒙面面部生成的嵌入相似。

        所提出的蒙面人脸识别 MaskInv 方法概述:预先训练的教师网络和要训练的学生网络转发相同的图像。当概率 pMask 为 0.5 时,将合成掩模添加到学生网络的输入图像中。在训练过程中,计算教师网络和学生网络的人脸嵌入之间的均方误差(LKD)。然后,计算出的误差会影响学生网络的总体损失 LTotal,该网络还使用 ElasticFace-Arc 损失进行训练。

        图 1给出了所提出的学习场景的示意图。在训练期间,相同的图像同时输入到教师和学生模型。在转发到学生模型的图像上,应用具有概率 pMask 的合成掩模,而转发到教师网络的图像保持不变。合成掩模是通过在面部上放置掩模模板来创建的,具体取决于图像预处理期间用于面部对齐的标志。合成掩模应用于输入学生模型的部分图像(概率 pMask),以确保它仍然能够以最佳方式处理非掩模面部,并实现更稳定的训练过程。对于教师网络,使用预先训练的辅助网络来指导新训练的学生网络。学生网络不仅经过训练以产生正确的分类决策,而且还优化生成的嵌入,使其与教师网络的嵌入相似(在非遮蔽面孔上)。因此,学生网络使用由两种不同损失组成的组合损失 LTotal 进行训练。正式地,将总损失 LTotal 定义为:

其中,LElasticArc指的是损失函数ElasticFace-Arc,LKD指的是模板级KD过程中的均方误差损失。 ElasticFace-Arc 损失函数放宽了类似高性能 FR 损失函数的固定边距约束,因此为灵活的识别可分离性提供了空间。它优于其他几个 SOTA FR 损失函数,尤其是在硬交叉姿势基准测试中 。形式上,它可以定义为:

其中 N 表示批量大小,c 表示身份数量,s 表示尺度参数,m 表示裕度参数,σ 表示标准差。,函数 E(m,σ) 返回平均值为 m 且标准差为 σ 的高斯分布的随机值。

        LKD 作为教师网络的特征嵌入和学生网络的特征嵌入之间的 KD 的一部分进行计算,以优化嵌入本身而不是网络分类行为。这确保了由掩模引起的嵌入失真保持在最低限度,从而指导 KD 过程生成掩模不变的学生网络。使用的 LKD 损失(均方误差)可以形式化为:

其中 ΦS i 和 ΦT i 分别是从学生和教师模型的嵌入层获得的特征表示,D 是嵌入的大小。

        由于学习到的特征嵌入被归一化,LKD 的范围相当小,因此,在第一个训练步骤中用权重 λ = 100 对它们进行加权。这使得 LKD 有助于整体损失,同时保持对 LElasticArc 学习身份分类的重视,从而实现知识转移。

        基于上述方法提出了两种不同的范例。在MaskInv-HG(掩模不变高指导)方法中,当LElasticArc损失稳定时,将权重增加到λ = 3000,以进一步强调网络对掩模数据的适应。在 MaskInv-LG(掩模不变低指导)方法中,权重在整个训练过程中保持不变。对于详细的消融研究,还提供了第三种解决方案的结果,其中 λ 设置为零,因此不应用 KD,而是使用用概率为 pMask 的合成掩模增强的面部来独立训练学生网络,该解决方案将被称为 ElasticFace-Arc-Aug。

总结

       在本文中,提出了一种口罩不变的人脸识别解决方案,该解决方案不仅旨在构建有判别性的人脸嵌入,还将这一目标扩展到构建无论是否佩戴口罩都保持身份内相似性的嵌入。这种新颖的方法,即 MaskInv,基于通过身份分类学习共同学习在戴着面具的情况下区分身份,并通过来自教师网络的嵌入级 KD 学习为相同身份的蒙面和非蒙面面孔生成类似的嵌入。所提出的解决方案优于当前的 SOTA 方法。此外,提出的解决方案在验证非蒙面人脸时保持了高水平的准确性,所提出的掩模不变人脸表示学习的潜力可能不仅限于其用于蒙面人脸识别,而且还可以证明对于一般的遮挡人脸识别问题有用,这仍有待研究。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2075078.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

上半年大模型遍地开花,大模型发展中有哪些经验和教训?

前言 过去一年里,大模型遍地开花,我自己也在做大模型训练相关的工作,踩过了很多很多坑,这里分享一些教训:用成熟的分布式训练框架: 多用 DeepSpeed,少用 Pytorch 原生的 torchrun。在节点数量较…

Android settings命令讲解和实战

1,简介 在Android系统中,settings命令用于管理设备设置。这些命令可以与Settings提供者(Settings provider)交互,后者是一个用于存储和检索系统设置的系统服务。Settings provider在Android系统中可以被看作是一个特殊…

垃圾目标检测数据集

垃圾目标检测数据集。数据集已经标注好,txt标注,YOLO格式,适用于训练YOLO系列目标检测模型(YOLO5 YOLO8 YOLO9 YOLO10等)数据集已经划分好训练集(4526张图)验证集(1046张图片&#x…

Git 分支操作全解析:创建、切换、合并、删除及冲突解决

“ 在现代软件开发中,高效的版本控制是确保项目成功的关键。Git 提供了强大的分支管理功能,使得开发者能够独立地进行功能开发、修复 bug 和进行紧急修补。本文将深入探讨 Git 分支的基本操作,包括创建、切换、合并和删除分支,同时…

使命同心,六西格玛同行,顶尖人才扎堆来!——张驰咨询

在当今竞争激烈的商业环境中,顶尖人才不仅是企业创新与突破的源泉,更是决定企业成败的关键因素。如何有效吸引并长期留住这些宝贵资源,成为企业家们亟待解决的难题。企业文化、领导风格以及先进的管理方法,如六西格玛,…

两个视频如何合成一个视频?推荐8个视频合并方法

两个视频如何合成一个视频?在数字时代,视频内容的创作和编辑变得越来越普及。无论是在个人项目还是专业制作中,将两个视频合并成一个已成为常见需求。这一操作不仅能提高视频内容的连贯性,还能增强观众的观看体验。下面&#xff0…

大模型火了一年半,AI应用如何实现商业变现?

自ChatGPT走红后,国内AI大模型建设潮起,如今经过一年半的快速发展后,大模型商业化显著提速。自生成式AI席卷各行业以来,市场对AI应用发展的预期高涨,但AI应用似乎陷入“增长难题”,进展不及预期&#xff0c…

Java筑基之路:数组的深入了解学习!

🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝 🥇博主昵称:小菜元 🍟博客主页…

科技温柔拥抱梦乡!康姿百德柔压磁性枕舒适与科技的甜蜜邂逅

解锁未来睡眠新姿势!康姿百德柔压磁性枕,科技护航每一夜好梦 在现代家居产品的设计中,科技与舒适性的结合越来越受到人们的关注。康姿百德柔压磁性枕正是一款将科技与舒适结合的产品,为现代生活注入了新的活力。 康姿百德柔压磁性…

【发邮件】 在邮件中添加 (mailto:) 链接的返回电子邮件

🐳打工人给导师发邮件,注意格式中学到的一个东西,记录一下 发送邮件想达到点击这个邮件就能到收件人的位置,不用跳转。 也就是你点击这个邮件 就能直接给你蹦到发送这个人,然后直接发送 只需要在邮件那个位置 加入超…

语言大模型的分布式训练与高效微调指南

最近语言大模型(LLM)异常火爆,一个非常特别的开源社区正在探索在消费级硬件上微调、提供服务和进行推理的最佳方式。为满足上述需求,出现了许多出色的开源代码库,以HuggingFace生态系统为中心,这些代码库还…

【干货】看看我司消息队列用啥,全网最接地气pulsar教程(含业务解耦demo源码)

前言 🍊缘由 消息队列一出手,pulsar就知有没有 🐣闪亮主角 大家好,我是JavaDog程序狗 今天跟大家分享pulsar,一个分布式的消息发布/订阅传递平台。 本狗以身入局,将pulsar的使用场景,结合实…

【flask框架搭建服务器demo】Python 使用轻量级 Flask 框架搭建 Web 服务器可视化数据库数据demo

本文适合刚入门flask框架用来熟悉项目的开发人员,关于flask框架的组成概念一些用法请参考下面的文章 https://blog.csdn.net/qq_47452807/article/details/122289200 本文主要给出一个可视化sqlite数据库数据的demo,先展示一下效果: 主要的…

前端速通面经八股系列(二)—— HTML篇

HTML高频面经八股目录 1. src和href的区别2. 对HTML语义化的理解3. DOCTYPE(⽂档类型) 的作⽤4. script标签中defer和async的区别5. 常⽤的meta标签有哪些6. HTML5有哪些更新1. 语义化标签2. 媒体标签3. 表单4. 进度条、度量器5.DOM查询操作6. Web存储7. 其他 7. img的srcset属…

Python 图像处理进阶:特征提取与图像分类

特征提取 特征提取是计算机视觉中的一个重要环节,它可以从图像中提取出有助于后续处理的特征,比如用于识别和分类的关键点、纹理等。常见的特征提取方法包括SIFT、SURF和ORB等。 SIFT(尺度不变特征变换) SIFT是一种用于检测图像…

Web-ssrfme--redis 未授权访问攻击

目录 1、题目源码 2、测试ssrf 3、发现主机 4、发现服务 5、redis 未授权访问攻击 6&#xff0c;拿flag 1、题目源码 <?php highlight_file(__file__); function curl($url){ $ch curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_HEADER…

用Maven开发Spring Boot 项目

一、初识 Spring Boot Spring Boot框架是一 套开源的后台开发框架&#xff0c; 继承了Spring MVC框架的前辈SSM框架的优秀特性&#xff0c;通过注解大幅减少程序员写配置的工作量。从企业开发角度来看&#xff0c;它提供了自动化配置&#xff0c;内嵌容器和兼容Maven等核心功…

银河麒麟桌面操作系统V10:如何快速将应用固定到任务栏?

银河麒麟桌面操作系统V10&#xff1a;如何快速将应用固定到任务栏&#xff1f; 1、图形界面方法2、命令行方法2.1 固定应用2.2 取消固定 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在银河麒麟V10中&#xff0c;/usr/share/applications…

Vue 绘制圆形 上下左右

效果图 代码&#xff1a; <div style"transform: rotate(45deg)"><div id"top"><div id"top-left" click"addformData(true, form.lat, 0.000003, lat)"><ArrowUpBold style"height: 25px; width: 25px; tr…