赞
踩
《Long-Tail Learning via Logit Adjustment》
通过 Logit 调整进行长尾学习
Aditya Krishna Menon、Sadeep Jayasumana、Ankit Singh Rawat、Himanshu Jain、Andreas Veit 和 Sanjiv Kumar
来自 Google Research
背景:
最近进展:
最近,在神经网络的背景下,长尾学习重新引起了人们的兴趣。
本文方法:
总之,我们的贡献是:
我们提出了两种用于长尾学习的 logit 调整实现,可以后期应用(第 4.2 节)或在训练过程中应用(第 5.2 节)
我们确立了 logit 调整克服了近期提案的局限性(见表 1),特别是对于最小化平衡误差(公式 (2))具有费希尔一致性;
我们在真实数据集上验证了所提出技术的有效性(第 6 节)。在我们的分析过程中,我们还提出了一对一标签间隔的 softmax 交叉熵的一般版本(公式 11),它提供了控制标签对整体损失相对贡献的灵活性。
问题设置及相关工作
问题设置:
考虑一个多类分类问题,其中实例集为
X
\mathcal{X}
X,标签集为
Y
=
[
L
]
≈
{
1
,
2
,
⋯
,
L
}
\mathcal{Y}=[L]\approx\{1,2,\cdots,L\}
Y=[L]≈{1,2,⋯,L}。给定一个样本
S
=
{
(
x
n
,
y
n
)
}
n
=
1
N
∼
P
N
S=\{(x_n,y_n)\}^N_{n=1}\sim\mathbb{P}^N
S={(xn,yn)}n=1N∼PN,对于未知的
X
×
Y
\mathcal{X}\times\mathcal{Y}
X×Y 上的分布
P
\mathbb{P}
P,我们的目标是学习一个评分函数
f
:
X
→
R
L
f:\mathcal{X}\to\mathbb{R}^L
f:X→RL,以最小化误分类误差
P
x
,
y
(
y
∉
arg
max
y
′
∈
Y
f
y
′
(
x
)
)
\mathbb{P}_{x,y}\left(y\notin\arg\max_{y'\in\mathcal{Y}}f_{y'}(x)\right)
Px,y(y∈/argmaxy′∈Yfy′(x))。通常,人们会最小化一个替代损失函数:
Y
×
R
L
→
R
\mathcal{Y}\times\mathbb{R}^L\to\mathbb{R}
Y×RL→R,如 softmax 交叉熵,
L
(
y
,
f
(
x
)
)
=
log
[
∑
y
′
∈
[
L
]
e
f
y
′
(
x
)
]
−
f
y
(
x
)
=
log
[
1
+
∑
y
′
≠
y
e
f
y
′
(
x
)
−
f
y
(
x
)
]
.
(
1
)
\mathcal{L}(y,f(x))=\log\left[\sum_{y'\in[L]}e^{f_{y'(x)}}\right]-f_{y}(x)=\log\left[1+\sum_{y'\ne y}e^{f_{y'(x)}-f_y(x)}\right].\qquad(1)
L(y,f(x))=log
y′∈[L]∑efy′(x)
−fy(x)=log
1+y′=y∑efy′(x)−fy(x)
.(1)
在类不平衡或长尾学习的情况下,
P
(
y
)
\mathbb{P}(y)
P(y) 的分布高度偏斜,因此许多(罕见或“尾”)标签的发生概率很低。在这种情况下,误分类误差不是一个合适的性能度量:一个将每个实例分类为多数标签的平凡预测器将获得较低的误分类误差。为了应对这一问题,一个自然的替代方法是平衡误差,它平均每个类的错误率:
BER
(
f
)
≈
1
L
∑
y
∈
[
L
]
P
x
∣
y
(
y
∉
arg
max
y
′
∈
Y
f
y
′
(
x
)
)
.
(
2
)
\text{BER}(f)\approx\frac{1}{L}\sum_{y\in[L]}\mathbb{P}_{x|y}(y\notin\arg\max_{y'\in\mathcal{Y}}f_{y'}(x)).\qquad(2)
BER(f)≈L1y∈[L]∑Px∣y(y∈/argy′∈Ymaxfy′(x)).(2)
这可以看作是隐式使用平衡类概率函数
P
bal
(
y
∣
x
)
∝
1
L
⋅
P
(
x
∣
y
)
\mathbb{P}^\text{bal}(y|x)\propto\frac{1}{L}\cdot\mathbb{P}(x|y)
Pbal(y∣x)∝L1⋅P(x∣y),而不是误分类误差中使用的原生
P
(
y
∣
x
)
∝
P
(
y
)
⋅
P
(
x
∣
y
)
\mathbb{P}(y|x)\propto\mathbb{P}(y)\cdot\mathbb{P}(x|y)
P(y∣x)∝P(y)⋅P(x∣y)。
现有方法分类:
广泛地讲,现有处理类不平衡的方法(见表 2)修改了:
因此,在本文中,我们关注后两类方法,并描述每个方面的几个代表性例子。
事后权重归一化(Post-hoc weight normalisation)
假设 f y ( x ) = w y T Φ ( x ) f_y(x) = w^T_y\Phi(x) fy(x)=wyTΦ(x),对于分类权重 w y ∈ R D w_y\in\mathbb{R}^D wy∈RD 和表示 Φ : X → R D \Phi:\mathcal{X}\to\mathbb{R}^D Φ:X→RD,由神经网络学习(我们可以在 Φ \Phi Φ 中添加每类的偏置项)。
一个富有成效的探索途径涉及解耦表示学习和分类器学习。具体来说,我们首先通过在长尾训练样本
S
S
S 上标准训练来学习
{
w
y
,
Φ
}
\{w_y,\Phi\}
{wy,Φ},然后对于
x
∈
X
x\in\mathcal{X}
x∈X 预测:
arg
max
y
∈
[
L
]
w
y
T
Φ
(
x
)
/
ν
y
τ
=
arg
max
y
∈
[
L
]
f
y
(
x
)
/
ν
y
τ
,
(
3
)
\arg\max_{y\in[L]}w^T_y\Phi(x)/\nu^\tau_y =\arg\max_{y\in[L]}f_y(x)/\nu^\tau_y,\qquad(3)
argy∈[L]maxwyTΦ(x)/νyτ=argy∈[L]maxfy(x)/νyτ,(3)
损失修改(Loss modification)
处理类不平衡的一个经典方法是平衡损失,其中
L
(
y
,
f
(
x
)
)
\mathcal{L}(y,f(x))
L(y,f(x)) 通过
P
(
y
)
−
1
\mathbb{P}(y)^{−1}
P(y)−1 进行加权:例如,
L
(
y
,
f
(
x
)
)
=
1
P
(
y
)
⋅
log
[
1
+
∑
y
′
≠
y
e
f
y
′
(
x
)
−
f
y
(
x
)
]
.
(
4
)
\mathcal{L}(y,f(x))=\frac{1}{\mathbb{P}(y)}\cdot\log\left[1+\sum_{y'\ne y}e^{f_{y'}(x)-f_y(x)}\right].\qquad(4)
L(y,f(x))=P(y)1⋅log
1+y′=y∑efy′(x)−fy(x)
.(4)
虽然直观,但在可分离设置中,平衡的效果很小:即使进行加权,实现零训练损失的解决方案也将保持最优。
直观地说,我们更希望将分离器向主导类移动。因此,等提出了在合页损失中添加每类边距。Cao 等人[2019]提出了在 softmax 交叉熵中添加每类边距:
L
(
y
,
f
(
x
)
)
=
log
[
1
+
∑
y
′
≠
y
e
δ
y
⋅
e
f
y
′
(
x
)
−
f
y
(
x
)
]
.
(
5
)
\mathcal{L}(y,f(x))=\log\left[1+\sum_{y'\ne y}e^{\delta_{y}}\cdot e^{f_{y'}(x)-f_y(x)}\right].\qquad(5)
L(y,f(x))=log
1+y′=y∑eδy⋅efy′(x)−fy(x)
.(5)
其中
δ
y
∝
P
(
y
)
−
1
/
4
\delta_y\propto\mathbb{P}(y)^{−1/4}
δy∝P(y)−1/4。这增加了罕见的“正”标签
y
y
y 的权重,从而强制在罕见正标签
y
y
y 和任何“负”标签
y
′
y'
y′ 之间产生更大的间隔。
另一方面,Tan 等人[2020]提出了:
L
(
y
,
f
(
x
)
)
=
log
[
1
+
∑
y
′
≠
y
e
δ
y
′
⋅
e
f
y
′
(
x
)
−
f
y
(
x
)
]
.
(
6
)
\mathcal{L}(y,f(x))=\log\left[1+\sum_{y'\ne y}e^{\delta_{y'}}\cdot e^{f_{y'}(x)-f_y(x)}\right].\qquad(6)
L(y,f(x))=log
1+y′=y∑eδy′⋅efy′(x)−fy(x)
.(6)
动机是,在没有 { δ y ′ } \{\delta_{y'}\} {δy′} 的原始 softmax 交叉熵中,一个罕见标签经常因为不成比例地作为主导标签的负样本而收到强烈的抑制梯度信号。参见 Liu 等人,Wang等人,Khan等人中对 softmax 中负样本的类似加权。
现有方法的局限性:
上述每种方法都是直观的,并且都展示了强大的经验性能。然而,更仔细的分析揭示了一些微妙的局限性。
权重归一化(weight normalisation)的局限性:
Kang 等人中提出采用 ν y = ‖ w y ‖ 2 \nu_y=‖w_y‖_2 νy=‖wy‖2 进行事后权重归一化,其动机是观察到权重范数 ‖ w y ‖ 2 ‖w_y‖_2 ‖wy‖2 与 P ( y ) \mathbb{P}(y) P(y) 相关。然而,我们现在显示这一假设高度依赖于优化器的选择。
我们考虑了 CIFAR-10 和 CIFAR-100 的长尾版本,其中第一个类比最后一个类出现概率高 100 倍。
我们使用 SGD 带动量和 Adam 优化器对一个 ResNet-32 进行优化。图 1 确认,在 SGD 下, ‖ w y ‖ 2 ‖w_y‖_2 ‖wy‖2 和类先验 P ( y ) \mathbb{P}(y) P(y) 是相关的。
然而,使用 Adam 时,规范要么是反相关的,要么与类先验无关。
这种明显的差异可以从最近对优化器隐式偏差的研究中得到理解;参见附录 F。人们可能希望通过简单地使用 ν y = P ( y ) \nu_y=\mathbb{P}(y) νy=P(y) 来避免这一点;不幸的是,即使是这个选择也有局限性(见第 4.2 节)。
损失修改(loss modification)的局限性:
长尾学习的 Logit 调整:统计观点
上述内容表明,在长尾问题的后处理校正和损失修改方面,还有提高性能的空间。我们现在将展示如何从统计角度看待这个问题,并提出简单的方法,这两种方法都克服了上述讨论的局限性。
统计视角:
回想一下,我们的目标是最小化平衡误差(2)。一个自然的问题是:对于这个问题,什么是最佳的可能或贝叶斯最优评分器,即
f
∗
∈
arg
min
f
:
X
→
R
L
BER
(
f
)
f^∗\in\arg\min_{f:\mathcal{X}\to\mathbb{R}^L}\text{BER}(f)
f∗∈argminf:X→RLBER(f)。显然,这样的
f
∗
f^∗
f∗ 必须依赖于(未知的)基础分布
P
(
x
,
y
)
\mathbb{P}(x,y)
P(x,y)。事实上,我们有[Menon等人,2013],[Collell等人,2016,定理1]
arg
max
y
∈
[
L
]
f
y
∗
(
x
)
=
arg
max
y
∈
[
L
]
P
bal
(
y
∣
x
)
=
arg
max
y
∈
[
L
]
P
(
x
∣
y
)
,
(
7
)
\arg\max_{y\in[L]}f^∗_y(x)=\arg\max_{y\in[L]}\mathbb{P}^\text{bal}(y|x)=\arg\max_{y\in[L]}\mathbb{P}(x|y),\qquad(7)
argy∈[L]maxfy∗(x)=argy∈[L]maxPbal(y∣x)=argy∈[L]maxP(x∣y),(7)
换句话说,贝叶斯最优预测是给定实例 x ∈ X x\in\mathcal{X} x∈X 最可能属于的标签。因此,对于固定的类条件 P ( x ∣ y ) \mathbb{P}(x|y) P(x∣y),任意改变类先验 P ( y ) \mathbb{P}(y) P(y) 都不会影响最优评分器。这在直觉上是可取的:平衡误差对标签分布的不平衡水平是漠不关心的。
为了进一步探究(7),假设基础的类概率
P
(
y
∣
x
)
∝
exp
(
s
y
∗
(
x
)
)
\mathbb{P}(y|x)\propto\exp(s_y^∗(x))
P(y∣x)∝exp(sy∗(x)),其中
s
∗
:
X
→
R
L
s^∗:\mathcal{X}\to\mathbb{R}^L
s∗:X→RL 是一个(未知的)评分器。由于根据定义
P
bal
(
y
∣
x
)
∝
P
(
y
∣
x
)
/
P
(
y
)
\mathbb{P}^\text{bal}(y|x)\propto\mathbb{P}(y|x)/\mathbb{P}(y)
Pbal(y∣x)∝P(y∣x)/P(y),(7)变为
arg
max
y
∈
[
L
]
P
bal
(
y
∣
x
)
=
arg
max
y
∈
[
L
]
exp
(
s
y
∗
(
x
)
)
/
P
(
y
)
=
arg
max
y
∈
[
L
]
s
y
∗
(
x
)
−
ln
P
(
y
)
,
(
8
)
\arg\max_{y\in[L]}\mathbb{P}^\text{bal}(y|x)=\arg\max_{y\in[L]}\exp(s^∗_y(x))/\mathbb{P}(y)=\arg\max_{y\in[L]}s^∗_y(x)−\ln\mathbb{P}(y),\qquad(8)
argy∈[L]maxPbal(y∣x)=argy∈[L]maxexp(sy∗(x))/P(y)=argy∈[L]maxsy∗(x)−lnP(y),(8)
即,我们根据类别先验转换(未知的)分布分数或对数。
这个简单的事实立即提示了两种平衡误差优化的方法:
我们现在分别研究每种技术(i)和(ii)。
事后 logit 调整
我们现在详细说明如何对在长尾数据上训练的分类器进行事后 logit 调整。我们进一步展示了这与最近的权重规范化方案相似,但具有一种微妙的优势。
事后 Logit 调整程序
给定一个长尾数据样本 S ∼ P N S\sim\mathbb{P}^N S∼PN,假设我们学习了一个神经网络,其 logits f y ( x ) = w y T Φ ( x ) f_y(x)=w^T_y\Phi(x) fy(x)=wyTΦ(x)。
在事后对数调整(post-hoc logit adjustment)中,我们建议,对于合适的 τ > 0,预测如下:
arg
max
y
∈
[
L
]
exp
(
w
y
T
Φ
(
x
)
)
/
π
y
τ
=
arg
max
y
∈
[
L
]
f
y
(
x
)
−
τ
⋅
log
π
y
,
(
9
)
\arg\max_{y\in[L]}\exp(w^T_y\Phi(x))/\pi^\tau_y=\arg\max_{y\in[L]}f_y(x)−\tau\cdot\log\pi_y,\qquad(9)
argy∈[L]maxexp(wyTΦ(x))/πyτ=argy∈[L]maxfy(x)−τ⋅logπy,(9)
从本质上讲,(9) 在每个 Logit 上添加了一个与标签相关的偏移量。
为了理解这一点,回顾一下 (8) 提供了一个基于真实概率 P ( y ∣ x ) \mathbb{P}(y|x) P(y∣x) 的后处理 logit 阈值的论据。
对 τ \tau τ 的处理:
可以将 τ \tau τ 视为一个调整参数,
另一种选择是固定 τ = 1 \tau=1 τ=1 并试图学习固有校准的概率,
与现有事后分析技术的比较
事后对数调整( τ = 1 \tau=1 τ=1)在类不平衡文献中不是一个新想法。
回想一下,权重规范化涉及学习一个评分器 f y ( x ) = w y ⊤ Φ ( x ) f_y(x) = w^\top_y\Phi(x) fy(x)=wy⊤Φ(x),然后通过 w y / ν y τ w_y/\nu^\tau_y wy/νyτ 对权重进行事后规范化,其中 τ > 0 \tau>0 τ>0。
我们在第2节中证明,当使用自适应优化器时,使用 ν y = ‖ w y ‖ 2 \nu_y=‖w_y‖_2 νy=‖wy‖2 可能不起作用。
然而,即使使用 ν y = π y \nu_y=\pi_y νy=πy,事后对数调整与事后权重规范化之间也存在微妙的对比:
前者对对数进行乘法更新,而后者进行加法更新。
因此,这两种技术可能会产生对标签的不同排序,因为:
w
1
T
Φ
(
x
)
π
1
<
w
2
T
Φ
(
x
)
π
2
<
⋯
<
w
L
T
Φ
(
x
)
π
L
⇏
⇍
e
w
1
T
Φ
(
x
)
π
1
<
e
w
2
T
Φ
(
x
)
π
2
<
⋯
<
e
w
L
T
Φ
(
x
)
π
L
.
\frac{w^\mathrm{T}_1\Phi(x)}{\pi_1}<\frac{w^\mathrm{T}_2\Phi(x)}{\pi_2}<\cdots<\frac{w^\mathrm{T}_L\Phi(x)}{\pi_L}\substack{\nRightarrow\\ \nLeftarrow}\frac{e^{w^\mathrm{T}_1\Phi(x)}}{\pi_1}<\frac{e^{w^\mathrm{T}_2\Phi(x)}}{\pi_2}<\cdots<\frac{e^{w^\mathrm{T}_L\Phi(x)}}{\pi_L}.
π1w1TΦ(x)<π2w2TΦ(x)<⋯<πLwLTΦ(x)⇏⇍π1ew1TΦ(x)<π2ew2TΦ(x)<⋯<πLewLTΦ(x).
权重规范化因此与最小化平衡误差不一致,与对数调整相反。
经 logit 调整的 softmax 交叉熵
我们现在将展示如何直接将 logit 调整融入 softmax 交叉熵中。我们表明这种方法与现有的损失修改技术之间存在直观的关系。
logit 调整损失
在第 3 节中,优化平衡误差的第二种方法是直接建模
P
bal
(
y
∣
x
)
∝
P
(
y
∣
x
)
/
P
(
y
)
\mathbb{P}_\text{bal}(y|x)\propto\mathbb{P}(y|x)/\mathbb{P}(y)
Pbal(y∣x)∝P(y∣x)/P(y)。为此,考虑以下
τ
>
0
\tau>0
τ>0 的 logit 调整 softmax 交叉熵损失:
L
(
y
,
f
(
x
)
)
=
−
log
e
f
y
(
x
)
+
τ
⋅
log
π
y
∑
y
′
∈
[
L
]
e
f
y
′
(
x
)
+
τ
⋅
log
π
y
′
=
log
[
1
+
∑
y
′
≠
y
(
π
y
′
π
y
)
τ
⋅
e
(
f
y
′
(
x
)
−
f
y
(
x
)
)
]
.
(
10
)
\mathcal{L}(y,f(x))=−\log\frac{e^{f_y(x)+\tau\cdot\log\pi_y}}{\sum_{y′\in[L]}e^{f_{y'}(x)+\tau\cdot\log\pi_{y'}}}=\log\left[1+\sum_{y′\ne y}\left(\frac{\pi_{y′}}{\pi_y}\right)^\tau\cdot e^{(f_{y′}(x)−f_y(x))}\right].\qquad\qquad(10)
L(y,f(x))=−log∑y′∈[L]efy′(x)+τ⋅logπy′efy(x)+τ⋅logπy=log
1+y′=y∑(πyπy′)τ⋅e(fy′(x)−fy(x))
.(10)
给定一个最小化上述损失的评分器,我们现在像往常一样预测
arg
max
y
∈
[
L
]
f
y
(
x
)
\arg\max_{y\in[L]}f_y(x)
argmaxy∈[L]fy(x)。
为了更深入地理解损失,考虑以下成对间隔损失:
L
(
y
,
f
(
x
)
)
=
α
y
⋅
log
[
1
+
∑
y
′
≠
y
e
Δ
y
y
′
⋅
e
(
f
y
′
(
x
)
−
f
y
(
x
)
)
]
,
(
11
)
\mathcal{L}(y,f(x))=\alpha_y\cdot\log\left[1+\sum_{y′\ne y}e^{\Delta_{yy'}}\cdot e^{(f_{y′}(x)−f_y(x))}\right],\qquad\qquad(11)
L(y,f(x))=αy⋅log
1+y′=y∑eΔyy′⋅e(fy′(x)−fy(x))
,(11)
与现有损失修正技术的比较
相似性:
粗略地检查(5)、(6)会发现它们与我们的 logit 调整 softmax 交叉熵(10)有显著的相似性。平衡损失(4)也有相似之处,只是权重是在 logarithm 外进行的(outside the logarithm)。
这些损失都是成对间隔损失(11)的特殊情况,该损失强制实施统一的间隔(uniform margins),只考虑正或负标签,与我们的方法不同。
例如, α y = 1 π y \alpha_y=\frac{1}{\pi_y} αy=πy1 和 Δ y y ′ = 0 \Delta_{yy′}=0 Δyy′=0 给出了平衡损失(4)。这不会明确地强制执行标签之间的间隔,这对于可分离问题来说是不理想的。
当 α y = 1 \alpha_y=1 αy=1 时,选择 Δ y y ′ = π y − 1 / 4 \Delta_{yy′}=\pi^{-1/4}_y Δyy′=πy−1/4 给出了(5)。
最后, Δ y y ′ = log F ( π y ′ ) \Delta_{yy′}=\log F(\pi_{y'}) Δyy′=logF(πy′) 给出了(6),其中 F : [ 0 , 1 ] → ( 0 , 1 ] F:[0,1]\to(0,1] F:[0,1]→(0,1] 是一个非递减函数,
因此,这些损失要么考虑正标签 y y y 的频率,要么考虑负标签 y ′ y′ y′ 的频率,但不会同时考虑两者。
上述对 α \alpha α 和 Δ \Delta Δ 的选择都是直观上合理的。然而,第3节表明,我们的损失(10)具有坚实的统计基础:它确保了平衡误差的 Fisher 一致性。
定理1。对于任何
δ
∈
R
+
L
\delta\in\mathbb{R}^L_+
δ∈R+L,成对损失(pairwise loss,11)与权重和间隔是 Fisher 一致的(Fisher consistent with weights and margins)。
α
y
=
δ
y
/
π
y
Δ
y
y
′
=
log
(
δ
y
′
/
δ
y
)
\alpha_y=\delta_y/\pi_y\qquad\qquad\Delta_{yy'}=\log(\delta_{y'}/\delta_y)
αy=δy/πyΔyy′=log(δy′/δy)
讨论和扩展
人们可能会受到诱惑,将(10)中的 logit 调整损失与(9)的后处理调整结合起来。
然而,更广泛地说,将 logit 调整与其他技术结合起来是有价值的。
Cao 等人 [2019, 定理 2] 为具有二元标签的分离训练数据下自适应间隔损失提供了严格的泛化界。
有趣的是,对于 τ = − 1 \tau=−1 τ=−1,一个与(10)相似的损失在可扩展性的负面采样上下文中已被考虑:
实验结果
我们现在介绍的实验证实了我们的主要主张:
合成数据集的结果
实验设置:
我们考虑一个二元分类任务,
平衡误差的贝叶斯最优分类器(见附录 G)
f
∗
(
x
)
=
+
1
⇔
P
(
x
∣
y
=
+
1
)
>
P
(
x
∣
y
=
−
1
)
⇔
(
μ
1
−
μ
−
1
)
⊤
x
>
0
,
(
12
)
f^*(x)=+1\Leftrightarrow\mathbb{P}(x|y=+1)>\mathbb{P}(x|y=-1)\Leftrightarrow(\mu_1-\mu_{-1})^\top x>0,\qquad\qquad(12)
f∗(x)=+1⇔P(x∣y=+1)>P(x∣y=−1)⇔(μ1−μ−1)⊤x>0,(12)
即,它是一个过原点的线性分离器。
我们将这个分离器与基于(11)的几个间隔损失找到的分离器进行比较:
对于每个损失,我们在 10,000 个实例上训练一个仿射分类器,并在 100 次独立的试验中对一个测试集的 10,000 个样本评估平衡误差。
实验结果:
真实世界数据集的结果
数据集:
基线:
方法选择:
我们考虑:
我们对比了上述方法与我们提出的后处理 logit 调整(9)和 logit 调整损失(10)。对于后处理 logit 调整,我们固定标量 τ = 1 \tau=1 τ=1;我们在图 3 中分析了调整此参数的效果。我们没有进一步调整我们的 logit 调整技术。
结果与分析:
表 3 总结了我们的结果,表明我们提出的方法在一致性上优于现有方法。
图片注解:表3:真实世界数据集上的测试集平衡误差(5 次试验的平均值)。
实际上,虽然权重规范化在 ERM 上提供了改进,但通过事后 logit 调整(例如,在 CIFAR-10 上相对减少了 8% 的错误率)可以显著提高这些改进。
同样,损失校正技术通常被我们的对数调整的 softmax 交叉熵所超越(例如,在 iNaturalist 上相对减少了 6% 的错误率)。
图 3 研究了事后权重规范化(使用 ν y = ‖ w y ‖ 2 \nu_y=‖w_y‖_2 νy=‖wy‖2)和事后 logit 调整所提供的缩放参数 τ > 0 \tau>0 τ>0 的效果。
图片注解:图 3:当变化缩放参数 τ \tau τ(参见(3),(9))时,事后校正技术之间的平衡误差比较。事后 logit 调整始终优于权重规范化。
即使没有任何缩放,事后 logit 调整通常也优于权重规范化中最佳结果(见表 3);
加上缩放,这种优势进一步增加。有关 ImageNet-LT 的图见附录 E.4。
图 4 将 CIFAR-10、CIFAR-100 和 iNaturalist 上的每类准确率进行分解。在后者两个数据集上,为了便于可视化,我们将类按照频率排序的顺序聚合为十个组(因此,例如,组 0 包括最频繁的L 10 个类)。
图片注解:图 4:损失修改技术的每类错误率。对于 (b) 和 ©,我们将类聚类为 10 组。ERM 对主导类(较低索引)表现出强烈的偏差。我们提出的 logit 调整的 softmax 损失在罕见类(较高索引)上取得了显著的改进。
正如预期,主导类在所有方法中通常具有较低的错误率。但是,logit 调整损失被看到在罕见类上系统地提高了性能,尤其是与 ERM 相比。
尽管我们的 logit 调整技术表现相似,但损失函数版本略占优势。然而,事后 logit 调整的强性能证实了在长尾设置中解耦表示学习和分类器学习的能力。
讨论与扩展:
表 3 显示了在文献中的标准设置下,logit 调整相对于最近的后处理和损失修改提案的优势。我们认为通过融合互补的思想可以实现进一步的改进,并指出四种这样的选项。
首先,可以使用更复杂的基架构;
我们的选择在文献中是标准的,但,例如,Kang 等人发现,在 ImageNet-LT 上通过使用 ResNet-152 并延长训练时间(200 个周期而不是通常的 90 个周期)可以获得收益。表 4 确认了这一点。
例如,在 iNaturalist 上,我们获得的平衡误差为 31.15%。根据 Kang 等人的建议,延长训练周期(200 个周期),这一数字进一步改善到 30.12%。
第二,可以将各种特殊情况下成对间隔损失的 Δ \Delta Δ 结合起来。
第三,Cao 等人观察到,他们的损失受益于一种延迟重新加权方案(DRW),其中模型开始正常训练,然后在固定数量的周期后应用类加权。
第四,根据第 2 节,可以进行数据增强;
正文中的结果证明
定理 1 的证明。令
η
y
(
x
)
=
P
(
y
∣
x
)
\eta_y(x)=\mathbb{P}(y|x)
ηy(x)=P(y∣x)。假设我们使用间隔
Δ
y
y
′
=
log
δ
y
′
δ
y
\Delta_{yy′}=\log\frac{\delta_{y′}}{\delta_y}
Δyy′=logδyδy′。则,损失为
L
(
y
,
f
(
x
)
)
=
−
log
δ
y
⋅
e
f
y
(
x
)
∑
y
′
∈
[
L
]
δ
y
′
⋅
e
f
y
′
(
x
)
=
−
log
e
f
y
(
x
)
+
log
δ
y
∑
y
′
∈
[
L
]
e
f
y
′
(
x
)
+
log
δ
y
′
.
\mathcal{L}(y,f(x))=-\log\frac{\delta_y\cdot e^{f_y(x)}}{\sum_{y'\in[L]}\delta_{y'}\cdot e^{f_{y'}(x)}}=-\log\frac{e^{f_y(x)+\log\delta_y}}{\sum_{y'\in[L]}e^{f_{y'}(x)+\log\delta_{y'}}}.
L(y,f(x))=−log∑y′∈[L]δy′⋅efy′(x)δy⋅efy(x)=−log∑y′∈[L]efy′(x)+logδy′efy(x)+logδy.
因此,在常数权重
α
y
=
1
\alpha_y=1
αy=1 下,贝叶斯最优评分将满足
f
y
∗
(
x
)
+
log
δ
y
=
log
μ
y
(
x
)
f^∗_y(x)+\log\delta_y=\log\mu_y(x)
fy∗(x)+logδy=logμy(x),或者
f
y
∗
(
x
)
=
log
η
y
(
x
)
δ
y
f^∗_y(x)=\log\frac{\eta_y(x)}{\delta_y}
fy∗(x)=logδyηy(x)。
现在假设我们使用一般的权重
α
∈
R
+
L
\alpha\in\mathbb{R}^L_+
α∈R+L。在这种损失下的风险是
E
x
,
y
[
L
α
(
y
,
f
(
x
)
)
]
=
∑
y
∈
[
L
]
π
y
⋅
E
x
∣
y
=
y
[
L
α
(
y
,
f
(
x
)
)
]
=
∑
y
∈
[
L
]
π
y
⋅
E
x
∣
y
=
y
[
L
α
(
)
y
,
f
(
x
)
]
=
∑
y
∈
[
L
]
π
y
⋅
α
y
⋅
E
x
∣
y
=
y
[
L
(
y
,
f
(
x
)
)
]
∝
∑
y
∈
[
L
]
π
ˉ
y
⋅
E
x
∣
y
=
y
[
L
(
y
,
f
(
x
)
)
]
,
其中
π
ˉ
∝
π
y
⋅
α
y
\bar{\pi}\propto\pi_y\cdot\alpha_y
πˉ∝πy⋅αy。因此,在加权损失下学习等价于在具有修改的基础率
π
ˉ
\bar{\pi}
πˉ 的分布上学习。在这种分布下,我们有类条件分布
η
ˉ
y
(
x
)
=
P
ˉ
(
y
∣
x
)
=
P
(
x
∣
y
)
⋅
π
ˉ
y
P
(
x
)
=
η
y
(
x
)
⋅
π
y
π
y
P
(
x
)
P
(
x
)
∝
η
y
(
x
)
⋅
α
y
.
\bar{\eta}_y(x)=\bar{\mathbb{P}}(y|x)=\frac{\mathbb{P}(x|y)\cdot\bar{\pi}_y}{\mathbb{P}(x)}=\eta_y(x)\cdot\frac{\pi_y}{\pi_y}\frac{\mathbb{P}(x)}{\mathbb{P}(x)}\propto\eta_y(x)\cdot\alpha_y.
ηˉy(x)=Pˉ(y∣x)=P(x)P(x∣y)⋅πˉy=ηy(x)⋅πyπyP(x)P(x)∝ηy(x)⋅αy.
因此,假设
α
y
=
δ
y
π
y
\alpha_y=\frac{\delta_y}{\pi_y}
αy=πyδy。那么,
f
y
∗
(
x
)
=
log
η
ˉ
y
(
x
)
δ
y
=
log
η
y
(
x
)
π
y
+
C
(
x
)
(1)
f^∗_y(x)=\log\frac{\bar{\eta}_y(x)}{\delta_y}=\log\frac{\eta_y(x)}{\pi_y}+C(x)\tag{1}
fy∗(x)=logδyηˉy(x)=logπyηy(x)+C(x)(1)
其中 C ( x ) C(x) C(x) 不依赖于 y y y。因此, arg max y ∈ [ L ] f y ∗ ( x ) = arg max y ∈ [ L ] η y ( x ) π y \arg\max_{y\in[L]}f^∗_y(x)=\arg\max_{y\in[L]}\frac{\eta_y(x)}{\pi_y} argmaxy∈[L]fy∗(x)=argmaxy∈[L]πyηy(x),这是平衡误差下的贝叶斯最优预测。
总的来说,通过选择任何一组常数 δ y > 0 \delta_y>0 δy>0 并设置
α
y
=
δ
y
π
y
Δ
y
y
′
=
log
δ
y
′
δ
y
可以得到一致的族。
关于基于二元间隔的损失的一致性
在二元情况下研究成对间隔损失(11)是有启发性的。给损失赋予一个温度参数
γ
>
0
\gamma>0
γ>0,我们得到
L
(
+
1
,
f
)
=
ω
+
1
γ
⋅
log
(
1
+
e
γ
⋅
δ
+
1
⋅
e
−
γ
⋅
f
)
L
(
−
1
,
f
)
=
ω
−
1
γ
⋅
log
(
1
+
e
γ
⋅
δ
−
1
⋅
e
γ
⋅
f
)
(
13
)
对于常数
ω
±
1
,
γ
>
0
\omega_{\pm1},\gamma>0
ω±1,γ>0 和
δ
±
1
∈
R
\delta_{\pm1}\in\R
δ±1∈R。这里,我们使用了
δ
+
1
=
Δ
+
1
,
−
1
\delta_{+1}=\Delta_{+1,−1}
δ+1=Δ+1,−1 和
δ
−
1
=
Δ
−
1
,
+
1
\delta_{−1}=\Delta_{−1,+1}
δ−1=Δ−1,+1 以便简化。选择
ω
±
1
=
1
,
δ
±
1
=
0
\omega_{\pm1}=1,\delta_{\pm1}=0
ω±1=1,δ±1=0 可以恢复温度缩放的二元逻辑损失。显然,当
γ
→
+
∞
\gamma\to+\infty
γ→+∞ 时,这些收敛到具有可变间隔的加权铰链损失。
L
(
+
1
,
f
)
=
ω
+
1
⋅
[
δ
+
1
−
f
]
+
L
(
−
1
,
f
)
=
ω
−
1
⋅
[
δ
−
1
+
f
]
+
.
我们研究了这一族损失的两种属性。首先,在什么条件下,这些损失对于平衡误差是费希尔一致的?我们将展示实际上有一个简单条件可以描述这一点。其次,这些损失是否保持了原始二元逻辑损失的适当性?我们将展示情况总是如此,但损失涉及根本不同的近似。
二元成对间隔损失的一致性
未完待续
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。