人脸识别-Crystal loss

2024-06-17 16:08
文章标签 人脸识别 loss crystal

本文主要是介绍人脸识别-Crystal loss,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简介

the Crystal loss gains a significant improvement in the performance. It achieves new state-of-the-art results on IJB-A, IJB-B, IJB-C and LFW datasets, and competitive results on YouTube Face datasets. It surpasses the performance of several state-of-the-art systems, which use multiple networks or multiple loss functions or both. Moreover, the gains from Crystal Loss are complementary to metric learning (eg: TPE [42], joint-Bayes [7]) or auxiliary loss functions (eg: center loss [50], contrastive loss [44]). We show that applying these techniques on top of the Crystal Loss can further improve the verification performance.

 

Moreover, the center loss can also be used in conjunction with Crystal Loss, which performs better than center loss trained with regular softmax loss

Crystal loss 取得了很好的效果,对比当前使用 的softmax loss, 结合center loss 能够取得更好的提升

Crystal loss 只引入了一个参数 系数 a.

 

公式介绍

 

f(xi) 就是把 xi 归一化到一个半径为 a 的超球面上。

 

Crystal  loss的好处

首先,在超球面上,软最大损失的最小化等价于正对余弦相似度的最大化和负对余弦相似度的最小化,增强了特征的验证信号。其次,由于所有的人脸特征都具有相同的l2范数,softmax损失能够更好地模拟极端和困难的人脸。

 

优点对比

在mnist 数据集上面的测试结果

1.Crystal Loss 更细,所以整个类内角度更小,即类内间距更小

2.Crystal Loss 的模长 更小,因为归一化的原因。不那么像softmax 特征模长越长,置信度越高。这样有利于不清晰图片或者非正面人脸的训练。

 

训练人脸识别结果对比

 

 

实现

用caffe实现较简单:

就是先使用 normalize 然后再用 scale 就能完成 归一化到特定超球面 

 

系数a的设置问题

The scaling parameter α plays a crucial role in deciding the performance of L2-softmax loss. There are two ways to enforce the L2-constraint: 1) by keeping α fixed throughout the training, and 2) by letting the network to learn the parameter α. The second way is elegant and always improves over the regular softmax loss. But, the α parameter learned by the network is high which results in a relaxed L2-constraint. The softmax classifier aimed at increasing the feature norm for minimizing the overall loss, increases the α parameter instead, allowing it more freedom to fit to the easy samples. Hence, the α learned by the network forms an upper bound for the parameter. Improved performance is obtained by fixing α to a lower constant value.

1.固定为常量

2.使用在线学习的方式学习

在线学习的方式可能会存在问题导致系数变大,导致稀疏,所以可以给该系数设置各上界,来提高性能。

 

On the other hand, with a very low value of α, the training algorithm does not converge. For instance, α = 1 performs poorly on the LFW [20] dataset, achieving an accuracy of 86.37% (see Figure 11). The reason being that a hypersphere with small radius (α) has limited surface area for embedding features from the same class together and those from different classes far from each other

系数如果设置太小,模型会不容易收敛,因为超球面表面积减少

如果选择ca参数的大小

上图横坐标是 系数的大小, 纵坐标是 预测得分, C 是类别,所以 如果 我们希望 预测得分 大于 0.9时,我们应该让系数 大于a_low的最小值

 

人脸识别的结果对比

From the figure, the performance of Crystal loss is better for α >12 which is close to its lower bound computed using equation 9 for C = 13403 with a probability score of 0.9.

从图中可以看出 α >12 时,Crystal Loss 效果较好,该值也满足上面的α_low公式

 可以看出  FAR =0.0001时,Crystal Loss 有明显的性能提升。

 

在大数据集有相同的表现,相应  α的值应该也会略有增大

 

使用 center loss 结合 

近来不同的Loss 结果对比

The scaling parameter was kept fixed with a value of α = 50. Experimental results on different datasets show that Crystal loss works efficiently with deeper models.

 

根据图像的清晰度来优化人脸识别方案

quality pooling 是根据 人脸的质量来控制权重,例如在一系列清晰度不一样的同一个人脸图片中特征的取值计算方法。(这也是与直接取均值的区别)

quality attenuation 是根据 人脸的质量 来 动态调整 相似度得分,质量高的相似度得分可信,质量低的图像相似度得分不可信,所以大小进行了 gama缩放。

这篇关于人脸识别-Crystal loss的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1069908

相关文章

深度学习实战:如何利用CNN实现人脸识别考勤系统

1. 何为CNN及其在人脸识别中的应用 卷积神经网络(CNN)是深度学习中的核心技术之一,擅长处理图像数据。CNN通过卷积层提取图像的局部特征,在人脸识别领域尤其适用。CNN的多个层次可以逐步提取面部的特征,最终实现精确的身份识别。对于考勤系统而言,CNN可以自动从摄像头捕捉的视频流中检测并识别出员工的面部。 我们在该项目中采用了 RetinaFace 模型,它基于CNN的结构实现高效、精准的

Python 人脸识别实战教程

引言 在本教程中,我们将深入探讨如何使用Python和OpenCV库来实现人脸检测与识别。本文从基础知识入手,逐步构建一个简单的人脸识别系统。本教程假设读者已经熟悉Python编程,并具备一定的OpenCV使用经验。 环境配置 安装必要的库 确保您的开发环境中已安装了Python和OpenCV。可以通过以下命令安装OpenCV: pip install opencv-python

人脸识别开源项目之-face_recognition

特性 从图片里找到人脸 定位图片中的所有人脸: import face_recognitionimage = face_recognition.load_image_file("your_file.jpg")face_locations = face_recognition.face_locations(image) 识别人脸关键点 识别人脸关键点,包括眼睛、鼻子、嘴和下巴。

Face Recognition简记1-A Performance Comparison of Loss Functions for Deep Face Recognition

创新点 1.各种loss的比较 总结 很久没见到这么专业的比较了,好高兴。 好像印证了一句话,没有免费的午餐。。。。 ArcFace 和 Angular Margin Softmax是性能比较突出的

【读论文】MUTUAL-CHANNEL LOSS

论文题目:《The Devil is in the Channels: Mutual-Channel Loss for Fine-Grained Image Classification》 链接:https://arxiv.org/abs/2002.04264 来源:IEEE TIP2020 细粒度分类的主要思想是找出各个子类间的可区分特征,因此文章指出要尽早在通道上进行钻研,而不是从合并

【C++】基于 OpenCV 的人脸识别(强烈推荐)

原文网址:http://www.jianshu.com/p/96be2417cc98 一点背景知识 OpenCV 是一个开源的计算机视觉和机器学习库。它包含成千上万优化过的算法,为各种计算机视觉应用提供了一个通用工具包。根据这个项目的关于页面,OpenCV 已被广泛运用在各种项目上,从谷歌街景的图片拼接,到交互艺术展览的技术实现中,都有 OpenCV 的身影。 OpenCV 起始于

[论文笔记]Circle Loss: A Unified Perspective of Pair Similarity Optimization

引言 为了理解CoSENT的loss,今天来读一下Circle Loss: A Unified Perspective of Pair Similarity Optimization。 为了简单,下文中以翻译的口吻记录,比如替换"作者"为"我们"。 这篇论文从对深度特征学习的成对相似度优化角度出发,旨在最大化同类之间的相似度 s p s_p s

行业首家!百度智能云通过中国信通院「H5 端人脸识别安全能力」测评

2024 年 6 月,在中国信通院组织的 H5 端人脸识别产品安全能力评测中,百度智能云「H5 实时活体检测产品-V3.0」在人脸识别算法安全能力、人脸数据传输安全能力、H5 端应用安全能力、身份认证业务安全能力、安全管理能力 5 个方面表现优异,相应能力项的指标均符合标准验证要求。成为行业内首家通过该项权威测评的企业,再次彰显了百度智能云在人工智能领域的领先地位。 随着数字化时代的

一款人脸识别的芯片内部

三年前在一家3D人脸识别的芯片公司,先后做过两个稍具规模的芯片项目,因为各种原因,这些最终都没有上市,成为沉寂在实验室的产物。但是这些芯片的总体设计都颇具匠心,自己在当时也很有触动,现在拿出一点来供读者欣赏。为不侵犯原有设计者的创作,所有列举的芯片结构图已经经过本人抽取和改动,只为学习和演示这些设计的原理。 首先介绍的是一款当时爆炒的关于人脸识别的门锁芯片的VI系统,该系统如下所示,支持单摄象头

Focal Loss实现

一、序言         Focal Loss是分类常用到的损失函数,面试中也经常容易考,所以这里记录一下。 二、公式和代码         公式:         Focal Loss = -alpha*(1-pt)**gamma*log(pt)         其中alpha用来调节类别间的平衡,gamma用来平衡难例和简单例的平衡。         代码: import tor