Striking the Right Balance with Uncertainty
Abstract
在不平衡样本集中训练一个无偏模型是一个困难的问题,作者提出了一种基于贝叶斯不确定性的新的网络结构,该结构主要有一下两个关键之处:
- 首先,对不确定(罕见)类进一步扩展分类边界,避免过拟合,增强其泛化能力。
- 其次,每个样本都应该建模为一个多变量高斯分布的平均向量和一个由样本的不确定性确定的协方差矩阵。
学习边界不仅要考虑单个样本,还要考虑它们在特征空间中的分布。作者提出的方法有效地利用样本和类的不确定性信息来学习鲁棒特征和更可推广的分类器。
1. Introduction
在训练集中如果每类数据的数量不同则造就了不平衡的数据集,此时数据少的类别会破坏分类边界的优化,目前针对数据不平衡的问题主流的处理方式主要有两种:
- 模拟数据分布
- 引入合适的类别权重
对于类不平衡学习,作者主要在两个级别整合贝叶斯不确定性:
- 类级别
- 个体样本级别
该方法是基于罕见类在预测空间中具有较高的不确定性且相关分类器置信水平较低的观察。因此,不确定性可以用来扩展罕见类的分类边界,从而使得分类器更加泛化;
主要观点:分类器应该将较大的区域分配给不确定的(罕见的)样本/类。
Related work
- cost-sensitive loss for CNNs(只考虑了类级别)
- a combination of triplet and quintuplet losses(不可微的和需要大量的预处理)
- A modified softmax to maximize the angular margin(只在超球面上最大化边缘)
- meta-learning: use selective instances for training(使用附加验证集来分配样本权重)
Contributions
- 这是第一个将类不平衡与贝叶斯不确定性估计联系起来的工作
- 合并了类和样本水平的置信估计,以适当地重新塑造学习的边界
本文主要介绍的创新点有:
- softmax损失函数的原则性边际强制公式,由贝叶斯不确定性估计支持。
- 使用多变量高斯分布的样本建模。对类边界进行了优化,考虑了二阶矩,提高了泛化能力。
- 一种完全可区分的loss function,可以很容易地植入到现有的体系结构中,并与其他正则化技术一起使用。
2. The Imbalance Problem
训练集: D = { x k , y k } k = 1 K D=\{x^k,y^k \}_{k=1}^K D={xk,yk}k=1K
representative vectors: w A , w B w_A,w_B wA,wB使得loss最小
边界 w w w,当且仅当 ( w A − w B ) f = 0 (w_A-w_B)f=0 (wA−wB)f=0时,有 f ∈ w f\in w f∈w; f f f是输入 x x x的特征投影;
类别占比: τ A , τ B \tau_A,\tau_B τA,τB
最优边界: w ∗ w^* w∗
2.1. Bias due to Empirical Loss Minimization
w ∗ = arg min w L p ( w ) 其 中 , L P ( w ) = ∫ R B w P A ( f ) d f + ∫ R A w P B ( f ) d f (1) w^*=\arg \min_wL_p(w)\\ 其中,L_P(w)=\int_{R_{B}^w}P_A(f)df+\int_{R_{A}^w}P_B(f)df\tag{1} w∗=argwminLp(w)其中,LP(w)=∫RBwPA(f)df+∫RAwPB(f)df(1)
R
A
w
,
R
B
w
R_{A}^w,R_{B}^w
RAw,RBw分别代表
A
,
B
A,B
A,B类别的区域,给定训练集
D
D
D,则经验损失为:
KaTeX parse error: Undefined control sequence: \and at position 28: …x^k|f^k\in D^A \̲a̲n̲d̲ ̲f^k\in R_{B}^w\…
假设比例系数
τ
A
+
τ
B
=
1
\tau_A+\tau_B=1
τA+τB=1,且
τ
A
≠
τ
B
≠
0.5
;
∣
τ
A
−
τ
B
∣
>
0.5
\tau_A\neq\tau_B\neq0.5;|\tau_A-\tau_B|>0.5
τA=τB=0.5;∣τA−τB∣>0.5,此时表示两个类别极不均衡,则损失的期望为:
E
(
L
D
(
w
)
)
=
τ
A
∫
R
B
w
P
A
(
f
)
d
f
+
τ
B
∫
R
A
w
P
B
(
f
)
d
f
(3)
E(L_D(w))=\tau_A \int_{R_{B}^w}P_A(f)df+\tau_B \int_{R_{A}^w}P_B(f)df\tag{3}
E(LD(w))=τA∫RBwPA(f)df+τB∫RAwPB(f)df(3)
定理 1
在高不均衡率情况下,最小化经验损失会让假设分割面 w ^ \widehat{w} w 向小类别 z z z的方向偏置,因此 R Z w ∗ > R Z w ^ R_{Z}^{w^{*}}>R_{Z}^{\widehat{w}} RZw∗>RZw ,换句话说,最优分离器诱导的分类区域比经验学习边界诱导的分类区域大。
证明:
基于式3,由于类之间的不平衡提议,
w
∗
w^{*}
w∗比基于经验损失的假设更有可能产生高的错误,对于任何
w
^
:
R
w
∗
z
>
R
w
^
z
\widehat{w}:R_{w^{*}}^{z}>R_{\widehat{w}}^{z}
w
:Rw∗z>Rw
z,即:
τ
A
∫
R
B
w
∗
P
A
(
f
)
d
f
+
τ
B
∫
R
A
w
∗
P
B
(
f
)
d
f
>
τ
A
∫
R
B
w
^
P
A
(
f
)
d
f
+
τ
B
∫
R
A
w
^
P
B
(
f
)
d
f
⇒
L
D
(
w
∗
)
>
L
D
(
w
^
)
(4)
\tau_A \int_{R_{B}^{w^{*}}}P_A(f)df+\tau_B \int_{R_{A}^{w^{*}}}P_B(f)df>\tau_A \int_{R_{B}^{\widehat{w}}}P_A(f)df+\tau_B \int_{R_{A}^{\widehat{w}}}P_B(f)df\\ \Rightarrow L_D(w^*)>L_D(\widehat{w})\tag{4}
τA∫RBw∗PA(f)df+τB∫RAw∗PB(f)df>τA∫RBw
PA(f)df+τB∫RAw
PB(f)df⇒LD(w∗)>LD(w
)(4)
2.2. Cost-sensitive Loss
针对式4,一个看起来可行的方法是对占比小的类别进行重新分配权重;Cost sensitive learning of deep feature represen- tations from imbalanced data给出了该解决方法。但是该方法有两个限制:
- 适当调整类特定成本是一项具有挑战性的任务,因为它需要领域知识,成本通常在开始时是固定的,而不是在培训过程中动态变化。
- 当训练样本是分离的时候,该cost对分离截面 w ^ \widehat{w} w 无效;更糟糕的是当训练样本是不分离的时候,小比例的样本在数据集中的再现与他的误分类成正比: τ z ∝ ∫ R r e s t w P z ( f ) d f \tau_z\propto\int_{R_{rest}^{w}}P_z(f)df τz∝∫RrestwPz(f)df
- 该cost无法应用于测试集,因此决策边界相当于没变
结论:尽管该方法提升了准确率,但并没有提高模型的泛化能力
改论文为了解决这些缺点提出了一种新的损失公式,旨在扩展少数类的边界,并对较少代表的类实施约束,以实现更大的泛化性能。
3. Bayesian Uncertainty Estimates Bayesian
贝叶斯网络出了可以得到输出结果还能得到该结果的不确定性评价,我们假设预测的信任程度与类在数据集中的再现有直接关系。由图3可以看出,在训练集中可以重建的类有更小的不确定性,且置信区间较小,相反,无法进行重建的类具有较高的不确定性和较大的置信区间。
我们使用带dropout的深度CNN来获得贝叶斯不确定性估计,具体可以参考论文Dropout as a bayesian approxi- mation: Representing model uncertainty in deep learning,该论文证明了dropout可以被近似为高斯过程,高斯过程是一种贝叶斯技术,该技术建立了相关方程族的先验分布,这种分布是根据观察情况更新的,也就是说,与标签一致的所有方程都被保留。在推理时,预测是所有方程输出的期望,不确定性是他的方差。
dropout:
Dropout开始时是作为正则项设计的。运用该方法进行训练时每一个神经元的激活概率为 p p p,但在测试时是用了整个网络的所有神经元得到输出,然后将输出乘以 p p p来获得期望。
现在假设
Θ
=
{
θ
1
,
.
.
.
,
θ
L
}
\Theta=\{\theta_1,...,\theta_L\}
Θ={θ1,...,θL}是网络
L
L
L层结构的参数,用一个mask——m表示一个独立同分布的伯努利分布,可以获得
N
N
N个对应的不同的网络结构
Θ
^
\widehat{\Theta}
Θ
样本,然后组成
M
M
M;
M
=
{
Θ
^
i
:
i
∈
[
1
,
N
]
}
,
w
h
e
r
e
,
Θ
^
i
=
Θ
∘
m
i
,
m
i
=
{
m
l
:
l
∈
[
1
,
L
]
}
,
s
.
t
.
,
m
l
∼
B
e
r
n
o
u
l
l
i
(
p
)
(6)
M=\{\widehat{\Theta}^i:i\in[1,N]\},where,\widehat{\Theta}^i=\Theta \circ m^i,\\ m^i=\{m_l:l\in[1,L]\},s.t.,m_l\sim Bernoulli(p)\tag{6}
M={Θ
i:i∈[1,N]},where,Θ
i=Θ∘mi,mi={ml:l∈[1,L]},s.t.,ml∼Bernoulli(p)(6)
Uncertainty:
对于每一个输入
x
k
x_k
xk,
N
N
N模型结构会生成一系列的输出
{
y
^
}
\{\widehat{y}\}
{y
},然后利用蒙特卡罗一阶矩估计计算预期输出
(
E
q
(
y
∣
x
)
[
y
]
)
:
y
≈
1
N
∑
i
=
1
N
y
^
(
x
;
Θ
^
i
)
(E_{q(y|x)}[y]):y\approx\frac{1}{N}\sum_{i=1}^{N}\widehat{y}(x;\widehat{\Theta}^i)
(Eq(y∣x)[y]):y≈N1∑i=1Ny
(x;Θ
i),在这里因为高斯过程的的输出后验概率无法求解,所以用
q
q
q来近似。不确定性则是由蒙特卡洛二阶矩阵估计计算
(
V
q
(
y
∣
x
)
[
y
]
)
(V_{q(y|x)}[y])
(Vq(y∣x)[y])
u
≈
τ
−
1
I
D
+
1
N
∑
i
=
1
N
y
^
T
y
^
−
E
q
(
y
∣
x
)
[
y
]
T
E
q
(
y
∣
x
)
[
y
]
(7)
u\approx\tau^{-1}I_D+\frac{1}{N}\sum_{i=1}^{N}\widehat{y}^T\widehat{y}-E_{q(y|x)}[y]^TE_{q(y|x)}[y]\tag{7}
u≈τ−1ID+N1i=1∑Ny
Ty
−Eq(y∣x)[y]TEq(y∣x)[y](7)
在这里
τ
\tau
τ是模型精度(权重衰减函数),
I
C
∈
R
C
×
C
I_C\in R^{C\times C}
IC∈RC×C是一个单位矩阵,
C
C
C是指分类数。
7式中的 I D I_D ID是否是书写错误?
4. Uncertainty based Max-margin Learning The
对于一个特征输入
f
f
f,softmax loss如下定义:
L
s
m
=
−
log
(
e
x
p
(
w
y
T
f
)
∑
j
e
x
p
(
w
J
T
f
)
)
(8)
L_{sm}=-\log(\frac{exp(w_y^Tf)}{\sum_jexp(w_J^Tf)})\tag{8}
Lsm=−log(∑jexp(wJTf)exp(wyTf))(8)
由于点乘运算还可以被写成:
w
y
T
f
=
∣
∣
w
y
∣
∣
⋅
∣
∣
f
∣
∣
⋅
cos
(
α
y
)
w_y^Tf=||w_y||\cdot||f||\cdot\cos(\alpha_y)
wyTf=∣∣wy∣∣⋅∣∣f∣∣⋅cos(αy),因此对于一个来自小类别
z
z
z的特征
f
f
f,softmax服从:
∣
∣
w
z
∣
∣
⋅
∣
∣
f
∣
∣
⋅
cos
(
α
z
)
>
∣
∣
w
r
e
s
t
∣
∣
⋅
∣
∣
f
∣
∣
⋅
cos
(
α
r
e
s
t
)
(9)
||w_z||\cdot||f||\cdot\cos(\alpha_z)>||w_{rest}||\cdot||f||\cdot\cos(\alpha_{rest})\tag{9}
∣∣wz∣∣⋅∣∣f∣∣⋅cos(αz)>∣∣wrest∣∣⋅∣∣f∣∣⋅cos(αrest)(9)
从直觉上讲,希望对更不确定的阶层施加更大的限制。实验表明,类的不确定性与它在训练集中出现的频率成反比,即稀有类具有更大的不确定性(如上图3所示)。为了提高泛化性能,我们可以对不确定类施加更严格的约束:
∣
∣
w
z
∣
∣
⋅
∣
∣
f
∣
∣
⋅
cos
(
m
z
α
z
)
>
∣
∣
w
r
e
s
t
∣
∣
⋅
∣
∣
f
∣
∣
⋅
cos
(
m
r
e
s
t
α
r
e
s
t
)
||w_z||\cdot||f||\cdot\cos(m_z\alpha_z)>||w_{rest}||\cdot||f||\cdot\cos(m_{rest}\alpha_{rest})
∣∣wz∣∣⋅∣∣f∣∣⋅cos(mzαz)>∣∣wrest∣∣⋅∣∣f∣∣⋅cos(mrestαrest)
在这里,
m
=
max
(
1
,
[
0.5
u
y
]
)
,
u
z
>
u
r
e
s
t
,
0
≤
α
z
≤
π
u
z
,
u
z
∈
R
+
m=\max(1,[0.5u_y]),u_z>u_{rest},0\leq\alpha_z\leq\frac{\pi}{u_z},u_z\in R^+
m=max(1,[0.5uy]),uz>urest,0≤αz≤uzπ,uz∈R+
因此边际最大化的softmax loss可以被写成:
L
s
m
′
=
−
log
(
e
x
p
(
∣
∣
w
y
∣
∣
⋅
∣
∣
f
∣
∣
⋅
cos
(
ϕ
y
)
)
∑
j
e
x
p
(
∣
∣
w
j
∣
∣
⋅
∣
∣
f
∣
∣
⋅
cos
(
α
j
)
)
)
(10)
L_{sm}^{'}=-\log(\frac{exp(||w_y||\cdot||f||\cdot\cos(\phi_y))}{\sum_jexp(||w_j||\cdot||f||\cdot\cos(\alpha_j))})\tag{10}
Lsm′=−log(∑jexp(∣∣wj∣∣⋅∣∣f∣∣⋅cos(αj))exp(∣∣wy∣∣⋅∣∣f∣∣⋅cos(ϕy)))(10)
式中
ϕ
(
⋅
)
\phi(\cdot)
ϕ(⋅)是一个在
[
0
,
π
]
[0,\pi]
[0,π]上连续单调递减的函数;
ϕ
(
α
j
)
=
{
(
−
1
)
r
cos
(
m
α
j
)
−
2
r
,
α
j
=
y
∈
[
r
π
m
,
(
r
+
1
)
π
m
]
cos
(
α
j
)
,
j
≠
y
\phi(\alpha_j)= \begin{cases} (-1)^r\cos(m\alpha_j)-2r,& {\alpha_{j=y}\in[\frac{r\pi}{m},\frac{(r+1)\pi}{m}]}\\ \cos(\alpha_j),& {j\neq y} \end{cases}
ϕ(αj)={(−1)rcos(mαj)−2r,cos(αj),αj=y∈[mrπ,m(r+1)π]j=y
r
∈
[
0
,
m
−
1
]
r\in[0,m-1]
r∈[0,m−1]是一个整数,反向传播需要计算
w
,
f
w,f
w,f的梯度,因此将
cos
(
m
α
j
)
\cos(m\alpha_j)
cos(mαj)扩展为第一项
T
m
T_m
Tm的切比雪夫展开式:
cos
(
m
α
j
)
=
∑
t
=
0
[
m
/
2
]
(
m
2
t
)
(
cos
2
(
α
j
)
−
1
)
m
cos
(
α
j
)
m
−
2
t
\cos(m\alpha_j)=\sum_{t=0}^{[m/2]} (\begin{matrix} m\\ 2t \end{matrix})(\cos^2(\alpha_j)-1)^m\cos(\alpha_j)^{m-2t}
cos(mαj)=t=0∑[m/2](m2t)(cos2(αj)−1)mcos(αj)m−2t
在这里
cos
(
α
j
)
\cos(\alpha_j)
cos(αj)被
w
j
T
f
∣
∣
w
j
∣
∣
⋅
∣
∣
f
∣
∣
\frac{w_j^Tf}{||w_j||\cdot||f||}
∣∣wj∣∣⋅∣∣f∣∣wjTf替换;
5. Sample-level Uncertainty Modeling Although
尽管不确定性驱动的类级边际强制很重要,但并不是类中的所有样本都具有相同的难度级别。可能被误分类的样本同样具有较大的不确定性。因此,作者提出了一种机制,以纳入样本级不确定性的非平衡学习。现有的分类网络只使用样本分布的均值表示来重建每个训练样本。因此作者提出将单个样本表示为其一阶和二阶矩的函数。考虑输入media的深度特征表示是从一个多变量高斯分布中随机采样的: f ∼ N ( μ f , Σ f ) f\sim N(\mu_f,\Sigma_f) f∼N(μf,Σf)。因此给定特征f及其真正的类标号y,softmax损失可以通过式8计算。
为了将输入特征正确分类,其在真实类向量的投影应给出一个最大的响应(式9)。相反的,如果下列条件成立一个例子将会被分类错误:
∃
j
∈
[
1
,
C
]
s
.
t
.
,
w
y
T
f
<
w
j
T
f
,
j
≠
y
(11)
\exists j\in[1,C]\quad s.t.,\quad w_y^Tf<w_j^Tf,\quad j\neq y\tag{11}
∃j∈[1,C]s.t.,wyTf<wjTf,j=y(11)
作者在考虑到每个样本的分布情况下,量化错误分类的概率。它可以为计算训练样本的损失估计提供一种置信度的度量。在公式8中使用softmax loss直接计算误分类概率是难以处理的,只能近似计算。因此,作者引入了一个简单的误差方程来模拟基本错误行为:
ε
(
f
)
=
w
j
T
f
−
w
y
T
f
,
j
≠
y
(12)
\varepsilon(f)=w_j^Tf-w_y^Tf,\quad j\neq y\tag{12}
ε(f)=wjTf−wyTf,j=y(12)
该误差方程是对服从多元高斯分布输入
f
f
f的线性变化,因此输出服从单元高斯分布。第一和第二次序统计量的误差分布可以用
μ
f
,
Σ
f
\mu_f,\Sigma_f
μf,Σf表示:
μ
ε
=
E
[
ε
(
f
)
]
=
(
w
j
−
w
y
)
T
μ
f
σ
ε
2
=
E
[
(
ε
(
f
)
−
μ
ε
)
2
]
=
(
w
j
−
w
y
)
T
Σ
f
(
w
j
−
w
y
)
(13)
\mu_\varepsilon=E[\varepsilon(f)]=(w_j-w_y)^T\mu_f\\ \sigma^2_\varepsilon=E[(\varepsilon(f)-\mu_\varepsilon)^2]=(w_j-w_y)^T\Sigma _{f}(w_j-w_y)\tag{13}
με=E[ε(f)]=(wj−wy)Tμfσε2=E[(ε(f)−με)2]=(wj−wy)TΣf(wj−wy)(13)
现在,特征
f
f
f的误分类概率可以与错误分布联系起来,因为
E
(
f
)
>
0
E(f)>0
E(f)>0表示误分类。他的互补累积概率分布函数
F
^
ε
\widehat{F}_\varepsilon
F
ε为:
F
^
ε
=
P
(
ε
(
f
)
>
0
)
=
1
−
P
(
ε
(
f
)
<
0
)
=
1
−
P
(
ε
(
f
)
−
μ
ε
σ
ε
<
−
μ
ε
σ
ε
)
i
f
z
=
ε
(
f
)
−
μ
ε
σ
ε
∼
N
(
0
,
1
)
F
^
ε
(
0
)
=
1
−
F
^
z
(
−
μ
ε
σ
ε
)
=
1
2
(
1
+
e
r
f
[
μ
ε
2
σ
ε
2
]
)
(14)
\widehat{F}_\varepsilon=P(\varepsilon(f)>0)=1-P(\varepsilon(f)<0)=1-P(\frac{\varepsilon(f)-\mu_\varepsilon}{\sigma_\varepsilon}<-\frac{\mu_\varepsilon}{\sigma_\varepsilon})\\ if\quad z=\frac{\varepsilon(f)-\mu_\varepsilon}{\sigma_\varepsilon}\sim N(0,1)\\ \widehat{F}_\varepsilon(0)=1-\widehat{F}_z(-\frac{\mu_\varepsilon}{\sigma_\varepsilon})=\frac{1}{2}(1+erf[\frac{\mu_\varepsilon}{\sqrt{2\sigma_\varepsilon^2}}])\tag{14}
F
ε=P(ε(f)>0)=1−P(ε(f)<0)=1−P(σεε(f)−με<−σεμε)ifz=σεε(f)−με∼N(0,1)F
ε(0)=1−F
z(−σεμε)=21(1+erf[2σε2με])(14)
F
z
(
⋅
)
F_z(\cdot)
Fz(⋅)是CDF方程;
然后,使用概率估计值重新加权损失值,使不确定性合并。
ϕ
(
⋅
)
\phi(\cdot)
ϕ(⋅)函数修改如下,以得到公式10中改进的损失函数:
ϕ
(
α
j
)
=
{
F
^
ε
(
0
)
(
(
−
1
)
r
cos
(
m
α
j
)
−
2
r
)
,
α
j
=
y
∈
[
r
π
m
,
(
r
+
1
)
π
m
]
cos
(
α
j
)
,
j
≠
y
(15)
\phi(\alpha_j)= \begin{cases} \widehat{F}_\varepsilon(0)((-1)^r\cos(m\alpha_j)-2r),& {\alpha_{j=y}\in[\frac{r\pi}{m},\frac{(r+1)\pi}{m}]}\\ \cos(\alpha_j),& {j\neq y} \end{cases}\tag{15}
ϕ(αj)={F
ε(0)((−1)rcos(mαj)−2r),cos(αj),αj=y∈[mrπ,m(r+1)π]j=y(15)
当不确定度为0且
m
=
1
m=1
m=1时,修正后的损失函数与原softmax损失相等。