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

作者:Amit Chaudhary
编译:ronghuaiyang
导读
图解半监督的各种方法的关键思想 。
计算机视觉的半监督学习方法在过去几年得到了快速发展 。目前最先进的方法是在结构和损失函数方面对之前的工作进行了简化,以及引入了通过混合不同方案的混合方法 。
在这篇文章中,我会通过图解的方式解释最近的半监督学习方法的关键思想 。
1、自训练在该半监督公式中,对有标签数据进行训练,并对没有标签的数据进行伪标签预测 。然后对模型同时进行 ground truth 标签和伪标签的训练 。
计算机视觉中的半监督学习

文章插图
 
a. 伪标签
Dong-Hyun Lee[1]在 2013 年提出了一个非常简单有效的公式 —— 伪标签 。
这个想法是在一批有标签和没有标签的图像上同时训练一个模型 。在使用交叉熵损失的情况下,以普通的监督的方式对有标签图像进行训练 。利用同一模型对一批没有标签的图像进行预测,并使用置信度最大的类作为伪标签 。然后,通过比较模型预测和伪标签对没有标签的图像计算交叉熵损失 。
计算机视觉中的半监督学习

文章插图
 
总的 loss 是有标签和没有标签的 loss 的加权和 。
计算机视觉中的半监督学习

文章插图
 
为了确保模型已经从有标签的数据中学到了足够的知识,在最初的 100 个 epoch 中,αt 被设置为 0 。然后逐渐增加到 600 个 epochs,然后保持不变 。
计算机视觉中的半监督学习

文章插图
 
b. Noisy Student
Xie 等[2]在 2019 年提出了一种受知识蒸馏启发的半监督方法“Noisy Student” 。
关键的想法是训练两种不同的模型,即“Teacher”和“Student” 。Teacher 模型首先对有标签的图像进行训练,然后对没有标签的图像进行伪标签推断 。这些伪标签可以是软标签,也可以通过置信度最大的类别转换为硬标签 。然后,将有标签和没有标签的图像组合在一起,并根据这些组合的数据训练一个 Student 模型 。使用 RandAugment 进行图像增强作为输入噪声的一种形式 。此外,模型噪声,如 Dropout 和随机深度也用到了 Student 模型结构中 。
计算机视觉中的半监督学习

文章插图
 
一旦学生模型被训练好了,它就变成了新的老师,这个过程被重复三次 。
2、一致性正则化这种模式使用的理念是,即使在添加了噪声之后,对未标记图像的模型预测也应该保持不变 。我们可以使用输入噪声,如图像增强和高斯噪声 。噪声也可以通过使用 Dropout 引入到结构中 。
计算机视觉中的半监督学习

文章插图
 
a. π-model
该模型由Laine 等[3]在 ICLR 2017 年的一篇会议论文中提出 。
关键思想是为标记数据和未标记数据创建两个随机的图像增强 。然后,使用带有 dropout 的模型对两幅图像的标签进行预测 。这两个预测的平方差被用作一致性损失 。对于标记了的图像,我们也同时计算交叉熵损失 。总损失是这两个损失项的加权和 。权重 w(t)用于决定一致性损失在总损失中所占的比重 。
计算机视觉中的半监督学习

文章插图
 
b. Temporal Ensembling
该方法也是由Laine 等[4]在同一篇论文中提出的 。它通过利用预测的指数移动平均(EMA)来修正模型 。
关键思想是对过去的预测使用指数移动平均作为一个观测值 。为了获得另一个观测值,我们像往常一样对图像进行增强,并使用带有 dropout 的模型来预测标签 。采用当前预测和 EMA 预测的平方差作为一致性损失 。对于标记了的图像,我们也计算交叉熵损失 。最终损失是这两个损失项的加权和 。权重 w(t)用于决定稠度损失在总损失中所占的比重 。
计算机视觉中的半监督学习

文章插图
 
c. Mean Teacher
该方法由Tarvainen 等[5]提出 。泛化的方法类似于 Temporal Ensembling,但它对模型参数使用指数移动平均(EMA),而不是预测值 。
【计算机视觉中的半监督学习】关键思想是有两种模型,称为“Student”和“Teacher” 。Student 模型是有 dropout 的常规模型 。教师模型与学生模型具有相同的结构,但其权重是使用学生模型权重的指数移动平均值来设置的 。对于已标记或未标记的图像,我们创建图像的两个随机增强的版本 。然后,利用学生模型预测第一张图像的标签分布 。利用教师模型对第二幅增强图像的标签分布进行预测 。这两个预测的平方差被用作一致性损失 。对于标记了的图像,我们也计算交叉熵损失 。最终损失是这两个损失项的加权和 。权重 w(t)用于决定稠度损失在总损失中所占的比重 。


推荐阅读