小样本学习&元学习经典论文整理||持续更新
核心思想
本文提出一种基于数据增强的小样本学习算法(ICI)。本文的数据增强是通过自训练(self-training)的方式实现的,具体而言就是利用有标签的样本先训练得到一个分类器,然后预测无标签样本,得到伪标签。选择伪标签中置信度较高的样本,补充到训练集中,实现数据扩充。通过迭代训练的方式逐步改善分类器的效果。网络流程如下图所示
首先利用有标签样本训练特征提取器和线性分类器,然后无标签的样本经过特征提取和简单的线性分类后得到预测的伪标签,利用实例置信度推断模块(Instance Credibility Inference,ICI)选择出置信度较高的样本和伪标签,并利用其扩充支持集,而置信度较低的样本则用于更新无标签数据集。整个过程中最重要的一点就是如何计算预测得到的伪标签的置信度,从而避免将分类错误的样本补充到支持集中,导致数据集被污染。下面具体介绍ICI模块的处理过程,无论对于有标签样本还是无标签样本,网络的预测结果
y
i
y_i
yi计算方式如下
式中
x
i
x_i
xi表示样本对应的特征向量(特征提取网络输出的特征向量经过PCA降维后得到),
β
\beta
β表示分类器的系数矩阵,
ε
i
\varepsilon _i
εi表示均值为0,方差为
σ
\sigma
σ的高斯噪声,
γ
i
j
\gamma_{ij}
γij用于修正实例
i
i
i被分配给类别
j
j
j的概率,
γ
i
j
\gamma_{ij}
γij的模越大,实例
i
i
i被分配给类别
j
j
j的难度越大。那么本文的优化目标为
式中
R
(
γ
)
=
∑
i
=
1
n
∥
γ
i
∥
2
R(\gamma)=\sum^n_{i=1}\left \|\gamma_i \right \|_2
R(γ)=∑i=1n∥γi∥2表示惩罚项,
λ
\lambda
λ表示惩罚项系数。为求解上述目标,本文的损失函数如下
令
∂
L
∂
β
=
0
\frac{\partial L}{\partial \beta}=0
∂β∂L=0可得
式中
(
)
†
()^{\dagger }
()†表示广义逆矩阵。但值得注意的是,本文希望用
γ
\gamma
γ来度量实例的置信度,而不是用
β
^
\hat{\beta}
β^,这是因为简单的线性分类器不足以对各种类别的样本进行很好的分类,而且
β
^
\hat{\beta}
β^的值本身也依赖于
γ
\gamma
γ的取值。因此我们将上式代入损失函数
L
L
L中得到下式
式中
H
=
X
(
X
T
X
)
†
X
T
H=X(X^TX)^{\dagger }X^T
H=X(XTX)†XT。令
X
~
=
(
I
−
H
)
,
Y
~
=
X
~
Y
\tilde{X}=(I-H),\tilde{Y}=\tilde{X}Y
X~=(I−H),Y~=X~Y,则上式可简化为
利用块下降算法可以求解上式。首先
λ
\lambda
λ存在一个理论值,使得上式的解均为0,该理论值如下
那么我们可以得到由0到
λ
m
a
x
\lambda_{max}
λmax之间一系列的
λ
s
\lambda_s
λs,对于每个
λ
\lambda
λ在求解目标函数时,都能获得一条对应的
γ
\gamma
γ规则化路径。而且当
λ
\lambda
λ由0变化到
∞
\infty
∞时,
γ
\gamma
γ的稀疏性不断增强,直到他的所有元素都逐渐消失(vanish)。惩罚项
R
(
γ
)
R(\gamma)
R(γ)会使得
γ
\gamma
γ一个实例接一个实例的消失,且消失的越早,则表明该实例的预测结果与真实值越为接近,因此根据
γ
i
\gamma_i
γi消失的顺序可以得到对应的置信度
λ
\lambda
λ。
实现过程
网络结构
无具体介绍
损失函数
见上文介绍
训练策略
训练和推断过程如下
创新点
- 通过自训练的方式获取未标记样本的伪标签,并利用其扩充数据集,达到数据增强的目的
- 设计了一种基于统计学的伪标签置信度度量方法,选择出置信度最高的样本,用于支持数据集的补充
算法评价
本文的整体思想并不复杂,理解难点主要集中在ICI模块进行置信度度量的方面。本文提出的置信度度量方法是基于统计信息的,根据实验结果来看其性能提升作用还是比较明显的,在多个数据集上都取得了SOTA的成绩。
如果大家对于深度学习与计算机视觉领域感兴趣,希望获得更多的知识分享与最新的论文解读,欢迎关注我的个人公众号“深视”。