计算机视觉的半监督模型:Noisy student, π-Model和Temporal Ensembling

2022-04-14 13:01:24 浏览数 (1)

今天我将讨论一些在过去十年中出现的主要的半监督学习模型。首先让我们谈谈什么是半监督学习以及我们为什么对它感兴趣!

假设我们有一个大的标记图像数据集。我们想使用这些数据来构建一个模型,进行图像分类的任务,解决这个问题的标准方法是构建卷积神经网络 (CNN)。CNN 已被证明在使用大型数据集进行训练时可以提供最先进的结果。

下面就是一个非常重要的问题,如果我们没有大型标记数据集怎么办?例如我们工作中的分类与现在的预训练的数据集例如imagenet没有交集,或者说我们处理的具体的领域没有大量公共标记数据。这样,我们标记数据通常就需是手工完成的——但这个过程很昂贵,而且也很耗时。

这就是半监督的优势,我们正在构建一个生成标签作为输出的模型,但是如果我们不需要人工手动标记所有数据,而是只需要标记其中的一小部分,然后将其留给模型来确定其余的标签应该是什么,这样可以吗?事实证明,这个想法非常有效,并且多年来已经开发了许多类似的方案。我们今天要讨论的方案是Noisy student, π-Model,和Temporal Ensembling

Noisy Student Model

Noisy Student是2019 年由 Xie 等人提出的 。该模型的工作原理如下:

首先,在手动标记的图像子集上训练“教师”模型。论文中描述的教师模型使用了 EfficientNet 架构。教师模型经过最小化交叉熵损失进行训练,并用于为每个未标记的图像推断“伪标签”。这些伪标签可以是软标签或硬标签的形式保存。(软标签表示为连续分布,而硬标签是独热编码)。

接下来,使用手动标记和伪标记数据训练“学生”模型。通过数据增强(特别是 RandAugment)用于向输入添加噪声;dropout 和stochastic depth用于向模。

然后,再使用最新的学生模型作为新教师,此过程会重复几次(通常为 3 次)。

嘈杂的学生模型产生了当时最先进的结果。它的性能优于它所基于的 EfficientNet 架构(88.4% 对 85.5%)以及之前最先进的 FixRes ResNeXt-101 WSL。

π-Model

该模型由 Laine 等人在2016 年提出。该模型的工作原理如下:

遍历每个输入(标记和未标记的输入混合在一起)。对于每个输入,我们计算该图像的两个随机增强。将这两个增强图像输入到我们的卷积神经网络中,该网络产生两个输出向量。

π-model 的核心思想是,为了规范模型并使其对噪声有弹性,我们应该惩罚它对同一图像的增强给出不同的预测。因此,除了通常用于此类图像分类任务的标准交叉熵损失(只为标记数据计算)外,我们还根据两个输出向量之间的平方差在损失中添加了一个被称为样本的“一致性损失”的损失项。

数据点的最终损失是交叉熵损失(如果数据点被标记)和一致性损失的加权和。权重 w(t) 决定了一致性损失相对于交叉熵损失的权重。在第一个 epoch 期间,w(t) = 0,因为我们没有来自之前 epoch 的数据可以用来对未标记的点进行有意义的分类。随着模型的进展,w(t) 遵循高斯曲线增加。

Temporal Ensembling

Temporal Ensembling与 π-model 密切相关——事实上,它们是在同一篇论文中提出的。

π-model 的一个问题是训练目标非常嘈杂,因为它们基于随机增强和单个模型评估。Temporal Ensembling不是对每个图像进行两次增强并比较两次增强的预测,而是让跟踪指数移动平均值并将其用作训练目标。为其计算单个增强和单个预测向量,然后将其与该移动平均值进行比较以获得最终的一致性损失。

Temporal Ensembling的工作方式与π-model大致相同。以相同的方式考虑交叉熵损失,并且 w(t) 再次遵循高斯曲线。但是Temporal Ensembling的训练速度更快(因为我们只需要对每个输入评估一次模型而不是两次),并且训练目标的噪声较小。

CIFAR-10上的 π-model 和Temporal Ensembling对比

SVHN 上的π-model 和Temporal Ensembling对比

π-model 和Temporal Ensembling在他们的时代产生了最先进的结果。并且在有限数据上训练时,特别优于其他模型。

该论文还测试了这些模型在接收到虚假信息时的性能——也就是说,当相当大比例的标签完全随机分配时。该模型的性能随着虚假信息的添加而恶化,而Temporal Ensembling对不正确的标签具有很强的健壮性。

引用:

Temporal Ensembling for Semi-Supervised Learning 1610.02242

Self-training with Noisy Student improves ImageNet classification 1911.04252

作者:Jacob Alexander Yatvitskiy

0 人点赞