ProSelfLC: Progressive Self Label Correction for Training Robust Deep Neural Networks
整理了文章的关键内容,内容源自 ProSelfLC: Progressive Self Label Correction for Training Robust Deep Neural Networks。
Abstract
- 首先作者给出三种常用的鲁棒性方法:output regularisation(OR), self and non-self label correction (LC) 即正则化,自我矫正和非自我矫正;给出motivation:
- how to automatically decide the trust degree of a learner as training goes is not well answered in the literature(SelfLC的样本信任度)
- Some methods penalise while the others reward low-entropy predictions,which is better(SelfLC的策略选择)
- ProSelfLC: time and entropy
- 预测标签具有足够多的训练时间和低熵 -> 高信任度
- 重新定义有意义的低熵状态并优化学习器
Introduction
这一部分做作者具体说明了OR, LC(Non-SelfLC, SelfLC)方法
- 两个LC区别:Non-SelfLC需要额外的学习,SelfLC只需要一个模型
- 对比:
- OR:
- 直接惩罚了正确输出------软化标签
- 对错误信息没有充分利用
CP方法中使用“-”,而后续SelfLC是“+”。个人理解CP核心在于惩罚自信的预测,当预测值很接近1时,修改后的标签值会变得比较小,例如q=1,p=0.9, ϵ \epsilon ϵ=0.2,qcp=(1-0.2)-0.2*0.9=0.62,过于接近1会使得loss变大,因此思想不同于SelfLC。
可以明显的看到标签软化和惩罚自信预测,因为(1- ϵ \epsilon ϵ)q,会必然无条件的降低qcp
- LC:
- Non-SelfLC:依赖其他模型的输出(KD中T-net和S-net)
依赖于辅助模型的预测 - SelfLC:依赖模型本身
- Non-SelfLC:依赖其他模型的输出(KD中T-net和S-net)
- SelfLC:
学习目标t=(1 − ϵ \epsilon ϵ)q + ϵ \epsilon ϵ;p
q为target独热标签,p为预测值,∈为1时绝对相信自己的标签,s为0是绝对相信原始标签 - ProSelfLC
关于SelfLC对标签信任度的问题:
- 学习初期:早期的模型倾向于学习整体模式而非某个噪声,给出的标签信任度远大于预测的标签
- 学习中后期:此时模型学习到一定信息,对标签有一定的修改能力
关于SelfLC的策略选择问题:使用奖励低熵预测的策略
Mathematical Analysis and Theory
本节给出比较多的定义和证明,放了一些我觉得比较重要结论,证明暂时没有细看
- revisit
- Standard CCE
- Label smoothing
- Confidence penalty
- Label correction
其中p是预测值,q是给定标签的值
ProSelfLC: Progressive and Adaptive Label Correction
总公式如下
- g(t)与l( p)分别为全局置信分数和局部置信分数,之后作者给出了这两个公式的理论原因
- g在初期训练时,t<Γ/2,可得到g(t) < 0.5,∈ < 0.5。这将导致model更加相信标注的结果,自身只学习相似性结构。
g在后期训练时,t>Γ/2,可得到g(t) > 0.5,这有利于提高mode的预测 - l在后期训练时值较大,源于预测的置信度逐步提高
- 案例的分析
- 作者给出不同阶段的置信度
可以看出g(t)前后期差异很大,但是由于g(t)和l§的相乘关系,即使在后期训练,对于错误的低l§样本给的总置信度也是很低的,而正确样本在训练后期,由于g(t)和l§都很高,因此总的分数也高 - 修改标签操作:在t足够大(模型学习到有效的数据结构模型)且预测值跟原标签差距很大时,对标签进行修改。
作者举例说明,p=[0.95, 0.01, 0.04], q=[0, 0, 1],∈=0.8,
Experiments
-
不同模型在CIFAR-100上的对比实验
-
模型不同参数的实验
小结
- 使用SelfLC作为基础,结合迭代周期T以及预测值和标定值的交叉熵,综合得出新的Loss损失函数计算方式
- 在模型训练前期,模型从数据集中学习到数据的相似性结构,此时模型更倾向于学习原始的标定标签,对自己的预测值置信度较低
- 随着迭代次数增加,模型在面对交叉熵较大的样本时,对其置信度会降低,此时可达到对噪声的过滤和矫正,以此实现对数据集的降噪以及提高模型精度