PolyLoss: A Polynomial Expansion Perspective of Classification Loss Functions
文章信息
题目:A Polynomial Expansion Perspective of Classification Loss Functions
发表:ICLR,2022
作者:Zhaoqi Leng, Mingxing Tan, Chenxi Liu, Ekin Dogus Cubuk, Xiaojie Shi, Shuyang Cheng, Dragomir Anguelov
背景
分类方面的损失已经有很多了,经典的如Softmax cross-entropy, Focal loss及其改进,这篇文章从泰勒展开的视角对之前的损失函数进行审视,并据此提出一种更加灵活,更加General的loss。
动机
作者认为一个好的损失函数的形式应该是灵活的,能够支持根据具体任务和数据集进行调整,而当前的损失函数显然没有达到这个要求。作者受到函数泰勒展开的启发,提出了一种形式上更加灵活的多项式损失函数PolyLoss—损失被表达为一些列多项式基的线性组合,并结合实际展示了几种可行的简化版本。
方法
经典的Cross-entropy, Focal loss在
P
t
=
1
P_{t}=1
Pt=1处做Taylor展开的形式如下:
其中
P
t
P_{t}
Pt表示属于目标target的概率,
可以看到:
- 这两个损失函数都可即表示为一组多项式基({ ( 1 − p t ) , ( 1 − p t ) 2 , . . . (1-p_{t}), (1-p_{t})^{2},... (1−pt),(1−pt)2,...})的线性组合。
- 对比这两个Loss的展开形式,可以发现:相比于Cross entropy,Focal loss通过引入调制因子 γ \gamma γ来水平偏移多项式基的Power。
- 当 γ = 0 \gamma=0 γ=0时,Focal loss实际上退化成了Cross entropy。
下面对这些损失的梯度作进一步的分析。
梯度分析
(1)Cross-entropy
L
C
E
L_{CE}
LCE关于
P
t
P_{t}
Pt求倒可得,
很有意思,可以发现:由于多项式的系数恰好被相应的多项式基的Power抵消,公式右边直接变成了多项式基的线性和,其中每一项实际上刻画的是对
P
t
P_{t}
Pt的不同敏感性。
(2)Focal loss
L
F
L
L_{FL}
LFL关于
P
t
P_{t}
Pt求倒可得,
与Cross-entropy loss的梯度展开对比,可以发现:
(1)第一个常数项消失了,这个常数项实际上也是导致模型出现Bias(偏向多数类)的根源,因为多数类样本在该项上对梯度的贡献会更大。这实际上揭示了为什么Focal loss能够一定程度上缓解imbalanced issue。
(2)后边几项的权重实际上变大了,并且变大的程度随着阶数的增大而减小。
PolyLoss的一般形式
PolyLoss的一般形式如下,
∑
j
=
1
∞
α
j
(
1
−
P
t
)
j
\sum _{j=1}^{\infty}\alpha_{j}(1-P_{t})^{j}
∑j=1∞αj(1−Pt)j
该框架实际上提供了一种更灵活的表达形式,允许调节各个多项式的系数。然而其还不能用于实际,因为项的个数时无穷的,并且这么多的系数如何设置?
下面展示了通过调制系数
α
j
\alpha_{j}
αj来设计可行的Loss的几种策略
策略1: L d r o p L_{drop} Ldrop
即直接丢弃PolyLoss的高阶项,然而通过实验和理论分析,作者发现高阶项至关重要。该策略无效;
策略2: L P o l y − N L_{Poly-N} LPoly−N
扰动PolyLoss的前N项的系数。相比于水平调节PolyLoss (像Focal loss 那样),这里调节系数实际上相当于在垂直方向上调节。这样一来,损失的形式变为了:
通过实验发现,
- 其效果超越了Cross-entropy, 对比结果如下表:
2.调节第一项带来的效果提升幅度更大,调节约靠后的项提升效果越来越弱。
不过依然有N个参数需要调整。
策略3: L P o l y − 1 L_{Poly-1} LPoly−1
基于上一个策略,作者提出只扰动第一项的系数,这样一来,损失变成了:
只引入了一个参数。
扩展
PolyLoss所提出的扰动低阶项系数的思路可以与经典的Loss,比如Focal loss进行结合,伪代码如下:
思考
1.总体而言,文章思路清新,启发性较好。作者通过Taylor展开对经典的Loss进行审视,从而提出了一种更加General,更加灵活的损失形式。并最终给出了实际可行的Loss— L P o l y − 1 L_{Poly-1} LPoly−1。
2.从一个新的视角揭示了常用Loss的问题,这些批判性的思考很有价值。
3.分类领域这块的Loss有很多,文中比较的Loss具有代表性,但却并不是最新的。
References
- Leng Z, Tan M, Liu C, et al. PolyLoss: A Polynomial Expansion Perspective of Classification Loss Functions[J]. arXiv preprint arXiv:2204.12511, 2022.