计算机视觉中的半监督学习

原文:Amit Chaudhary. “Semi-Supervised Learning in Computer Vision.” https://amitness.com/2020/07/semi-supervised-learning (2020).

计算机视觉的半监督学习方法在过去几年中发展地非常迅速。目前最先进的方法是在算法架构和损失函数方面简化之前的工作,或者引入混合方法。本文将通过图表来说明半监督学习方法的关键思想。

1. Self-Training

1.1 Pseudo-label

Lee等人在2013年提出了一种简单、高效的学习范式——“伪标签”(Pseudo-label),其关键思想是,在有标签图像上使用交叉熵损失训练一个模型,利用该模型对无标签图像进行预测,并使用最大置信度类别作为伪标签,然后通过计算预测结果和伪标签之间的交叉熵损失来训练模型。

1.2 Noisy Student

Xie等人在2019年提出了一种受知识蒸馏启发的半监督学习方法,称为“Noisy Student”。其关键思想是训练两个独立的模型,即“教师模型”和“学生模型”。首先在有标签图像上训练一个教师模型,用来给无标签图像打伪标签。这些伪标签可以是软标签,也可以使用最大置信度类别转换为硬标签。然后将有标签图像和伪标签图像混在一起,使用RandAugment、Dropout、Stochastic Depth添加噪声,训练一个学生模型。学生模型训练好以后,将其作为新的教师模型,重复上述过程若干次。

2. Consistency Regularization

一致性正则化(Consistency Regularization)的关键思想是,即使添加了噪声,模型对无标签图像的预测结果也应保持不变。

2.1 π-model

Laine等人在ICLR 2017的一篇论文中提出了π-model,其关键思想是,为有标签数据和无标签数据创建两个随机增广图像,然后利用一个带有dropout的模型来预测这两个图像的标签,将两个预测结果的平方差作为一致性损失。对于有标签图像,作者还计算了交叉熵损失。最终的总损失是这两项损失的加权和,权重w(t)用于确定一致性损失在总损失中所占的比例。

2.2 Temporal Ensembling

该方法也是由Laine等人提出的,其关键思想是,利用预测的指数移动平均值(EMA)作为一个视图来修改π-model。为了得到另一个视图,作者像往常一样对图像进行了增广,并使用一个带有dropout的模型来预测标签。用当下预测和EMA预测的平方差作为一致性损失。对于有标签的图像,作者还计算了交叉熵损失。最终的总损失是这两项损失的加权和,权重w(t)用于确定一致性损失在总损失中所占的比例。

2.3 Mean Teacher

该方法由Tarvainen等人提出,其关键思想是训练两个模型,即“学生模型”和“教师模型”,学生模型是一个带有dropout的常规模型,教师模型与学生模型具有相同的架构,但其权重是使用学生模型权重的指数移动平均值设置的。对于有标签或无标签的图像,作者创建两个随机的图像增广版本。然后,使用学生模型预测第一张图像的标签分布,使用教师模型预测第二张增广图像的标签分布,并将这两个预测的平方差作为一致性损失。对于有标签的图像,作者还计算了交叉熵损失。最终的总损失是这两项损失的加权和,权重w(t)用于确定一致性损失在总损失中所占的比例。

2.4 Virtual Adversarial Training

该方法由Miyato等人提出,它使用对抗性攻击的概念进行一致性正则化。其关键思想是,生成图像的对抗性变换,从而改变模型的预测。首先,获取一张图像,并创建其对抗变体,使原始图像和对抗图像的模型输出之间的KL-divergence最大化。然后,将有标签/无标签的图像作为第一个视图,并将上一步生成的对抗性示例作为第二个视图。接着,使用相同的模型预测两张图像的标签分布。将这两个预测的KL-divergence作为一致性损失。对于标记图像,作者还计算了交叉熵损失。最终的总损失是这两项损失的加权和,权重α用于确定一致性损失在总损失中所占的比例。

2.5 Unsupervised Data Augmentation

该方法由Xie等人提出,适用于图像和文本。其关键思想是,使用AutoAugment创建无标签图像的增广版本。然后,使用相同的模型来预测这两张图像的标签,将这两个预测的KL-divergence作为一致性损失。对于有标签的图像,作者只计算交叉熵损失,不计算任何一致性损失。最终的总损失是这两项损失的加权和,权重w(t)用于确定一致性损失在总损失中所占的比例。

3. Hybrid Methods

这个范式结合了以前工作的思想,如自训练和一致性正则化,以及用于改进性能的附加组件。

3.1 MixMatch

该方法由Berthelot等人提出。作者对有标签图像创建一个增广,对无标签图像创建K个增广,并在所有K个增广图像上进行模型预测。然后,对预测结果进行平均,并应用温度标度法得到最终的伪标签,这个伪标签将用于所有K个增广图像。

将增广的有标签图像和无标签图像混为一组,并进行洗牌,然后将该组的前N个图像取为WL,其余M个图像取为WU。

将增广的有标签图像和WL混合,将增广的无标签图像和WU混合,得到最终的有标签组(L')和无标签组(U')。

最后,对有标签组进行模型预测,并用混合真实标签计算交叉熵损失。类似地,对无标签组进行模型预测,并用混合伪标签计算均方差(MSE)损失。最终的总损失是这两项损失的加权和,权重λ用于确定MSE损失在总损失中所占的比例。

3.2 FixMatch

该方法由Sohn等人提出,结合了伪标签和一致性正则化,同时极大地简化了整个方法。它在广泛的基准测试中获得了最先进的结果。如图所示,作者使用交叉熵损失在有标签图像上训练一个监督模型。对于每张无标签图像,分别采用弱增广和强增广的方法得到两张图像。将弱增广图像传递到模型中,对其类别进行预测,将最大置信度类别的概率与阈值进行比较,如果它高于阈值,则将该类作为伪标签。然后对强增广图像进行预测,将该预测结果与前述伪标签进行比较,将两种损失结合起来,对模型进行优化。

4. Comparison of Methods

下表是对上述半监督方法的总结。

5. Common Evaluation Datasets

研究人员通常使用以下数据集来评估半监督学习方法的性能。一般使用整个数据集的一小部分作为有标签数据,将剩余部分作为无标签数据,以此来模拟小样本情况。

6. Conclusion

本文对计算机视觉的半监督学习方法在过去几年的发展进行了概述。这是一个非常重要的研究方向,可以对行业产生直接影响。

欢迎关注“多模态人工智能”公众号,一起进步^_^↑

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值