UDA Unsupervised data augmentati
Unsupervised data augmentation for Consistency training.
题目解释:
- Consistency training: 一致性训练,即对模型进行一定的限制,使得当输入图片增加较少的噪声时,模型的输出不发生变化;即原图和加入噪声的图片具有一致性的预测
- 题意:用于一致性训练的无监督数据增强
1. Abstract
当标签数据比较少时,半监督学习能够有效提升模型性能。当前的许多方法主要是在大量无标签的数据中使用一致性学习可以使得模型能够有效抵抗输入噪声。这里我们切入一个新的角度:
- 如何有效地在无标签样本上添加噪声
- 论证添加噪声的质量,特别是在监督学习中使用的数据增强方法,在半监督学习中具有重要影响
通过利用监督学习中的数据增强方法来对无标签数据添加噪声再进行一致性训练,取得了非常好的效果
2. 本文的贡献
- 监督学习中的数据增强方法在半监督学习中同样可以用来对无标签数据进行数据中增强
- 本文提出的UDA无监督数据增强方法几乎可以达到甚至超过许多使用大量标签数据的监督学习方法
- UDA可以与迁移学习结合,而且在大量数据情况下比如ImageNet也非常有效
3. UDA
3.1 监督学习中数据增强
监督学习中的数据增强等同于在原来给定的标签集合的基础上构建一个增广集合,然后在增广集合上训练模型。也就是说,在原来集合进行数据增强构成的增广集合应该提供了更加有效的先验(inductive bias),以帮助模型进行预测。
- inductive bias:归纳偏置,或者说 “先验”,The inductive bias (also known as learning bias) of a learning algorithm is the set of assumptions that the learner uses to predict outputs given inputs that it has not encountered
3.2 无监督学习中的数据增强
当前的无监督数据增强方法流程如下:
- 给定一个输入 x, 计算模型的预测输出
- 在 x 或者模型的隐藏层添加噪声 ,计算模型的预测输出
- 最小化以上两个预测的差距
以上流程就可以使得模型对于噪声就更具有鲁棒性,当输入集合发生变化时预测会更加平滑,不会发生较大突变。从另一个角度来看,最小化一致性损失逐渐地将标签数据上标签信息传递到无标签数据上
监督学习里的数据增强告诉我们,当数据增强产生的数据越多样化越自然,模型的性能提升也就越明显
基于这个经验,我们提出使用各种不同的监督学习数据增强方法来对无标签数据进行噪声注入,然后再进行一致性训练(consistency training)
整体框架如图所示:
image.png
- 左侧是常见的监督学习,对于输入 x, 通过模型输出预测 ,然后通过交叉熵损失来计算与最小化预测与标签之间的差距
- 右侧的输入是无标签数据,将无标签数据通过当前模型 M 得到;
- 最右侧是再通过无监督数据增强得到 ,然后再将模型通过 M 得到输出 ,其中 直接从 复制而来,即在中没有梯度传递,也就是说原始无标签数据 x 通过模型 M 是不进行参数更新的,x 的 增强 通过模型 M 进行参数更新,这里就使得模型对于噪声的输入有了更强的鲁棒性,有了更强的特征提取能力
- 再把无标签数据和增强的无标签数据的预测输出通过无监督一致性损失来进行训练,这里采用的就是KL距离
- 最终的损失为标签数据的交叉熵损失和无标签数据的一致性损失的比例加和
- 整体来说,就是左边的带标签数据的监督训练起到分类的作用,即如何从特征到分类标签的作用,而且因为标签数据比较少,这么模型在训练时肯定会过拟合,基本上能分对每一个样本,这时对标签数据采取了Training Signal Annealing策略,防止过拟合;右侧无标签数据则是用来增强特征提取能力,增强模型的泛化性能**
讨论:Why advanced data augmentations better than simple ones
- 合理,且符合实际的噪声注入,valid and realistic noise
- 多样化的噪声
- Targeted inductive bias: 不同的任务要求不同的先验,数据增强能够很好地应用于监督学习就是数据增强提供了原数据缺失的先验。
不同任务中的增强策略
-
图片分类任务中的随机增强:RandomAugment,从AutoAugment演化而来。
- AutoAugment使用一种搜索策略去组合PIL库中的各种图片转换方法;Random Augment则是正态地从PIL中的各种图片转换方法进行挑选;换句话说,RandomAugment更简单而且不需要标签,因为不需要搜寻最优增强策略
-
文本分类中的 Back-translation: Back-translation通过把原语句翻译成外语,再从外语翻译回来进行数据增强,这样得到的新数据和原数据不一样,但是具有相同的意思。
我们发现,数据增强的diversity比validity和quality更重要,因此我们采取带有一个可调 temperature参数来随机采样,而不是进行beam search,
Training Signal Annealing for low-data regime
数据比较少时采用的退火策略
在半监督学习中,我们经常会遇到有标签数据和无标签数据在树数目存在巨大差异,因此模型会很快过拟合少量的标签数据,而在无标签数据上却还是欠拟合,为了解决这个问题,本文提出了一个Training Signal Annealing策略,这个策略会在训练过程中逐渐释放标签样本的 "training signal"
-
我们只利用那样模型输出置信度小于某个阈值的样本,而模型的输出置信度会随着训练过程逐渐增长,这里的阈值也会逐渐增长,也就是说,当模型已经有很大概率区分某个样本时,我们在训练时就不用它了,只利用那些区分不出来的困难样本
- 具体来说,在第 t 个训练步骤,如果模型对于某个样本的判断概率高于当前步骤设置的阈值 , 我们在损失函数中就不用它了;
- 假设 K是类别数目,阈值可以采取逐渐从随机猜测的 增长到最大把握 1,也就是说,阈值 可以用作防止在易训练样本上出现过拟合的一个挡板
-
这里我们采取了3种阈值变化的方法,分别对应着容易过拟合,一般,难-过拟合
- 当模型容易过拟合时,即模型会在很短的时间内对样本做出高概率的预测,这时我们就期望阈值的增长更慢一下,这样可以删掉更多容易训练的样本,因此可以采取 exp指数函数
- 当模型很难过拟合,即模型会花费较长时间才能对样本做出高概率的预测,这样相同时间内,模型能够做出高概率预测的样本就比较少,此时需要删掉的样本也比较少,因此我们期望阈值在短时间内会比较大,这样删掉的样本就比较少,因此可以采取 log 对数函数
-
对于一般的样本,直接采用均匀增长的线性函数就可以。
image.png
也就是说,模型刚开始不拟合容易样本,将预测置信度高的标签样本都扔掉,这部分标记数据的误差无法反向传递,从而避免模型进一步过拟合到这些容易样本。;后面再逐步将阈值提高,把之前没有进行拟合的容易样本再加回来,以防止过拟合。
4. 实验
4.1 有监督和无监督在不同数据增强方法的比较
image.png可以看到,无论是有监督还是无监督,数据增强方法越好,其效果也越好
4.2 不同半监督算法benchmark的比较:
image.png- VAT: 采用高斯噪声;
-
MixMatch除了使用标准的crop, flip之类的增强外,还使用了MixUp增强方法
image.png - UDA 采用的数据增强方法为 Random Augment,这种增强方法是正态地从PIL图片转换库提取,这样就比以上的方法具有更多的组合
- 三条曲线都呈下降趋势,即标签样本越多,分类效果越好
- 在相同的标签样本情况下,UDA的分类效果最好
3. ImageNet
image.png4. Ablation Studies for TSA
image.png总结
好的数据增广技术不仅能提高监督学习的预测精度,也能大大提高半监督学习的预测精度,这样可以利用巨量的无标签数据,在保证性能的同时节约了成本。