预训练成为克服这些缺点的另一种有效范式,其中模型首先使用容易获得的数据进行训练,然后使用比监督学习少得多的标记数据来解决感兴趣的下游任务。使用未标记数据进行预训练,即自监督学习,尤其具有革命性,在不同领域都取得了成功:文本、视觉、语音等。这提出了一个有趣且具有挑战性的问题:为什么对未标记数据进行预训练有助于看似无关的下游任务?论文地址:https://dataspace.princeton.edu/handle/88435/dsp01t435gh21h本文介绍的工作提出并建立了一个理论框架来研究为什么自监督学习对下游任务有益。该框架适用于对比学习、自回归语言建模和基于自我预测的方法。该框架的核心思想是预训练有助于学习数据的低维表示,随后有助于用线性分类器解决感兴趣的下游任务,需要较少的标记数据。一个共同的主题是将未标记数据分布的理想属性形式化,以构建自监督学习任务。通过适当的形式化,可以证明近似最小化正确的预训练目标可以提取在未标记数据分布中隐式编码的下游信号。最后,我们表明可以使用线性分类器从学习的表示中解码该信号,从而为跨任务的“技能和知识”转移提供形式化。简介在过去十年中,机器学习和人工智能领域在寻求设计代理和数据驱动的问题解决方面取得了巨大进步。继ImageNet[Dengetal.,2009]等具有挑战性的监督学习基准取得初步成功之后,深度学习的创新随后催生了在不同领域的许多此类基准上具有超人性能的模型。训练这种针对特定任务的模型当然令人印象深刻,并且具有巨大的实用价值。然而,它有一个重要的局限性,即需要大量标记或标记的数据集,而这些数据集通常很昂贵。此外,从智能的角度来看,人们希望有更通用的模型,像人类一样[AhnandBrewer,1993],可以从以前的经验中学习,将它们总结成技能或概念,并使用这些技能或概念来解决很少或根本没有演示的新任务。毕竟,婴儿在没有明确监督的情况下通过观察和互动学到了很多东西。这些限制激发了预训练的另一种范式。本文的重点是使用通常大量可用的未标记数据进行预训练。使用未标记数据的想法在机器学习中一直很有趣,尤其是通过无监督和半监督学习。使用深度学习对其进行的现代改编通常称为自我监督学习(SSL),并且已经开始通过对比学习和语言建模等思想改变机器学习和人工智能的面貌。自监督学习的思想是只使用未标记的数据来构建某些任务,并训练模型在构建的任务上表现良好。此类任务通常需要模型通过预测观察或保留部分的输入的未观察或隐藏部分(或属性)来编码数据的结构属性[LeCun和Misra,2021]。自监督学习在许多感兴趣的下游任务上显示出通用性和实用性,通常比从头开始解决任务具有更好的样本效率,使我们离通用代理的目标更近了一步。事实上,最近,像GPT-3[Brownetal.,2020]这样的大型语言模型在规模上展示了迷人的“爆发行为”,引发了人们对自我监督预训练想法的更多兴趣。尽管自我监督学习在经验上取得了成功并继续显示出巨大的希望,但仍然缺乏对其如何超越粗略直觉的良好理论理解。这些令人印象深刻的成功引发了有趣的问题,因为先验地不清楚为什么在一项任务上训练的模型应该有助于另一项看似无关的任务,即为什么任务a的训练应该有助于任务b。虽然对SSL(以及一般的深度学习)的完整理论理解具有挑战性且难以捉摸,但在任何抽象级别理解这种现象可能有助于开发更有原则的算法。本文的研究动机是:为什么对自监督学习任务(使用大量未标记数据)进行训练有助于解决数据稀缺的下游任务?如何规范“知识和技能”的转移?尽管有大量关于监督学习的文献,但从SSL任务→下游任务的泛化与监督学习中从训练集→测试集的泛化有着根本的不同。对于分类下游任务的监督学习,例如,在从未知分布采样的输入标签对训练集上训练的模型可以直接在从相同分布采样的未见过的测试集上进行评估。这种底层分布建立了从训练集到测试集的链接。然而,SSL任务→下游任务的概念联系不太清楚,因为SSL任务中使用的未标记数据没有关于下游标签的明确信号。这意味着在SSL任务上预训练的模型(例如,从其余部分预测输入的一部分)不能直接用于下游任务(例如,从输入预测类标签)。因此,“知识和技能”的转移需要使用一些标记数据的额外训练步骤,理想情况下少于从头开始的监督学习所需的训练步骤。任何对SSL任务→下游任务泛化的理论理解都需要解决这些问题:“未标记数据的内在作用是什么?”和“如何将预训练模型用于下游任务?”未标记数据做出分布假设并利用表示学习的思想来研究这些问题:(a)(分布假设)未标记数据分布隐式包含有关感兴趣的下游分类任务的信息。(b)(表示学习)在适当的SSL任务上预训练的模型可以通过学习的表示对该信号进行编码,然后可以将其用于使用线性分类器解决下游分类任务。(a)点表明,一些未标记的结构属性隐式为我们提供了有关后续下游任务的提示,而自我监督学习可以帮助从数据中梳理出这一信号。(b)点提出了一种简单且经验有效的方法来使用预训练模型,利用模型的学习表征。本文识别并在数学上量化了未标记数据的分布特性,这些数据可以被证明可以为不同的SSL方法(例如对比学习、语言建模和自我预测)学习良好的表示。在下一节中,我们将深入研究表示学习的思想,并形式化说明为什么自监督学习有助于下游任务。
