最近的一些一致性训练方法通过最小化原始无标签样本和对应增强版本之间的预测差异来进行学习。这个和Π-Model很相似,但是这里的一致性正则损失只应用于无标签数据。图注:带噪样本的一致性训练对抗训练 (Goodfellow et al. 2014) 通过在输入中加入对抗性噪声,并训练模型,使其对于这种对抗攻击具有鲁棒性。这种设置会在在有监督学习中起作用: 其中是真实分布,近似于真实标签的独热编码,是模型的预测值,是一个距离函数,衡量两个分布之间的散度。Virtual Adversarial Training (VAT; Miyato et al. 2018)将上述思想拓展至半监督学习。因为是未知的,VAT将其替换为原始输入经过当前模型得到的预测输出,其中模型权重为。由于是模型权重的固定副本,所以在上并没有梯度更新。 VAT损失适用于无标签和有标签样本上。它是当前模型在每个数据点的预测流形的负平滑度度量。通过优化这种损失,可以促使流形更加平滑。Interpolation Consistency Training (ICT; Verma et al. 2019)通过增加更多数据点的插值来增强数据集,同时希望模型的预测值与对应标签的插值能够保持一致。MixUp (Zheng et al. 2018) 通过简单的加权将两张图片混合,并将其与标签平滑 (Label Smoothing)相结合。遵循Mixup的思想,ICT期望模型在经过Mixup处理的样本上产生的标签,可以和相应输入的预测插值相匹配。 其中是的移动平均,是一个Mean Teacher。图注:插值一致性训练概述。利用Mixup可以生成更多的插值样本,并以插值标签作为学习目标。(图片来源:Verma et al. 2019)因为两个随机选择的无标签样本属于不同类别的概率很高(例如,ImageNet中包含1000个类别),所以在两个随机无标签样本之间使用MixUp进行插值的操作,很可能发生在决策边界附近。根据低密度分离假设,决策边界往往位于低密度区域中。 其中是的移动平均。和VAT类似,Unsupervised Data Augmentation (UDA; Xie et al. 2020) 通过预测无标签样本和它的增强版本的输出一致性来进行学习。UDA尤其关注在噪声质量对半监督学习一致性训练性能的影响。使用先进的数据增强方法来产生有意义和有效的噪声样本是至关重要的。好的数据增强应该产生有效的(即不改变标签)和多样化的噪声,并带有有针对性的归纳偏好 (Inductive Biases)。对于图片数据,UDA采用RandAugment (Cubuk et al. 2019),它会随机地使用PIL库中的增广方法,无需进行学习和优化,因此比AutoAugment的成本低得多。图注:不同的半监督学习方法在CIFAR-10数据集上进行分类任务的实验结果。Wide-Resnet-28-2和Pyramidnet+Shakedrop在完全监督的设置下,在没有进行Randaugment处理的50,000个样本上进行训练,错误率分别为5.4%和2.7%。(图片来源:Xie et al. 2020)针对语言领域,UDA结合了反向翻译(Back-Translation)和基于TF-IDF的词替换。反向翻译保留了高层次含义,但可能不能保留某具体的些单词,而基于TF-IDF的词替换则会删除TF-IDF分数较低的低信息量的单词。在语言任务的实验中,研究人员发现UDA对于迁移学习和表征学习是互补的;例如,在域内无标签数据上使用BERT微调(即下图中的)可以进一步提高性能。图注:对具有不同初始化配置的UDA在各种文本分类任务上的结果比较。(图片来源:Xie et al. 2020)在计算时,研究人员还发现以下几种训练技巧有助于提升模型结果:
Xie et al. (2020)将自训练应用于深度学习,并取得了显著的成果。在ImageNet的分类任务中,他们首先训练了一个EfficientNet (Tan & Le 2019)模型作为教师模型,以此为300M的无标签图片生成了伪标签。接着他们训练了一个更大的EfficientNet 作为学生模型,并利用带有真实标签和伪标签的图片进行学习。其中的一个关键要素在于学生模型训练期间有噪声,而在教师模型训练时没有噪声,以此来生成伪标签。因此,他们的方法被称为带噪学生模型 (Noisy Student)。作者通过随机深度(Huang et al. 2016)、Dropout和随机增强等方法来施加噪声。噪声对于学生模型性能最终能够优于教师模型非常重要。添加的噪声会产生复合效应,可以推动模型在有标签和无标签数据上产生的决策边界是平滑的。
增强锚点。给定一个无标签的样本,首先它会生成一个具有弱增强的“锚点”版本,然后使用CTAugment(Control Theory Augment)对个强增强版本进行平均。CTAugment仅对将模型预测保持在网络容差范围内的增强进行采样。
图注:ReMixMatch中引入的两个改进方法。(图片来源:Berthelot et al. 2020)ReMixMatch损失函数包含以下几个部分:
使用数据增强和MixUp的有监督损失;
使用数据增强和MixUp,同时将伪标签作为目标的无监督损失;
在一个没有使用MixUp的情况下,只有单一重度增强的无标签图像上的CE损失;
常用在自监督学习中的旋转损失。
2. DivideMix
DivideMix (Junnan Li et al. 2020)结合了半监督学习和噪声标签学习(LNL)。该方法利用GMM模型对每个样本损失分布进行建模,将训练数据动态地划分为包含干净样本的有标签样本集和含有带噪样本的无标签样本集。根据 Arazo et al. 2019的想法,他们在每个样本上根据交叉熵损失上拟合了一个双组分GMM。我们希望在干净样本上的损失比带噪样本的损失更小,速度更快。平均值较小的组件对应着带有干净标签的聚簇,我们将其表示为。如果GMM后验概率(即采样属于干净样本集的概率)大于阈值,则认为该样本为干净样本,否则视为有噪声样本。数据聚类的过程被称为共分(Co-Divide)。为了避免确认偏误,DivideMix同时训练两个分叉网络,其中每个网络使用来自另一个网络的数据集划分;例如,思考双Q学习是如何工作的。图注:DivideMix独立训练两个网络,以减少确认偏误。它们一起进行共同划分、共同细化和共同猜测。(图片来源:Junnan Li et al. 2020)与MixMatch相比,DivideMix具有一个额外的用于处理带噪样本的共分阶段,此外在训练阶段也有一些额外的改进:
FixMatch(Sohn et al. 2020)在经过弱增强处理的无标签样本上生成伪标签,并且仅保持高置信度的预测。在这里,弱增强和高置信度过滤都有助于生成高质量的可信伪标签目标。然后,FixMatch学习在给定经过强增强处理的样本的情况下,预测他们的伪标签。图注:Fixmatch模型流程图。(图片来源:Sohn et al. 2020)其中,是无标签样本的伪标签;是一个超参数,用于确定和的相对大小。
Zoph et al. (2020) 研究了自训练会在多大程度上比预训练方法更有效。他们在实验中使用Imagenet进行预训练或者自训练,以提高在COCO数据集上的性能。注意,当使用Imagenet进行自训练时,会丢弃标签,并仅使用Imagenet样本作为无标签的数据。He et al. (2018) 已经证明,如果下游任务非常不同,例如任务是目标检测,ImageNet的分类预训练模型效果会不佳。
图注:(a)和 (b)分别表示数据增加 (从弱到强)和有标签数据集大小对对象检测性能的影响。图中:Rand Init指的是带有随机权重的初始化模型;ImageNet指使用在 ImageNet数据集上Top-1准确率为84.5%的预先训练模型进行初始化;ImageNet++指使用在ImageNet数据集上Top-1准确率为86.9%的预先训练模型进行初始化。(图片来源:Zoph et al. 2020)
图注:一个利用无标签数据语料库进行半监督学习的框架,通过任务不可知的无监督预训练(左)和针对特定任务的自训练或蒸馏(右)进行训练。(图片来源:Chen et al. 2020 研究人员在ImageNet上进行了分类任务的实验。自监督预训练模型使用的是SimCLRv2,它是 SimCLR的改良版本。他们在实验中得到的观察结果与 Zoph et al. 2020的几个观点是一致的:
更大的模型在标签上更有效率;
SimCLR的更大/更深的project heads对表征学习有改善作用;
使用无标签数据进行蒸馏可以改善半监督学习。
图注:SimCLRv2+半监督蒸馏在ImageNet分类任务上的性能比较。(图片来源:Chen et al. 2020)
总结
最后,对最近的半监督学习的工作进行总结,我们可以看出许多工作的目的是减少确认偏误:
通过先进的数据增强方法将有效且多样化的噪声应用到样本中。
在处理图像时,MixUp是一种有效的增强方法。MixUp 同样可以在语言领域上发挥作用,从而产生微小的增量改进(Guo et al. 2019)。
通过设置一个阈值,然后丢弃置信度低的伪标签。
在每个小批次中设置有标签样本的最小数量。
锐化伪标签分布以减少类别重叠。
参考文献
[1] Ouali, Hudelot & Tami. “An Overview of Deep Semi-Supervised Learning” arXiv preprint arXiv:2006.05278 (2020).[2] Sajjadi, Javanmardi & Tasdizen “Regularization With Stochastic Transformations and Perturbations for Deep Semi-Supervised Learning.” arXiv preprint arXiv:1606.04586 (2016).[3] Pham et al. “Meta Pseudo Labels.” CVPR 2021.[4] Laine & Aila. “Temporal Ensembling for Semi-Supervised Learning” ICLR 2017.[5] Tarvaninen & Valpola. “Mean teachers are better role models: Weight-averaged consistency targets improve semi-supervised deep learning results.” NeuriPS 2017[6] Xie et al. “Unsupervised Data Augmentation for Consistency Training.” NeuriPS 2020.[7] Miyato et al. “Virtual Adversarial Training: A Regularization Method for Supervised and Semi-Supervised Learning.” IEEE transactions on pattern analysis and machine intelligence 41.8 (2018).[8] Verma et al. “Interpolation consistency training for semi-supervised learning.” IJCAI 2019[9] Lee. “Pseudo-label: The simple and efficient semi-supervised learning method for deep neural networks.” ICML 2013 Workshop: Challenges in Representation Learning.[10] Iscen et al. “Label propagation for deep semi-supervised learning.” CVPR 2019.[11] Xie et al. “Self-training with Noisy Student improves ImageNet classification” CVPR 2020.[12] Jingfei Du et al. “Self-training Improves Pre-training for Natural Language Understanding.” 2020[13] Iscen et al. “Label propagation for deep semi-supervised learning.” CVPR 2019[14] Arazo et al. “Pseudo-labeling and confirmation bias in deep semi-supervised learning.” IJCNN 2020.[15] Berthelot et al. “MixMatch: A holistic approach to semi-supervised learning.” NeuriPS 2019[16] Berthelot et al. “ReMixMatch: Semi-supervised learning with distribution alignment and augmentation anchoring.” ICLR 2020[17] Sohn et al. “FixMatch: Simplifying semi-supervised learning with consistency and confidence.” CVPR 2020[18] Junnan Li et al. “DivideMix: Learning with Noisy Labels as Semi-supervised Learning.” 2020 [code][19] Zoph et al. “Rethinking pre-training and self-training.” 2020.[20] Chen et al. “Big Self-Supervised Models are Strong Semi-Supervised Learners” 2020