Center Loss

Center Loss是一种用于深度学习的损失函数,旨在约束网络提取的特征具有类内紧凑性和类间可分离性,提高分类能力和鲁棒性。它通过最小化样本特征与同类平均特征之间的距离来实现这一目标,同时解决了contrastive loss和triplets loss中样本配对问题。在实验中,适当调整λ和α参数能显著提升特征区分度,对Face verification任务表现优异。
摘要由CSDN通过智能技术生成

Center Loss

前言

在深度学习里,深度学习网络通常被看作是特征提取器(从第1层网络层到最后一层隐藏层),提取出来的特征x随后经过线性变换( W T x W^T x WTx)得到类别分数,通过softmax层计算损失。通常,我们没有对提取出来的特征x提出太大的约束,只要它能被最后一层分类器正确分类就可以了。特征x与其类别要有什么关系,需要特征x具有什么约束,这些都没有被明确地要求或规定。Softmax损失要求特征x能够被最后一层分类器正确分类,这个对特征x的约束不是很强。当给网络传入一些对抗样本(容易被网络误识别的样本)时,网络难以分辨出这些样本属于哪类。如果从提取出来的特征来说,是因为网络从对抗样本提取出来的特征处于最后一层分类器的分类边界,或者说,网络提取出来的特征没有很强的区分度。

我们看一个示意图
feature
上图是从MNIST数据集中提取出来的特征分布图。不同颜色代表不同类别的特征。图a是训练集的特征,可以看到不同类之间的特征有明显的间隔,很容易区分不同的类别。但是,图b是测试集的特征,可以看到,有些测试样本的特征位于分类器的分类边界,使得分类器难以判断样本的类别。其原因可以认为是提取的不同类别的特征没有明显的区分度,同类的特征没有紧凑地聚在一起。

从特征特征的角度来看,为了增强网络的性能,网络提取出来的特征应该具有强的区分度(discrimination power)。怎样的特征算是有强的区分度呢?(看下图)学过聚类的朋友应该听说过,聚类的结果“簇内相似度”高且“簇间相似度”低。套用这种说法,特征应该有类内紧凑性和类间可分离性(intra-class compactness and inter-class separability)。类内紧凑性的意思是同一类的特征应该聚在一起,类间可分离性是指特征很容易划分成不同的类别。同类样本特征聚在一起,不同类特征之间的间隔更大,更容易对特征进行分类,提高网络模型的分类能力,提高鲁棒性。Softmax损失能够要求特征具有类间的可分离性,但不能约束特征的类内紧凑性。
discriminative features

为了约束网络提取出来的特征具有紧凑性,contrastive loss 和 triplets loss 被提出来了。contrastive loss的思想是最小化一对同类样本特征的距离,最大化一对不同样本特征之间的距离。Triplets loss则把一对变成3个。contrastive loss 和 triplets loss 需要把样本两两配对或三三组合起来,导致样本急剧增大,加长了训练的时间,提高训练难度。

Center loss 1

算法

Center loss 能够直接对样本特征之间的距离进行约束。Center loss 添加的约束是,特征与同类别的平均特征的距离要足够小,这要求同类特征要接近它们的中心点,公式如下表示:
L C = 1 2 ∑ i = 1 m ∥ x i − c y i ∥ 2 2 L_C = \frac{1}{2} \sum_{i=1}^{m} \lVert \mathbf{x}_i - \mathbf{c}_{y_i} \rVert _2^2 LC=21i=1mxicyi22
其中 x i \mathbf{x}_i xi表示第i个样本的提取特征, c y i \mathbf{c}_{y_i} c

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Center Loss是一种用于人脸识别和特征学习的损失函数。然而,Center Loss不能直接使用的原因是它需要考虑整个训练集,并在每次迭代中平均每个类的特征,这是低效的。因此,为了解决这个问题,我们需要对Center Loss进行一些改进。 一种解决方法是使用Mini-batch Center Loss,它在每个小批量数据上计算每个类别的特征中心。具体来说,对于每个类别,在小批量数据中统计该类别的特征,并计算出该类别的特征中心。然后,通过最小化特征与其对应类别的特征中心之间的距离,来更新特征中心。这样,我们可以在每个小批量数据上更新特征中心,而不需要考虑整个训练集。 另一种解决方法是使用在线更新的Center Loss。在线更新的Center Loss只在每个样本的前向传播过程中计算特征中心,并在反向传播过程中更新特征中心。这样,我们可以在每个样本上更新特征中心,而不需要在每次迭代中平均每个类的特征。 综上所述,为了解决Center Loss不能直接使用的问题,我们可以使用Mini-batch Center Loss或在线更新的Center Loss来改进Center Loss的效率和实用性。 #### 引用[.reference_title] - *1* *2* [CenterLoss原理详解(通透)](https://blog.csdn.net/weixin_54546190/article/details/124504683)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [CenterLoss | 减小类间距离](https://blog.csdn.net/qiu931110/article/details/106108936)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值