无监督数据增强

一致性训练

Qizhe Xie1,2, Zihang Dai1,2, Eduard Hovy2, Minh-Thang Luong1, Quoc V. Le1
1 Google Research, Brain Team, 2 Carnegie Mellon University
{qizhex, dzihang, hovy}@cs.cmu.edu, {thangluong, qvl}@google.com

摘要

最近,当标记数据稀缺时,半监督学习在改进深度学习模型方面表现出了很大的希望。 最近的方法中常见的是对大量未标记数据使用一致性训练来约束模型预测对输入噪声不变。 在这项工作中,我们提出了关于如何有效地对未标记示例进行噪声处理的新视角,并认为噪声的质量,特别是由先进的数据增强方法产生的噪声的质量,在半监督学习中起着至关重要的作用。 通过用 RandAugment 和反向翻译等先进的数据增强方法代替简单的噪声操作,我们的方法在相同的一致性训练框架下对六种语言和三种视觉任务带来了实质性的改进。 在 IMDb 文本分类数据集上,仅使用 20 个标记示例,我们的方法的错误率为 4.20,优于在 25,000 个标记示例上训练的最先进模型。 在标准半监督学习基准 CIFAR-10 上,我们的方法优于以前的所有方法,仅用 250 个示例即可实现 5.43 的错误率。 我们的方法还与迁移学习很好地结合起来,例如,当从 BERT 进行微调时,无论是在只有 10% 标记数据的情况下,还是在具有 130 万个额外未标记示例的完整标记集时,都能在高数据状态(例如 ImageNet)中产生改进用来。111代码可从 https://github.com/google-research/uda 获取。

1简介

深度学习的一个根本弱点是它通常需要大量标记数据才能正常工作。 半监督学习 (SSL) [5] 是利用未标记数据来解决这一弱点的最有前途的范例之一。 SSL 最近的工作多种多样,但那些基于一致性训练 [2, 49, 32, 58] 的工作已在许多基准测试中表现良好。

简而言之,一致性训练方法只是将模型预测正则化,使其对应用于输入示例 [41, 51, 7] 或隐藏状态 [2, 32] 的小噪声不变。 >。 这个框架直观上是有意义的,因为一个好的模型应该对输入示例或隐藏状态中的任何微小变化都具有鲁棒性。 在此框架下,此类中的不同方法主要在噪声注入的应用方式和位置上有所不同。 典型的噪声注入方法是加性高斯噪声、丢失噪声或对抗性噪声。

在这项工作中,我们研究了噪声注入在一致性训练中的作用,并观察到先进的数据增强方法,特别是那些在监督学习中效果最好的方法[56,31,9,66],在以下方面也表现良好半监督学习。 监督学习中的数据增强操作的性能与其在一致性训练中的性能之间确实存在很强的相关性。 因此,我们建议用高质量的数据增强方法代替传统的噪声注入方法,以提高训练的一致性。 为了强调在一致性训练中使用更好的数据增强,我们将我们的方法命名为无监督数据增强或 UDA。

我们在各种语言和视觉任务上评估 UDA。 在六个文本分类任务中,我们的方法比最先进的模型取得了显着的改进。 值得注意的是,在 IMDb 上,具有 20 个标记示例的 UDA 优于在 1250 倍标记数据上训练的最先进模型。 在标准半监督学习基准 CIFAR-10 和 SVHN 上,UDA 显着优于所有现有的半监督学习方法,并在 250 个标记示例中分别实现了 5.43 和 2.72 的错误率。 最后,我们还发现当有大量监督数据时 UDA 是有益的。 例如,在 ImageNet 上,使用 10% 标记集时,UDA 可将 top-1 精度从 58.84 提高到 68.78;使用完整标记集和具有 1.3M 未标记示例的外部数据集时,UDA 可将 top-1 精度从 78.43 提高到 79.05

我们的主要贡献和发现可总结如下:

  • 首先,我们表明,在监督学习中发现的最先进的数据增强也可以在一致性强制半监督框架下充当优越的噪声源。 结果见表2和表2

  • 其次,我们证明 UDA 可以匹配甚至超越使用更多数量级标记数据的纯监督学习。 请参阅表 4 和图 4 中的结果。

    34 报告了视觉和语言任务的最新结果。 47 突出显示了 UDA 在不同训练数据大小上的有效性。

  • 第三,我们表明 UDA 与迁移学习很好地结合在一起,例如,当从 BERT 进行微调时(参见表 4),并且在高数据状态下有效,例如在 ImageNet 上(参见表5)。

  • 最后,我们还在3节中对UDA如何提高分类性能以及最先进的增强的相应作用进行了理论分析。

2 无监督数据增强 (UDA)

在本节中,我们首先制定我们的任务,然后介绍 UDA 背后的关键方法和见解。 在本文中,我们重点关注分类问题,并使用 x 表示输入,使用 y 表示其真实预测目标。 我们有兴趣学习模型 pθ(yx) 以根据输入 x 预测 y,其中 θ 表示模型参数。 最后,我们将使用 pL(x)pU(x) 分别表示标记和未标记示例的分布,并使用 f 表示我们希望学习的完美分类器。

2.1 背景:监督数据增强

数据增强旨在通过对示例应用转换来创建新颖且逼真的训练数据,而不更改其标签。 正式地,令 q(x^x) 为增强变换,可以根据原始示例 x 从中得出增强示例 x^ 为了使增强变换有效,要求从分布中提取的任何示例 x^q(x^x)x 共享相同的真实标签。 给定有效的增强变换,我们可以简单地最小化增强示例的负对数似然。

监督数据增强可以等效地视为训练从原始监督集构造增强标记集,然后在增强集上构建模型。 因此,增广集需要提供额外的归纳偏置才能更有效。 因此,如何设计增强变换就变得至关重要。

近年来,自然语言处理[66]、视觉[31, 9]和语音[17, 45]的数据增强设计取得了显着进展。 ] 在受监督的设置中。 尽管结果很有希望,但数据增强大多被视为“蛋糕上的樱桃”,它提供了稳定但有限的性能提升,因为这些增强到目前为止仅应用于一组通常较小的标记示例。 受此限制的启发,通过一致性训练框架,我们将监督数据增强的进步扩展到半监督学习,其中有大量未标记的数据可用。

2.2 无监督数据增强

正如引言中所讨论的,半监督学习的最新工作一直在利用未标记的示例来增强模型的平滑性。 这些作品的一般形式可以概括如下:

  • 给定输入 x,计算给定 x 的输出分布 pθ(yx),以及通过注入小噪声 ϵ 得到的噪声版本 pθ(yx,ϵ) 噪声可以应用于 x 或隐藏状态。

  • 最小化两个分布 𝒟(pθ(yx)pθ(yx,ϵ)) 之间的差异度量。

此过程强制模型对噪声 ϵ 不敏感,因此对于输入(或隐藏)空间的变化更加平滑。 从另一个角度来看,最小化一致性损失会逐渐将标签信息从标记的示例传播到未标记的示例。

在这项工作中,我们感兴趣的是噪声被注入到输入 x 的特定设置,即 x^=q(x,ϵ),如先前的工作 [51, 32, 41] 但与现有工作不同的是,我们关注的是噪声操作 q 的形式或“质量”如何影响此一致性训练框架的性能这一无人关注的问题。 具体来说,为了增强一致性,现有方法通常采用简单的噪声注入方法,例如添加高斯噪声、对噪声未标记示例进行简单的输入增强。 相比之下,我们假设监督学习中更强的数据增强在半监督一致性训练框架中用于对未标记的示例进行噪声处理时也可以带来卓越的性能,因为事实证明,更加多样化和自然的更先进的数据增强可以在监督环境中导致显着的性能提升。

遵循这个想法,我们建议使用在各种监督设置中验证的一组丰富的最先进的数据增强来注入噪声并在未标记的示例上优化相同的一致性训练目标。 当与标记示例联合训练时,我们利用权重因子λ来平衡监督交叉熵和无监督一致性训练损失,如图1所示。 形式上,完整的目标可以写成如下:

minθ𝒥(θ)=𝔼x1pL(x)[logpθ(f(x1)x1)]+λ𝔼x2pU(x)𝔼x^q(x^x2)[CE(pθ~(yx2)pθ(yx^))] (1)

其中CE表示交叉熵,q(x^x)是数据增强变换,θ~是当前参数θ固定副本,表明正如 VAT [41] 所建议的,梯度不会通过 θ~ 传播。 对于大多数实验,我们将 λ 设置为 1 实际上,在每次迭代中,我们计算一小批标记示例的监督损失,并计算一小批未标记数据的一致性损失。 然后将这两个损失相加得到最终的损失。 我们使用更大的批量大小来降低一致性损失。

在视觉领域,包括裁剪和翻转在内的简单增强被应用于标记的示例。 为了最小化监督训练和未标记示例的预测之间的差异,我们对未标记示例应用相同的简单增强来计算 pθ~(yx)

Refer to caption
图1 UDA 的训练目标,其中 M 是预测给定 xy 分布的模型。

讨论。 在详细介绍本工作中使用的增强操作之前,我们首先从三个方面提供一些直觉,说明更高级的数据增强如何比早期工作中使用的简单数据增强提供额外的优势:

  • 有效噪声:在监督学习中实现出色性能的高级数据增强方法通常会生成与原始示例共享相同真实标签的真实增强示例。 因此,鼓励原始未标记示例和增强的未标记示例的预测之间的一致性是安全的。

  • 多样化的噪声:高级数据增强可以生成多样化的示例集,因为它可以对输入示例进行大量修改而不更改其标签,而简单的高斯噪声仅进行局部更改。 鼓励不同的增强示例集的一致性可以显着提高样本效率。

  • 有针对性的归纳偏差:不同的任务需要不同的归纳偏差。 在监督训练中表现良好的数据增强操作本质上提供了缺失的归纳偏差。

2.3 不同任务的增强策略

我们现在详细介绍我们在这项工作中使用的针对不同任务定制的增强方法。

用于图像分类的 RandAugment。 我们使用一种名为 RandAugment [10] 的数据增强方法,该方法受到 AutoAugment [9] 的启发。 AutoAugment 使用搜索方法来组合 Python 图像库 (PIL) 中的所有图像处理转换,以找到良好的增强策略。 在 RandAugment 中,我们不使用搜索,而是从 PIL 中的同一组增强变换中均匀采样。 换句话说,RandAugment 更简单,不需要标记数据,因为不需要搜索最优策略。

文本分类的反向翻译。 当用作增强方法时,反向翻译 [54, 15] 是指将语言 A 中的现有示例 x 翻译成另一种语言的过程B,然后将其翻译回 A 以获得增强示例 x^ 正如[66]所观察到的,回译可以生成不同的释义,同时保留原始句子的语义,从而显着提高问答的性能。 在我们的例子中,我们使用反向翻译来解释文本分类任务的训练数据。222我们还注意到,虽然翻译使用带标签的数据集,但翻译任务本身与文本分类任务非常不同,并且不使用任何文本分类标签。 此外,反向翻译是一种通用的数据增强方法,可以应用于具有相同模型检查点的许多任务。

我们发现释义的多样性很重要。 因此,我们采用具有可调温度的随机采样来代替波束搜索来生成。 如图2所示,回译句子生成的释义多种多样,且语义相似。 更具体地说,我们使用 WMT’14 英语-法语翻译模型(双向)对每个句子进行反向翻译。 为了方便未来的研究,我们开源了我们的反向翻译系统和翻译检查点。

Refer to caption
图2 使用反向翻译和 RandAugment 的增强示例。

用 TF-IDF 替换单词进行文本分类。 虽然回译能够很好地维护句子的全局语义,但对于保留哪些单词却几乎无法控制。 此要求对于主题分类任务(例如 DBPedia)很重要,其中某些关键字在确定主题时比其他单词提供更多信息。 因此,我们提出了一种增强方法,用低 TF-IDF 分数替换无信息的单词,同时保留具有高 TF-IDF 值的单词。 我们建议读者参阅附录A.2以获取详细说明。

2.4 额外的训练技巧

在本节中,我们将介绍针对一些常见问题的其他技术。

基于置信度的掩蔽。 我们发现掩盖当前模型不自信的示例很有帮助。 具体来说,在每个小批量中,仅在分类类别中最高概率大于阈值β的示例上计算一致性损失项。 我们将阈值β设置为一个较高的值。 具体来说,β 对于 CIFAR-10 和 SVHN 设置为 0.8,对于 ImageNet 设置为 0.5。

锐化预测。 由于将预测正则化为低熵已被证明是有益的 [16, 41],因此我们在使用低 Softmax 温度 τ 计算未标记示例上的目标分布时锐化预测>。 与基于置信度的屏蔽结合使用时,小批量 B 上未标记示例 𝔼xpU(x)𝔼x^q(x^x)[CE(pθ~(yx)pθ(yx^))] 的损失计算如下:

1|B|xBI(maxypθ~(yx)>β)CE(pθ~(sharp)(yx)pθ(yx^))
pθ~(sharp)(yx)=exp(zy/τ)yexp(zy/τ)

其中I()是指标函数,zy是标签y的logit,例如x 对于 CIFAR-10、SVHN 和 ImageNet,我们将 τ 设置为 0.4。

领域相关数据过滤。 理想情况下,我们希望利用域外未标记数据,因为它通常更容易收集,但域外数据的类分布与域内数据的类分布不匹配,这可能会导致如果直接使用[44]会造成性能损失。 为了获取与当前任务的域相关的数据,我们采用一种常见的技术来检测域外数据。 我们使用在域内数据上训练的基线模型来推断大型域外数据集中的数据标签,并挑选出模型最有信心的示例。 具体来说,对于每个类别,我们根据属于该类别的分类概率对所有示例进行排序,并选择概率最高的示例。

3理论分析

在本节中,我们从理论上分析为什么 UDA 可以提高模型的性能以及达到一定错误率所需的标记示例数量。 继前面的章节之后,我们将使用 f 表示我们希望学习的完美分类器,使用 pU 表示未标记数据的边际分布,并使用 q(x^x) 表示增强分布。

为了使分析易于处理,我们对数据增强转换做出以下简单假设:

  • 域内增强:数据增强生成的数据示例在pU下具有非零概率,即x^q(x^x),xpU(x)pU(x^)>0

  • 保留标签增强:数据增强保留原始示例的标签,即f(x)=f(x^)代表x^q(x^x),xpU(x)

  • 可逆扩充:数据扩充操作可以逆转,即 if q(x^x)>0 then q(xx^)>0

作为第一步,我们希望提供形式分析的直观草图。 让我们定义一个图GpU,其中每个节点对应一个数据样本xX,并且图中存在一条边(x^,x)当且仅当q(x^x)>0 由于标签保留假设,很容易看出具有不同标签的示例必须驻留在图 GpU 的不同组件(断开的子图)上。 因此,对于 N 类别分类问题,当每个类别内的所有示例都可以通过增强操作遍历时,图具有 N 分量(子图)。 否则,图表将具有多个 N 组件。

考虑到这种构造,请注意,对于图中的每个组件Ci,只要组件中存在单个带标签的示例,即(x,y)Ci,就可以传播节点的标签通过增广操作q(x^x)遍历CiCi中的其余节点。 更重要的是,如果只执行监督数据增强,则只能将标签信息传播到标记节点的直接连接的邻居。 相反,执行无监督数据增强可确保遍历整个子图Ci 这提供了 UDA 如何提供帮助的第一个高级直觉。

更进一步,为了通过这种标签传播找到完美的分类器,需要每个组件中至少存在一个带标签的示例。 换句话说,组件的数量限制了学习完美分类器所需的最小标记示例数量。 重要的是,组件的数量实际上取决于增强操作的质量:理想的增强应该能够在给定起始实例的情况下达到同一类别的所有其他示例。 这与我们对最先进的数据增强方法在生成更多样化示例方面的好处的讨论非常吻合。 实际上,增强多样性会导致每个节点有更多的邻居,从而减少图中的组件数量。

由于监督数据增强仅将标签信息传播到标记节点的直接连接的邻居。 具有高精度的高级数据增强必须生成一个每个节点都有更多邻居的图。 实际上,这样的图具有更多的边和更好的连通性。 因此,该图也更有可能具有较少数量的组件。 为了进一步说明这种直觉,在图3中,我们提供了不同算法之间的比较。

Refer to caption
(a) Supervised learning.
(4/15)
Refer to caption
(b) Advanced supervised augmentation.
(9/15)
Refer to caption
(c) UDA with advanced augmentation. (15/15)
Refer to caption
(d) Simple supervised augmentation.
(7/15)
Refer to caption
(e) UDA with simple augmentation.
(10/15)
图3 不同设置的预测结果,其中绿色和红色节点为有标签节点,白色节点为无法确定标签的无标签节点,浅绿色节点和浅红色节点为可以正确确定标签的无标签节点。 不同设置的准确度如()所示。

根据所描述的直觉,我们陈述我们的正式结果。 不失一般性,假设图中存在 k 组件。 对于每个组件 Ci(i=1,,k),令 Pi 为观察到的标记示例落入第 i 个组件的总概率质量,即 Pi=xCipL(x). 以下定理描述了 UDA 错误率与标记示例数量之间的关系。

Theorem 1

在 UDA 下,让 Pr(𝒜) 表示在给定 PL 中的 m 个标记示例的情况下,算法无法推断出新测试示例的标签的概率。 Pr(𝒜) 由下式给出

Pr(𝒜)=iPi(1Pi)m.

另外,O(k/ϵ)标记的例子可以保证O(ϵ)的错误率,即

m=O(k/ϵ)Pr(𝒜)=O(ϵ).
证明。

请参阅附录。 C 了解详细信息。

从定理中,我们可以看到组件的数量,即k,直接控制着达到所需性能所需的标记数据量。 正如我们上面所讨论的,组件的数量实际上依赖于增强函数的质量,其中更好的增强函数会导致更少的组件。 这与我们对最先进的数据增强操作在生成更多样化示例方面的好处的讨论相呼应。 因此,通过最先进的增强操作,UDA 能够使用更少的标记示例实现良好的性能。

4实验

在本节中,我们在各种语言和视觉任务上评估 UDA。 对于语言,我们依赖六个文本分类基准数据集,包括 IMDb、Yelp-2、Yelp-5、Amazon-2 和 Amazon-5 情感分类以及 DBPedia 主题分类[37, 71] 对于视觉,我们使用两个较小的数据集 CIFAR-10 [30]、SVHN [43](通常用于比较半监督算法)以及 ImageNet [13]更大规模来测试UDA的可扩展性。 对于消融研究和实验细节,我们建议读者参阅附录B和附录E

4.1 监督和半监督表现之间的相关性

第一步,我们尝试验证 UDA 的基本思想,即数据增强在监督学习和半监督学习中的有效性之间存在正相关关系。 基于 Yelp-5(语言任务)和 CIFAR-10(视觉任务),我们比较了完全监督或半监督设置中不同数据增强方法的性能。 对于 Yelp-5,除了回译之外,我们还提供了一种更简单的方法 Switchout [61],它将词符替换为从词汇表中统一采样的随机词符。 对于 CIFAR-10,我们将 RandAugment 与两种更简单的方法进行比较:(1) 裁剪和翻转增强以及 (2) Cutout。

Augmentation Sup Semi-Sup (# Sup examples) (50k) (4k) Crop & flip 5.36 10.94 Cutout 4.42 5.43 RandAugment 4.23 4.32 表1 CIFAR-10 上的错误率。 Augmentation Sup Semi-sup (# Sup examples) (650k) (2.5k) 38.36 50.80 Switchout 37.24 43.38 Back-translation 36.71 41.35 表2 Yelp-5 上的错误率。

基于此设置,表2和表2表现出监督和半监督设置之间增强有效性的强相关性。 这验证了我们的想法,即在监督学习中发现更强大的数据增强,当应用于半监督学习设置时,总能带来更多收益。

4.2视觉半监督学习基准的算法比较

有了上面建立的相关性,我们要问的下一个问题是,与现有的半监督学习算法相比,UDA 的表现如何。 为了回答这个问题,我们重点关注最常用的半监督学习基准 CIFAR-10 和 SVHN。

改变标记数据的大小。 首先,我们遵循[44]中的设置,并采用Wide-ResNet-28-2 [67, 18]作为主干模型,并评估具有不同监督数据大小的UDA 。 具体来说,我们将 UDA 与两个高度竞争的基线进行比较:(1) Virtual adversarial train (VAT) [41],一种在输入上生成对抗性高斯噪声的算法,以及 (2) MixMatch [ 3],一项结合了半监督学习先前进展的并行工作。 4 显示了比较结果,其中包含两个关键观察结果。

  • 首先,在给定不同大小的标记数据的情况下,UDA 始终优于两个基线。

  • 此外,UDA 和 VAT 之间的性能差异显示了基于噪声的数据增强的优越性。 UDA和VAT的区别本质上是噪声过程。 虽然 VAT 产生的噪声通常包含真实图像中不存在的高频伪影,但数据增强大多会生成多样化且真实的图像。

Refer to caption
(a) CIFAR-10
Refer to caption
(b) SVHN
图4 在 CIFAR-10 和 SVHN 上与不同数量的标记示例的两种半监督学习方法进行比较。

改变模型架构。 接下来,我们直接将 UDA 与之前发布的不同模型架构下的结果进行比较。 继之前的工作之后,4k 和 1k 标记示例分别用于 CIFAR-10 和 SVHN。 如表 3 所示,在相同的架构下,UDA 的性能明显优于所有已发布的结果,并且几乎与完全监督的性能相匹配,后者使用了 10 倍多的标记示例。 这显示了视觉领域一致性框架下最先进的数据训练的巨大潜力。

Method Model # Param CIFAR-10 (4k) SVHN (1k)
Π-Model [32] Conv-Large 3.1M 12.36 ± 0.31 4.82 ± 0.17
Mean Teacher [58] Conv-Large 3.1M 12.31 ± 0.28 3.95 ± 0.19
VAT + EntMin [41] Conv-Large 3.1M 10.55 ± 0.05 3.86 ± 0.11
SNTG [35] Conv-Large 3.1M 10.93 ± 0.14 3.86 ± 0.27
ICT [60] Conv-Large 3.1M 7.29 ± 0.02 3.89 ± 0.04
Pseudo-Label [33] WRN-28-2 1.5M 16.21 ± 0.11 7.62 ± 0.29
LGA + VAT [25] WRN-28-2 1.5M 12.06 ± 0.19 6.58 ± 0.36
ICT [60] WRN-28-2 1.5M 7.66 ± 0.17 3.53 ± 0.07
MixMatch [3] WRN-28-2 1.5M 6.24 ± 0.06 2.89 ± 0.06
Mean Teacher [58] Shake-Shake 26M 6.28 ± 0.15 -
Fast-SWA [1] Shake-Shake 26M 5.0 -
MixMatch [3] WRN 26M 4.95 ± 0.08 -
UDA (RandAugment) WRN-28-2 1.5M 4.32 ± 0.08 2.23 ± 0.07
UDA (RandAugment) Shake-Shake 26M 3.7 -
UDA (RandAugment) PyramidNet 26M 2.7 -
表3 使用不同模型的方法之间的比较,其中 PyramidNet 与 ShakeDrop 正则化一起使用。 在 CIFAR-10 上,只有 4,000 个标记示例,UDA 与完全监督的 Wide-ResNet-28-2 和 PyramidNet+ShakeDrop 的性能相匹配,在没有 RandAugment 的情况下对 50,000 个示例进行训练时,它们的错误率分别为 5.4 和 2.7。 在 SVHN 上,UDA 还与我们在没有 RandAugment 的情况下在 73,257 个示例上训练的完全监督模型的性能相匹配,其错误率为 2.84。

4.3 文本分类数据集评估

接下来,我们进一步评估语言领域的UDA。 此外,为了测试UDA是否可以与无监督表示学习的成功结合起来,例如BERT[14],我们进一步考虑四种初始化方案:(a)随机Transformer; (b) BERTBASE; (c) BERTLARGE; (d) BERTFINETUNE:BERTLARGE 对域内未标记数据进行微调333一个例外是我们不在 DBPedia 上追求 BERTFINETUNE,因为在 DBPedia 上微调 BERT 不会带来进一步的性能提升。 这可能是因为 DBPedia 基于维基百科,而 BERT 已经在整个维基百科语料库上进行了训练。. 在这四种初始化方案中,我们比较了使用和不使用 UDA 的性能。

Fully supervised baseline
Datasets IMDb Yelp-2 Yelp-5 Amazon-2 Amazon-5 DBpedia
(# Sup examples) (25k) (560k) (650k) (3.6m) (3m) (560k)
Pre-BERT SOTA 4.32 2.16 29.98 3.32 34.81 0.70
BERTLARGE 4.51 1.89 29.32 2.63 34.17 0.64
Semi-supervised setting
Initialization UDA IMDb Yelp-2 Yelp-5 Amazon-2 Amazon-5 DBpedia
(20) (20) (2.5k) (20) (2.5k) (140)
Random 43.27 40.25 50.80 45.39 55.70 41.14
25.23 8.33 41.35 16.16 44.19 7.24
BERTBASE 18.40 13.60 41.00 26.75 44.09 2.58
5.45 2.61 33.80 3.96 38.40 1.33
BERTLARGE 11.72 10.55 38.90 15.54 42.30 1.68
4.78 2.50 33.54 3.93 37.80 1.09
BERTFINETUNE 6.50 2.94 32.39 12.17 37.32 -
4.20 2.05 32.08 3.50 37.12 -
表4 文本分类数据集的错误率。 在完全监督的设置中,预 BERT SOTA 包括针对 Yelp-2 和 Yelp-5 的 ULMFiT [23],针对 Amazon-2 和 Amazon-的 DPCNN [26] 5、IMDb 和 DBPedia 的混合增值税[50] 我们所有的实验都使用序列长度 512。

结果如表4所示,我们想强调三个观察结果:

  • 首先,即使标记示例很少,与使用完全监督数据训练的 SOTA 模型相比,UDA 也可以提供不错的甚至有竞争力的性能。 特别是,在二元情感分析任务上,只有 20 个监督示例,UDA 优于之前在 IMDb 上使用完整监督数据训练的 SOTA,并且在 Yelp-2 和 Amazon-2 上具有竞争力。

  • 其次,UDA 是迁移学习/表示学习的补充。 我们可以看到,当使用 BERT 初始化并进一步对域内数据进行微调时,UDA 仍然可以将 IMDb 上的错误率从 6.50 显着降低到 4.20

  • 最后,我们还注意到,对于五类情感分类任务,每类有 500 个标记示例的 UDA 与在整个监督集上训练的 BERT 之间仍然存在明显差距。 直观上,五类情感分类比二元情感分类要困难得多。 这表明未来还有进一步改进的空间。

4.4 ImageNet数据集的可扩展性测试

然后,为了评估 UDA 是否可以扩展到大规模和更高难度的问题,我们现在转向以 ResNet-50 作为底层架构的 ImageNet 数据集。 具体来说,我们考虑两种具有不同性质的实验设置:

  • 我们使用 ImageNet 的 10% 监督数据,同时使用所有其他数据作为未标记数据。 因此,未标记的示例完全在域内。

  • 在第二种设置中,我们将 ImageNet 中的所有图像保留为监督数据。 然后,我们使用领域相关数据过滤方法从 JFT [22, 6] 中过滤掉 130 万张图像。 因此,未标记的集合不一定在域内。

结果总结在表5中。 在 10% 和完整数据设置中,与监督基线相比,UDA 始终带来显着收益。 这表明 UDA 不仅能够扩展,而且能够利用域外未标记的示例来提高模型性能。 与我们的工作并行,S4L [69] 和 CPC [20] 也显示出 ImageNet 的显着改进。

Methods SSL 10% 100%
ResNet-50 55.09 / 77.26 77.28 / 93.73
w. RandAugment 58.84 / 80.56 78.43 / 94.37
UDA (RandAugment) 68.78 / 88.80 79.05 / 94.49
表5 ImageNet 上 10% 和 100% 标记集的 Top-1/top-5 准确率。 我们分别使用图像大小 224 和 331 进行 10% 和 100% 实验。

5相关工作

现有的一致性训练工作确实利用了数据增强[32, 51];然而,他们只应用弱增强方法,例如随机平移和裁剪。 与我们的工作并行,ICT [60] 和 MixMatch [3] 也显示了半监督学习的改进。 这些方法在简单的增强(例如翻转和裁剪)之上采用 mixup [70] ;相反,UDA 强调使用最先进的数据增强,从而在 CIFAR-10 和 SVHN 上获得显着更好的结果。 此外,UDA还适用于语言领域,并且还可以很好地扩展到更具挑战性的视觉数据集,例如ImageNet。

一致性训练系列中的其他工作主要在如何定义噪声方面有所不同:Pseudo ensemble [2] 直接应用高斯噪声和 Dropout 噪声; VAT [41, 40] 通过近似模型最敏感的输入空间的变化方向来定义噪声;跨视图训练 [7] 屏蔽部分输入数据。 除了强制输入示例和隐藏表示的一致性之外,另一项研究还强制模型参数空间的一致性。 此类别中的作品包括 Mean Teacher [58]、快速随机权重平均 [1] 和 Smooth Neighbors on Teacher Graphs [35] 相关工作的完整版本请参阅附录D

6结论

在本文中,我们表明数据增强和半监督学习密切相关:更好的数据增强可以带来更好的半监督学习。 我们的方法 UDA 采用监督学习中最先进的数据增强来生成多样化且真实的噪声,并强制模型与这些噪声保持一致。 对于文本,UDA 与表征学习(例如 BERT)很好地结合在一起。 对于视觉,UDA 明显优于之前的工作,并且几乎与在全标记集上训练的完全监督模型的性能相匹配,该模型大一个数量级。 我们希望 UDA 鼓励未来的研究将先进的监督增强转移到半监督环境中以完成不同的任务。

致谢

我们要感谢 Hieu Pham、Adams Wei Yu、Zhilin Yang 和 Ekin Dogus Cubuk 在本项目的不同阶段对作者的不懈帮助,并感谢 Colin Raffel 指出我们的工作与以前的工作之间的联系。 我们还要感谢 Olga Wichrowska、Barret Zoph、谢嘉腾、Guokun Lai、Yulun Du、Chen Dan、David Berthelot、Avital Oliver、Trieu Trinh、Ran Zhao、Ola Spyra、Brandon Yang、Daiyi Peng、Andrew Dai、Samy Bengio 、Jeff Dean 和 Google Brain 团队进行了富有洞察力的讨论并为这项工作提供了支持。 最后,我们感谢匿名审稿人的宝贵反馈。

更广泛的影响

这项工作表明,利用有限的标记数据可以获得出色的性能。 因此,注释数据预算有限的团体/机构可能会从这项研究中受益。 据我们所知,这项研究不会让任何人处于不利地位。 我们的方法不利用数据中的偏差。 我们的任务包括 IMDb、CIFAR-10、SVHN 和 ImageNet 等标准基准测试。

参考

  • [1] Ben Athiwaratkun, Marc Finzi, Pavel Izmailov, and Andrew Gordon Wilson. There are many consistent explanations of unlabeled data: Why you should average. ICLR, 2019.
  • [2] Philip Bachman, Ouais Alsharif, and Doina Precup. Learning with pseudo-ensembles. In Advances in Neural Information Processing Systems, pages 3365–3373, 2014.
  • [3] David Berthelot, Nicholas Carlini, Ian Goodfellow, Nicolas Papernot, Avital Oliver, and Colin Raffel. Mixmatch: A holistic approach to semi-supervised learning. arXiv preprint arXiv:1905.02249, 2019.
  • [4] Yair Carmon, Aditi Raghunathan, Ludwig Schmidt, Percy Liang, and John C Duchi. Unlabeled data improves adversarial robustness. arXiv preprint arXiv:1905.13736, 2019.
  • [5] Olivier Chapelle, Bernhard Scholkopf, and Alexander Zien. Semi-supervised learning (chapelle, o. et al., eds.; 2006)[book reviews]. IEEE Transactions on Neural Networks, 20(3):542–542, 2009.
  • [6] François Chollet. Xception: Deep learning with depthwise separable convolutions. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 1251–1258, 2017.
  • [7] Kevin Clark, Minh-Thang Luong, Christopher D Manning, and Quoc V Le. Semi-supervised sequence modeling with cross-view training. arXiv preprint arXiv:1809.08370, 2018.
  • [8] Ronan Collobert and Jason Weston. A unified architecture for natural language processing: Deep neural networks with multitask learning. In Proceedings of the 25th international conference on Machine learning, pages 160–167. ACM, 2008.
  • [9] Ekin D Cubuk, Barret Zoph, Dandelion Mane, Vijay Vasudevan, and Quoc V Le. Autoaugment: Learning augmentation policies from data. arXiv preprint arXiv:1805.09501, 2018.
  • [10] Ekin D Cubuk, Barret Zoph, Jonathon Shlens, and Quoc V Le. Randaugment: Practical data augmentation with no separate search. arXiv preprint arXiv:1909.13719, 2019.
  • [11] Andrew M Dai and Quoc V Le. Semi-supervised sequence learning. In Advances in neural information processing systems, pages 3079–3087, 2015.
  • [12] Zihang Dai, Zhilin Yang, Fan Yang, William W Cohen, and Ruslan R Salakhutdinov. Good semi-supervised learning that requires a bad gan. In Advances in Neural Information Processing Systems, pages 6510–6520, 2017.
  • [13] Jia Deng, Wei Dong, Richard Socher, Li-Jia Li, Kai Li, and Li Fei-Fei. Imagenet: A large-scale hierarchical image database. In 2009 IEEE conference on computer vision and pattern recognition, pages 248–255. Ieee, 2009.
  • [14] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805, 2018.
  • [15] Sergey Edunov, Myle Ott, Michael Auli, and David Grangier. Understanding back-translation at scale. arXiv preprint arXiv:1808.09381, 2018.
  • [16] Yves Grandvalet and Yoshua Bengio. Semi-supervised learning by entropy minimization. In Advances in neural information processing systems, pages 529–536, 2005.
  • [17] Awni Hannun, Carl Case, Jared Casper, Bryan Catanzaro, Greg Diamos, Erich Elsen, Ryan Prenger, Sanjeev Satheesh, Shubho Sengupta, Adam Coates, et al. Deep speech: Scaling up end-to-end speech recognition. arXiv preprint arXiv:1412.5567, 2014.
  • [18] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 770–778, 2016.
  • [19] Xuanli He, Gholamreza Haffari, and Mohammad Norouzi. Sequence to sequence mixture model for diverse machine translation. arXiv preprint arXiv:1810.07391, 2018.
  • [20] Olivier J Hénaff, Ali Razavi, Carl Doersch, SM Eslami, and Aaron van den Oord. Data-efficient image recognition with contrastive predictive coding. arXiv preprint arXiv:1905.09272, 2019.
  • [21] Alex Hernández-García and Peter König. Data augmentation instead of explicit regularization. arXiv preprint arXiv:1806.03852, 2018.
  • [22] Geoffrey Hinton, Oriol Vinyals, and Jeff Dean. Distilling the knowledge in a neural network. arXiv preprint arXiv:1503.02531, 2015.
  • [23] Jeremy Howard and Sebastian Ruder. Universal language model fine-tuning for text classification. In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), volume 1, pages 328–339, 2018.
  • [24] Weihua Hu, Takeru Miyato, Seiya Tokui, Eiichi Matsumoto, and Masashi Sugiyama. Learning discrete representations via information maximizing self-augmented training. In Proceedings of the 34th International Conference on Machine Learning-Volume 70, pages 1558–1567. JMLR. org, 2017.
  • [25] Jacob Jackson and John Schulman. Semi-supervised learning by label gradient alignment. arXiv preprint arXiv:1902.02336, 2019.
  • [26] Rie Johnson and Tong Zhang. Deep pyramid convolutional neural networks for text categorization. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), volume 1, pages 562–570, 2017.
  • [27] Durk P Kingma, Shakir Mohamed, Danilo Jimenez Rezende, and Max Welling. Semi-supervised learning with deep generative models. In Advances in neural information processing systems, pages 3581–3589, 2014.
  • [28] Thomas N Kipf and Max Welling. Semi-supervised classification with graph convolutional networks. arXiv preprint arXiv:1609.02907, 2016.
  • [29] Wouter Kool, Herke van Hoof, and Max Welling. Stochastic beams and where to find them: The gumbel-top-k trick for sampling sequences without replacement. arXiv preprint arXiv:1903.06059, 2019.
  • [30] Alex Krizhevsky and Geoffrey Hinton. Learning multiple layers of features from tiny images. Technical report, Citeseer, 2009.
  • [31] Alex Krizhevsky, Ilya Sutskever, and Geoffrey E Hinton. Imagenet classification with deep convolutional neural networks. In Advances in neural information processing systems, pages 1097–1105, 2012.
  • [32] Samuli Laine and Timo Aila. Temporal ensembling for semi-supervised learning. arXiv preprint arXiv:1610.02242, 2016.
  • [33] Dong-Hyun Lee. Pseudo-label: The simple and efficient semi-supervised learning method for deep neural networks. In Workshop on Challenges in Representation Learning, ICML, volume 3, page 2, 2013.
  • [34] Davis Liang, Zhiheng Huang, and Zachary C Lipton. Learning noise-invariant representations for robust speech recognition. In 2018 IEEE Spoken Language Technology Workshop (SLT), pages 56–63. IEEE, 2018.
  • [35] Yucen Luo, Jun Zhu, Mengxi Li, Yong Ren, and Bo Zhang. Smooth neighbors on teacher graphs for semi-supervised learning. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 8896–8905, 2018.
  • [36] Lars Maaløe, Casper Kaae Sønderby, Søren Kaae Sønderby, and Ole Winther. Auxiliary deep generative models. arXiv preprint arXiv:1602.05473, 2016.
  • [37] Andrew L Maas, Raymond E Daly, Peter T Pham, Dan Huang, Andrew Y Ng, and Christopher Potts. Learning word vectors for sentiment analysis. In Proceedings of the 49th annual meeting of the association for computational linguistics: Human language technologies-volume 1, pages 142–150. Association for Computational Linguistics, 2011.
  • [38] Julian McAuley, Christopher Targett, Qinfeng Shi, and Anton Van Den Hengel. Image-based recommendations on styles and substitutes. In Proceedings of the 38th International ACM SIGIR Conference on Research and Development in Information Retrieval, pages 43–52. ACM, 2015.
  • [39] Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg S Corrado, and Jeff Dean. Distributed representations of words and phrases and their compositionality. In Advances in neural information processing systems, pages 3111–3119, 2013.
  • [40] Takeru Miyato, Andrew M Dai, and Ian Goodfellow. Adversarial training methods for semi-supervised text classification. arXiv preprint arXiv:1605.07725, 2016.
  • [41] Takeru Miyato, Shin-ichi Maeda, Shin Ishii, and Masanori Koyama. Virtual adversarial training: a regularization method for supervised and semi-supervised learning. IEEE transactions on pattern analysis and machine intelligence, 2018.
  • [42] Amir Najafi, Shin-ichi Maeda, Masanori Koyama, and Takeru Miyato. Robustness to adversarial perturbations in learning from incomplete data. arXiv preprint arXiv:1905.13021, 2019.
  • [43] Yuval Netzer, Tao Wang, Adam Coates, Alessandro Bissacco, Bo Wu, and Andrew Y Ng. Reading digits in natural images with unsupervised feature learning. 2011.
  • [44] Avital Oliver, Augustus Odena, Colin A Raffel, Ekin Dogus Cubuk, and Ian Goodfellow. Realistic evaluation of deep semi-supervised learning algorithms. In Advances in Neural Information Processing Systems, pages 3235–3246, 2018.
  • [45] Daniel S Park, William Chan, Yu Zhang, Chung-Cheng Chiu, Barret Zoph, Ekin D Cubuk, and Quoc V Le. Specaugment: A simple data augmentation method for automatic speech recognition. arXiv preprint arXiv:1904.08779, 2019.
  • [46] Jeffrey Pennington, Richard Socher, and Christopher Manning. Glove: Global vectors for word representation. In Proceedings of the 2014 conference on empirical methods in natural language processing (EMNLP), pages 1532–1543, 2014.
  • [47] Matthew E Peters, Mark Neumann, Mohit Iyyer, Matt Gardner, Christopher Clark, Kenton Lee, and Luke Zettlemoyer. Deep contextualized word representations. arXiv preprint arXiv:1802.05365, 2018.
  • [48] Alec Radford, Karthik Narasimhan, Tim Salimans, and Ilya Sutskever. Improving language understanding by generative pre-training. URL https://s3-us-west-2. amazonaws. com/openai-assets/research-covers/languageunsupervised/language understanding paper. pdf, 2018.
  • [49] Antti Rasmus, Mathias Berglund, Mikko Honkala, Harri Valpola, and Tapani Raiko. Semi-supervised learning with ladder networks. In Advances in neural information processing systems, pages 3546–3554, 2015.
  • [50] Devendra Singh Sachan, Manzil Zaheer, and Ruslan Salakhutdinov. Revisiting lstm networks for semi-supervised text classification via mixed objective function. 2018.
  • [51] Mehdi Sajjadi, Mehran Javanmardi, and Tolga Tasdizen. Regularization with stochastic transformations and perturbations for deep semi-supervised learning. In Advances in Neural Information Processing Systems, pages 1163–1171, 2016.
  • [52] Julian Salazar, Davis Liang, Zhiheng Huang, and Zachary C Lipton. Invariant representation learning for robust deep networks. In Workshop on Integration of Deep Learning Theories, NeurIPS, 2018.
  • [53] Tim Salimans, Ian Goodfellow, Wojciech Zaremba, Vicki Cheung, Alec Radford, and Xi Chen. Improved techniques for training gans. In Advances in neural information processing systems, pages 2234–2242, 2016.
  • [54] Rico Sennrich, Barry Haddow, and Alexandra Birch. Improving neural machine translation models with monolingual data. arXiv preprint arXiv:1511.06709, 2015.
  • [55] Tianxiao Shen, Myle Ott, Michael Auli, and Marc’Aurelio Ranzato. Mixture models for diverse machine translation: Tricks of the trade. arXiv preprint arXiv:1902.07816, 2019.
  • [56] Patrice Y Simard, Yann A LeCun, John S Denker, and Bernard Victorri. Transformation invariance in pattern recognition—tangent distance and tangent propagation. In Neural networks: tricks of the trade, pages 239–274. Springer, 1998.
  • [57] Robert Stanforth, Alhussein Fawzi, Pushmeet Kohli, et al. Are labels required for improving adversarial robustness? arXiv preprint arXiv:1905.13725, 2019.
  • [58] Antti Tarvainen and Harri Valpola. Mean teachers are better role models: Weight-averaged consistency targets improve semi-supervised deep learning results. In Advances in neural information processing systems, pages 1195–1204, 2017.
  • [59] Trieu H Trinh, Minh-Thang Luong, and Quoc V Le. Selfie: Self-supervised pretraining for image embedding. arXiv preprint arXiv:1906.02940, 2019.
  • [60] Vikas Verma, Alex Lamb, Juho Kannala, Yoshua Bengio, and David Lopez-Paz. Interpolation consistency training for semi-supervised learning. arXiv preprint arXiv:1903.03825, 2019.
  • [61] Xinyi Wang, Hieu Pham, Zihang Dai, and Graham Neubig. Switchout: an efficient data augmentation algorithm for neural machine translation. arXiv preprint arXiv:1808.07512, 2018.
  • [62] Jason Weston, Frédéric Ratle, Hossein Mobahi, and Ronan Collobert. Deep learning via semi-supervised embedding. In Neural Networks: Tricks of the Trade, pages 639–655. Springer, 2012.
  • [63] Zhilin Yang, William W Cohen, and Ruslan Salakhutdinov. Revisiting semi-supervised learning with graph embeddings. arXiv preprint arXiv:1603.08861, 2016.
  • [64] Zhilin Yang, Junjie Hu, Ruslan Salakhutdinov, and William W Cohen. Semi-supervised qa with generative domain-adaptive nets. arXiv preprint arXiv:1702.02206, 2017.
  • [65] Mang Ye, Xu Zhang, Pong C Yuen, and Shih-Fu Chang. Unsupervised embedding learning via invariant and spreading instance feature. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 6210–6219, 2019.
  • [66] Adams Wei Yu, David Dohan, Minh-Thang Luong, Rui Zhao, Kai Chen, Mohammad Norouzi, and Quoc V Le. Qanet: Combining local convolution with global self-attention for reading comprehension. arXiv preprint arXiv:1804.09541, 2018.
  • [67] Sergey Zagoruyko and Nikos Komodakis. Wide residual networks. BMVC, 2016.
  • [68] Runtian Zhai, Tianle Cai, Di He, Chen Dan, Kun He, John Hopcroft, and Liwei Wang. Adversarially robust generalization just requires more unlabeled data. arXiv preprint arXiv:1906.00555, 2019.
  • [69] Xiaohua Zhai, Avital Oliver, Alexander Kolesnikov, and Lucas Beyer. S4l: Self-supervised semi-supervised learning. In Proceedings of the IEEE international conference on computer vision, 2019.
  • [70] Hongyi Zhang, Moustapha Cisse, Yann N Dauphin, and David Lopez-Paz. mixup: Beyond empirical risk minimization. arXiv preprint arXiv:1710.09412, 2017.
  • [71] Xiang Zhang, Junbo Zhao, and Yann LeCun. Character-level convolutional networks for text classification. In Advances in neural information processing systems, pages 649–657, 2015.
  • [72] Xiaojin Zhu, Zoubin Ghahramani, and John D Lafferty. Semi-supervised learning using gaussian fields and harmonic functions. In Proceedings of the 20th International conference on Machine learning (ICML-03), pages 912–919, 2003.

附录A扩展方法详细信息

在本节中,我们将介绍我们的方法中使用的一些其他详细信息。 我们在附录A.1中介绍了训练信号退火,并在附录A.2中介绍了增强策略的详细信息。

A.1 低数据机制的训练信号退火

在半监督学习中,我们经常会遇到无标签数据量与有标签数据量差距巨大的情况。 因此,模型通常会很快过度拟合有限数量的标记数据,同时仍然欠拟合未标记数据。 为了解决这个困难,我们引入了一种新的训练技术,称为训练信号退火(TSA),它随着训练的进行逐渐释放标记示例的“训练信号”。 直观上,只有当模型对该示例的置信度低于预定义阈值(该阈值根据计划增加)时,我们才会使用带标签的示例。 具体来说,在训练步骤 t 中,如果模型对正确类别 pθ(yx) 的预测概率高于阈值 ηt,我们会从损失函数中删除该示例。 假设K是类别数,通过将ηt1K逐渐增加到1,阈值ηt作为一个上限,以防止对简单标记的示例进行过度训练。

我们考虑不同应用场景下ηt的三种递增调度。 T为训练步数,三个时间表如图5所示。 直观上,当模型容易过拟合时,例如,当问题相对简单或标记示例的数量非常有限时,exp-schedule是最合适的,因为监督信号大部分在训练结束时释放。 相反,当模型不太可能过度拟合时(例如,当我们有丰富的标记示例或模型采用有效的正则化时),日志计划可以很好地发挥作用。

Refer to caption
Refer to caption
Refer to caption
图5 TSA 的三个时间表。 我们设置ηt=αt(11K)+1K 对于对数、线性和指数计划,αt 设置为 1exp(tT5)tTexp((tT1)5)

A.2 针对不同任务的扩展增强策略

关于数据增强多样性和有效性之间权衡的讨论。 尽管最先进的数据增强方法可以生成多样化且有效的增强示例,如 2.2 节中讨论的那样,但多样性和有效性之间存在权衡,因为多样性是通过改变一部分来实现的原始示例的变化,自然会导致改变真实标签的风险。 我们发现调整数据增强方法的多样性和有效性之间的权衡是有益的。 对于文本分类,我们调整随机采样的温度。 一方面,当我们使用 0 的温度时,随机采样解码会退化为贪婪解码,并生成完全有效但相同的释义。 另一方面,当我们使用 1 的温度时,随机采样会生成非常多样化但几乎难以阅读的释义。 我们发现将 Softmax 温度设置为 0.7,0.80.9 可以获得最佳性能。

兰德增强详细信息。 在我们的 RandAugment 实现中,每个子策略都由两个操作组成,其中每个操作由特定于该操作的转换名称、概率和幅度表示。 例如,子策略可以是[(Sharpness, 0.6, 2), (Posterize, 0.3, 9)]。

对于每个操作,我们从 15 个可能的变换中随机采样一个变换,大小为 [1,10) 并将概率固定为 0.5 具体来说,我们从以下 15 转换中进行采样:反转、剪切、清晰度、自动对比度、海报化、ShearX、TranslateX、TranslateY、ShearY、旋转、均衡、对比度、颜色、曝光、亮度。 我们发现这个设置在第一次尝试中效果很好,并且没有调整幅度范围和概率。 调整这些超参数可能会进一步提高准确性。

基于 TF-IDF 的单词替换详细信息。 理想情况下,我们希望增强方法能够生成多样化且有效的示例。 因此,增强的目的是保留关键字并用其他无信息的单词替换无信息的单词。 我们使用 BERT 的单词分词器,因为 BERT 首先将句子分词为单词序列,然后将单词分词为子词,尽管该模型使用子词作为输入。

具体来说,假设IDF(w)是单词w在整个语料库上计算的IDF分数,TF(w)是单词w的TF分数用一句话来说。 我们将 TF-IDF 分数计算为 TFIDF(w)=TF(w)IDF(w) 假设句子x中的最大TF-IDF得分为C=maxiTFIDF(xi) 为了使单词被替换的概率与其 TF-IDF 分数负相关,我们将概率设置为 min(p(CTFIDF(xi))/Z,1),其中 p 是控制增强幅度的超参数Z=i(CTFIDF(xi))/|x| 是平均分。 在 DBPedia 上进行实验时,p 设置为 0.7。

当一个单词被替换时,我们从整个词汇表中采样另一个单词来替换。 直观上,采样的单词不应该是关键字,以防止更改句子的真实标签。 为了衡量一个单词是否是关键词,我们计算整个语料库中每个单词的分数。 具体来说,我们将分数计算为 S(w)=freq(w)IDF(w),其中 freq(w) 是单词 w 在整个语料库中的频率。 我们将采样单词 w 的概率设置为 (maxwS(w)S(w))/Z,其中 Z=wmaxwS(w)S(w) 是归一化项。

附录 B扩展实验

B.1 消融研究

未标记数据大小的消融研究

在这里,我们提出了一项针对未标记数据大小的消融研究。 如表6和表7所示,给定相同数量的标记示例,减少无监督示例的数量显然会导致性能变差。 事实上,拥有丰富的无监督样本比拥有更多标记样本更重要,因为减少无标记数据量会导致比减少相同比例的标记数据更差的性能。

# Unsup / # Sup 250 500 1,000 2,000 4,000
50,000 5.43 ± 0.96 4.80 ± 0.09 4.75 ± 0.10 4.73 ± 0.14 4.32 ± 0.08
20,000 11.01 ± 1.01 9.46 ± 0.14 8.57 ± 0.14 7.65 ± 0.17 7.31 ± 0.24
10,000 23.17 ± 0.71 18.43 ± 0.43 15.46 ± 0.58 12.52 ± 0.13 10.32 ± 0.20
5,000 35.41 ± 0.75 28.35 ± 0.60 22.06 ± 0.71 17.36 ± 0.15 13.19 ± 0.12
表 6: 具有不同数量的标记数据和未标记数据的 CIFAR-10 的错误率 (%)。
# Unsup / # Sup 250 500 1,000 2,000 4,000
73,257 2.72 ± 0.40 2.27 ± 0.09 2.23 ± 0.07 2.20 ± 0.06 2.28 ± 0.10
20,000 5.59 ± 0.74 4.43 ± 0.15 3.81 ± 0.11 3.86 ± 0.14 3.64 ± 0.20
10,000 17.13 ± 12.85 7.59 ± 1.01 5.76 ± 0.29 5.17 ± 0.12 5.40 ± 0.12
5,000 31.58 ± 7.39 12.66 ± 0.81 6.28 ± 0.25 8.35 ± 0.36 7.76 ± 0.28
表 7: 具有不同数量的标记数据和未标记数据的 SVHN 的错误率 (%)。

RandAugment 的消融研究

我们假设 RandAugment 的成功应归功于增强变换的多样性,因为 RandAugment 对于多个不同的数据集非常有效,同时它不需要搜索算法来找出最有效的策略。 为了验证这一假设,我们在限制 RandAugment 中可能使用的转换数量时测试 UDA 的性能。 如图6所示,随着我们使用更多的增强变换,性能逐渐提高。

Refer to caption
图6 RandAugment 中具有不同数量的可能转换的 CIFAR-10 上的 UDA 错误率。 当我们增加可能的转换数量时,UDA 实现了较低的错误率,这证明了丰富的增强转换集的重要性。

TSA 消融研究

我们研究了 TSA 对 Yelp-5 的影响,其中有 2.5k 个标记示例和 6m 个未标记示例。 我们在本研究中使用随机初始化的 Transformer 来排除具有预训练表示的因素。

如表8所示,在Yelp-5上,未标记数据远多于标记数据,TSA将错误率从50.81降低到41.35 与没有 TSA 的基线相比。 更具体地说,当我们选择将监督训练信号推迟到训练结束时释放时,可以获得最佳性能,即 exp-schedule 会带来最佳性能。

TSA schedule Yelp-5
50.81
log-schedule 49.06
linear-schedule 45.41
exp-schedule 41.35
表8 在 Yelp-5 和 CIFAR-10 上训练信号退火 (TSA) 的消融研究。 显示的数字是错误率。

B.2 有关 CIFAR-10、SVHN 和文本分类数据集的更多结果

CIFAR-10 上不同标签集大小的结果

在表9中,我们显示了图4(a)的比较方法的结果和伪标签[33]Π-模特[32],贱老师[58] 使用 50,000 个示例进行完全监督学习,无论有或没有 RandAugment,错误率分别为 4.23 和 5.36。 基线模型的性能由 MixMatch [3] 报告。

为了确保 MixMatch 报告的性能和我们的结果具有可比性,我们在代码库中重新实现 MixMatch,并发现原始论文中的结果具有可比性,但比我们的重新实现稍好一些,这使得 UDA 的比较更具竞争力。 例如,我们重新实现的 MixMatch 在 4,000 个和 2,000 个示例中实现了 7.00 ± 0.59 和 7.39 ± 0.11 的错误率。

Methods / # Sup 250 500 1,000 2,000 4,000
Pseudo-Label 49.98 ± 1.17 40.55 ± 1.70 30.91 ± 1.73 21.96 ± 0.42 16.21 ± 0.11
Π-Model 53.02 ± 2.05 41.82 ± 1.52 31.53 ± 0.98 23.07 ± 0.66 17.41 ± 0.37
Mean Teacher 47.32 ± 4.71 42.01 ± 5.86 17.32 ± 4.00 12.17 ± 0.22 10.36 ± 0.25
VAT 36.03 ± 2.82 26.11 ± 1.52 18.68 ± 0.40 14.40 ± 0.15 11.05 ± 0.31
MixMatch 11.08 ± 0.87 9.65 ± 0.94 7.75 ± 0.32 7.03 ± 0.15 6.24 ± 0.06
UDA (RandAugment) 5.43 ± 0.96 4.80 ± 0.09 4.75 ± 0.10 4.73 ± 0.14 4.32 ± 0.08
表 9: CIFAR-10 的错误率 (%)。

SVHN 上不同标签集大小的结果

在表10中,我们同样显示了图4(b)的比较方法的结果以及上述方法的结果。 使用 73,257 个示例的完全监督学习在使用或不使用 RandAugment 的情况下实现了 2.28 和 2.84 的错误率。 基线模型的性能由 MixMatch [3] 报告。 我们重新实现 MixMatch 也导致了与报告的错误率相当但更高的错误率。

Methods / # Sup 250 500 1,000 2,000 4,000
Pseudo-Label 21.16 ± 0.88 14.35 ± 0.37 10.19 ± 0.41 7.54 ± 0.27 5.71 ± 0.07
Π-Model 17.65 ± 0.27 11.44 ± 0.39 8.60 ± 0.18 6.94 ± 0.27 5.57 ± 0.14
Mean Teacher 6.45 ± 2.43 3.82 ± 0.17 3.75 ± 0.10 3.51 ± 0.09 3.39 ± 0.11
VAT 8.41 ± 1.01 7.44 ± 0.79 5.98 ± 0.21 4.85 ± 0.23 4.20 ± 0.15
MixMatch 3.78 ± 0.26 3.64 ± 0.46 3.27 ± 0.31 3.04 ± 0.13 2.89 ± 0.06
UDA (RandAugment) 2.72 ± 0.40 2.27 ± 0.09 2.23 ± 0.07 2.20 ± 0.06 2.28 ± 0.10
表 10: SVHN 的错误率 (%)。
Refer to caption
(a) IMDb
Refer to caption
(b) Yelp-2
图7 IMDb 和 Yelp-2 上不同数量的标记示例的准确性。 在大数据情况下,通过 IMDb 的完整训练集,UDA 也提供了强劲的收益。

不同标签集大小的文本分类实验

我们还在文本分类任务上尝试不同的数据大小。 如图 7 所示,UDA 在 IMDb 和 Yelp-2 上的所有标记数据大小上带来了一致的改进。

附录C理论分析证明

在这里,我们提供了定理1的完整证明。

Theorem 1

在 UDA 下,让 Pr(𝒜) 表示在给定 PL 中的 m 个标记示例的情况下,算法无法推断出新测试示例的标签的概率。 Pr(𝒜) 由下式给出

Pr(𝒜)=iPi(1Pi)m.

另外,O(k/ϵ)标记的例子可以保证O(ϵ)的错误率,即

m=O(k/ϵ)Pr(𝒜)=O(ϵ).
证明。

x 为采样测试示例。 那么事件𝒜的概率为

Pr(𝒜)=iPr(𝒜andxCi)=iPi(1Pi)m

为了限制概率,我们希望找到 iPi(1Pi)m 的最大值。我们可以定义如下优化函数:

minP ciPi(1Pi)m
s.t. ciPi=1

该问题是一个凸优化问题,我们可以构造其拉格朗日对偶函数:

=iPi(1Pi)mλ(iPi1)

使用 KKT 条件,我们可以对 Pi 求导并将其设置为零。 然后我们有

λ=(1mPi)(1Pi)m1

因此 Pi=Pj 对于任何 ij 利用 iPi=1 的事实,我们有

Pi=1k

将结果插回Pr(𝒜)=iPi(1Pi)m,我们有

Pr(𝒜)(11k)m=exp(mlog(11k))exp(mk)

因此当 m=O(kϵ) 时,我们有

Pr(𝒜)=O(ϵ)

附录 D扩展相关工作

半监督学习。 由于半监督学习 (SSL) 的悠久历史,我们建议读者参考[5]进行总体回顾。 最近,人们做出了许多努力将经典思想改造为深层神经实例。 例如,基于图的标签传播 [72] 已通过图嵌入 [62, 63] 和后来的图卷积 [28]< 扩展到神经方法/t2>. 类似地,通过变分自动编码框架和强化算法,基于经典图模型的目标变量是潜在的 SSL 方法也可以利用深层架构[27,36,64] 除了直接扩展之外,我们发现训练神经分类器将域外示例分类为附加类 [53] 在实践中效果非常好。 后来戴等人[12]表明这可以看作是低密度分离的一个实例。

除了强制噪声输入示例和隐藏表示的一致性之外,另一项研究还强制不同模型参数下的一致性,这与我们的方法是互补的。 例如,Mean Teacher [58] 维护一个教师模型,其参数是学生模型参数的集合,并强制两个模型的预测之间的一致性。 最近,fast-SWA [1] 通过鼓励模型探索一组不同的合理参数来改进 Mean Teacher。 除了参数级一致性之外,SNTG [35] 还通过构建未标记示例之间的相似性图来强制输入级一致性。

数据增强。 与我们的工作相关的还有数据增强研究领域。 除了2.1节中提到的传统方法和两种数据增强方法之外,最近的方法 MixUp [70] 超越了单个数据点的数据增强,并执行数据对的插值来达到增强的目的。 最近,有研究表明,数据增强可以被视为一种类似于 Dropout [21] 的显式正则化方法。

多样化的反向翻译。 通过反向翻译生成的各种释义一直是我们的文本分类实验中显着提高性能的关键组成部分。 我们使用随机采样而不是波束搜索来进行类似于[15]的解码。 最近还有一些关于生成不同翻译的工作[19,55,29],这些翻译在用作数据增强时可能会带来进一步的改进。

无监督表示学习。 除了半监督学习之外,无监督表示学习提供了另一种利用无监督数据的方法。 Collobert 和 Weston [8] 证明,通过语言建模学习的词嵌入可以显着提高语义角色标记的性能。 后来,词嵌入的预训练在 Word2Vec [39] 和 Glove [46] 中得到了简化和大幅扩展。 最近,使用语言建模和去噪自动编码进行预训练已被证明可以显着改进语言领域的许多任务[11,47,48,23,14] 人们对视觉自我监督学习也越来越感兴趣[69,20,59]

其他领域的一致性训练。 类似的一致性训练思想也被应用于其他领域。 例如,最近,对无监督数据实施对抗一致性也被证明有助于提高对抗鲁棒性[57,68,42,4] 事实证明,加强数据增强的一致性对于表示学习[24, 65]也很有效。 不变表示学习[34, 52]不仅将一致性损失应用于预测分布,而且应用于表示,并且已在语音识别方面显示出显着的改进。

附录E实验细节

E.1 文本分类

数据集。 在我们的半监督设置中,我们从完全监督集中随机抽取标记示例444http://bit.ly/2kRWoof, https://ai.stanford.edu/~amaas/data/sentiment/并使用相同的每个类别的示例数量。 对于未标记数据,我们使用 DBPedia 的整个训练集、IMDb 的训练集和未标记集的串联以及 Yelp-2、Yelp-5、Amazon-2 和 Amazon-5 [38] 的外部数据555https://www.kaggle.com/yelp-dataset/yelp-dataset, http://jmcauley.ucsd.edu/data/amazon/ 请注意,对于基于 Yelp 和 Amazon 的数据集,未标记集的标签分布可能与标记数据集的标签分布不匹配,因为不同类别中有不同数量的示例。 尽管如此,我们发现使用所有未标记的数据效果很好。

预处理。 我们发现序列长度是实现良好性能的重要因素。 对于所有文本分类数据集,我们将输入截断为 512 个子词,因为 BERT 是用最大序列长度 512 进行预训练的。 此外,当示例的长度大于 512 时,我们保留最后 512 个子词而不是前 512 个子词,因为保留句子的后半部分可以在 IMDb 上获得更好的性能。

针对域内无监督数据微调 BERT。 我们使用 BERT 发布的代码在域内无监督数据上构建 BERT 模型。 我们尝试使用 2e-5、5e-5 和 1e-4 的学习率,32、64 和 128 的批量大小以及 30k、100k 和 300k 的训练步数。 我们根据保留集上的 BERT 损失而不是下游任务的性能来选择微调模型。

随机初始化的 Transformer。 对于随机初始化 Transformer 的实验,我们采用 BERT 基础的超参数,只是只使用 6 个隐藏层和 8 个注意力头。 我们还将注意力和隐藏状态的丢失率提高到 0.2,当我们使用随机初始化的架构训练 UDA 时,我们在 Amazon-5 和 Yelp-5 上训练 UDA 500k 或 1M 步骤,其中我们有大量的未标记数据。

BERT 超参数。 按照常见的 BERT 微调过程,我们保持 0.1 的 dropout 率,并尝试使用 1e-5、2e-5 和 5e-5 的学习率以及 32 和 128 的批量大小。 我们还针对不同的数据大小调整了从 30 到 100k 的步数。

UDA 超参数。 在所有实验中,我们将无监督目标 λ 的权重设置为 1。 我们使用 32 的批量大小作为监督目标,因为 32 是 v3-32 Cloud TPU Pod 上的最小批量大小。 当使用 BERT 初始化 Transformer 时,我们对无监督目标使用 224 的批量大小,以便模型可以在更多未标记数据上进行训练。 我们发现,对于 BERTFINETUNE 来说,为每个未标记的示例生成一个增强示例就足够了。

本部分中的所有实验均在 v3-32 Cloud TPU Pod 上执行。

E.2半监督学习基准CIFAR-10和SVHN

Wide-ResNet-28-2 的超参数。 我们训练我们的模型 500K 步。 我们将指数移动平均线应用于衰减率为 0.9999 的参数。 我们对标记数据使用 64 的批量大小,对未标记数据使用 448 的批量大小。 softmax 温度 τ 设置为 0.4。 置信度阈值β设置为0.8。 我们使用余弦学习率衰减时间表:cos(7t8Tπ2),其中t是当前步骤,T是总步骤数。 我们使用具有nesterov动量的SGD优化器,动量超参数设置为0.9。 为了减少训练时间,我们在训练之前生成增强示例并将其转储到磁盘。 对于 CIFAR-10,我们为每个未标记的示例生成 100 个增强示例。 请注意,以在线方式生成增强示例总是比使用转储的增强示例更好或一样好,因为模型可以在不同时期看到不同的增强示例,从而产生更多样化的样本。 我们报告 10 次运行的平均性能和标准差。 本部分的实验是在 Tesla V100 GPU 上进行的。

Shake-Shake 和 PyramidNet 的超参数。 对于 Shake-Shake 的实验,我们训练 UDA 300k 步,对于监督目标使用批量大小 128,对于无监督目标使用批量大小 512。 对于 PyramidNet+ShakeDrop 的实验,我们训练 UDA 700k 步骤,并使用 64 的批量大小作为监督目标,使用 128 的批量大小作为无监督目标。 对于这两种模型,我们使用 0.03 的学习率,并使用余弦学习衰减,并在 AutoAugment 之后进行一个退火周期。 本部分的实验是在 v3-32 Cloud TPU v3 Pod 上执行的。

E.3ImageNet

10% 标记组设置。 除非另有说明,我们遵循 ResNet 开源实现中使用的标准超参数。666https://github.com/tensorflow/tpu/tree/master/models/official/resnet 对于 10% 标记集设置,我们使用批量大小为 512 的监督目标和批量无监督目标的大小为 15,360。 我们使用 0.3 的基本学习率,四次衰减 10,并将无监督目标 λ 的权重设置为 20。 我们屏蔽掉类别中最高概率小于 0.5 的未标记示例,并将 Softmax 温度设置为 0.4。 该模型经过 40k 步骤的训练。 本部分的实验是在 v3-64 Cloud TPU v3 Pod 上执行的。

完整标记集设置。 对于完整 ImageNet 的实验,我们使用 8,192 的批量大小作为监督目标,使用 16,384 的批量大小作为无监督目标。 无监督目标λ的权重设置为1。 我们使用熵最小化来锐化预测。 我们使用 1.6 的基础学习率,并将其衰减 10,进行四次。 本部分的实验是在 v3-128 Cloud TPU v3 Pod 上执行的。