- +1
模型听人讲几句就能学得更好?斯坦福提出用语言解释辅助学习
选自Stanford AI Lab Blog
作者:Jesse Mu、Shikhar Murty
机器之心编译
编辑:Panda
语言是人与人之间最自然的沟通方式,能帮助我们传递很多重要的信息。斯坦福大学人工智能实验室(SAIL)近日发表博客,介绍了其两篇 ACL 2020 论文。这两项研究立足于近段时间 BERT 等神经语言模型的突破性成果,指出了一个颇具潜力的新方向:使用语言解释来辅助学习 NLP 乃至计算机视觉领域的任务。
想象一下:如果你是一位机器学习从业者并想要解决某个分类问题,比如将彩色方块群分类为 1 或 0。你通常会这样做:收集一个包含大量样本的数据集,标注数据,然后训练一个分类器。

只需一个短语「at least 2 red squares(至少两个红方块)」,我们就能归纳上面的整个数据集,而且效率要高得多。
语言是人类学习的一大关键媒介:我们使用语言来传递关于这个世界的信念、教育他人以及描述难以直接体验的事物。因此,对监督式机器学习模型而言,语言理应是一种简单且有效的方法。但是,过去基于语言的学习方法都难以扩展到现代深度学习系统致力于解决的一般任务,而这些领域使用的语言形式往往很自由。
今年斯坦福大学 AI 实验室(SAIL)的两篇 ACL 2020 论文在这一研究方向上取得了一些进展:针对自然语言处理(NLP)和计算机视觉领域的多种高难度任务,他们首先用语言解释这些任务,然后使用深度神经网络模型来学习这些语言解释,进而帮助解决这些任务。
ExpBERT: Representation Engineering with Natural Language Explanations
Shaping Visual Representations with Language for Few-shot Classification
难在哪里?
对人类而言,语言是一种教授他人的直观媒介,但为何使用语言来执行机器学习会这么难?
主要的难题也是最基本的问题:在其它输入的语境中理解语言解释。光是构建能够理解丰富和模糊语言的模型就已经很难了,而构建能将语言与周围世界关联起来的模型还要更难。举个例子,给定解释「at least 2 red squares(至少两个红方块)」,模型不仅要理解什么是「red(红)」和「squares(方块)」,还要理解它们如何指代了输入的特定部分(通常很复杂)。
过去一些研究依靠语义解析器来将自然语言陈述(比如 at least 2 red squares)转换为形式化的逻辑表征(比如 Count(Square AND Red) > 2))。如果我们可以轻松地通过执行这些逻辑公式来检查解释是否适用于输入,则可以将解释用作特征来训练模型。但是,语义解析器仅对简单的领域有效,因为简单我们才能人工设计可能见到语言解释的逻辑语法。它们难以处理更丰富和更模糊的语言,也难以扩展用于更复杂的输入,比如图像。
幸运的是,BERT 等现代深度神经语言模型已经显现出解决多项语言理解任务的潜力。因此,SAIL 在这两篇论文中提出使用神经语言模型来缓解这些基本问题。这些神经语言模型或以确定相关领域内语言解释为目标,或使用了可以解读语言解释的通用型「知识」来进行预训练。下面将详细地介绍这些神经语言模型,看它们如何能在更富挑战性的任务设置中学习更丰富且更多样化的语言。
ExpBERT:使用自然语言解释来设计和创建表征

第一篇论文研究了如何使用语言解释来构建文本分类器。首先来看一个关系提取任务:模型需要根据一小段文本识别其中提到的两个人是否已经结婚。尽管当前最佳的 NLP 模型有可能仅基于数据来解决这一任务,但人类还能通过语言描述来暗示两人是否已经结婚,比如度蜜月的人通常是已婚的。这样的语言解释能用于训练更好的分类器吗?

但创建这样的特征需要某种解释解读机制(explanation interpretation mechanism),这样模型才能知道对输入的解释是否为真。语义解析器就是这样一种工具:给定「A 和 B 正在度蜜月」,我们可以将这个解释解析成一种逻辑形式,即当分析一个输入时,如果在提到 A 和 B 时还提到了「蜜月」,则返回 1。但如果解释更模糊呢?比如「A 和 B 很恩爱」。我们如何解析它?

SAIL 提出的 ExpBERT 模型使用了针对文本蕴涵任务训练的 BERT 模型,但研究者为其设定的训练目标是识别任务段落里是否蕴涵一个解释。BERT 在这一过程中输出的特征可替代上述语义解析器提供的指示特征。


使用语言为少次分类任务塑造视觉表征

上文描述的研究使用自然语言解释来帮助解决单个任务,比如识别婚姻状况。但是,认知科学领域的研究表明:语言还能让我们获取正确的特征和抽象概念,进而帮助我们解决未来的任务。例如,能说明 A 和 B 已婚的语言解释还能说明其它一些对人类关系而言非常重要的概念:孩子、女儿、蜜月等等。知道这些额外概念不仅有助于识别已婚夫妇,还有助于帮助识别其它关系,比如兄弟姐妹、父母等。
在机器学习中,我们可能会问:如果我们最终希望解决的新任务没有提供语言说明,语言如何为高难度且未指明的领域提供恰当的特征?SAIL 的第二篇论文便探索了这一任务设置,这个任务的难度更大:语言能否提升跨模态(这里是视觉)的表征学习?
具体来说,该研究重点关注的是少次视觉推理任务,比如下面这个来自 ShapeWorld 数据集的例子:

SAIL 的研究者将该任务放到了一个元学习任务框架中:他们没有在单个任务上训练和测试模型,而是选择了在一组任务上训练模型,其中每个任务都有一个小型训练集和配套的语言描述(元训练集 / meta-train set)。然后,他们在一组未见过任务组成的元测试集(meta-test set)上测试模型的泛化能力,并且该测试集没有可用的语言描述。


从效果上看,可以说这是训练模型在训练期间表征概念时「把想法大声说出来」。在测试阶段,则可以直接抛弃 RNN 解码器,使用这个「经过语言塑造的」图像嵌入按常规方式执行分类即可。
研究者使用真实图像和人类语言,在上述 ShapeWorld 数据集以及更真实的 Birds 数据集上进行了测试:


展望未来
正如 NLP 系统理解和生成语言的能力在日益增长一样,机器学习系统基于语言学习解决其它高难度任务的潜力也在增长。SAIL 的这两篇论文表明,在视觉与 NLP 领域的多种不同类型任务上,通过学习语言解释,深度神经语言模型可成功提升泛化能力。
研究者指出,这是训练机器学习模型方面一个激动人心的新途径,而且强化学习等领域已经对一些类似的想法进行了探索。在他们的设想中,未来在解决机器学习任务时,我们无需再收集大量有标注数据集,而是可以通过人与人之间使用了成千上万年的互动方式——「语言」来与模型进行自然且富有表达力的交互。
原文链接:https://ai.stanford.edu/blog/learning-from-language/
2020 NeurIPS MeetUp
12月6日北京,机器之心将举办2020 NeurIPS MeetUp。活动设置4个Keynote、 12篇论文报告与30个Poster,邀请顶级专家、论文作者与现场参会观众共同交流。
原标题:《模型听人讲几句就能学得更好?斯坦福提出用语言解释辅助学习》
本文为澎湃号作者或机构在澎湃新闻上传并发布,仅代表该作者或机构观点,不代表澎湃新闻的观点或立场,澎湃新闻仅提供信息发布平台。申请澎湃号请用电脑访问http://renzheng.thepaper.cn。





- 报料热线: 021-962866
- 报料邮箱: news@thepaper.cn
互联网新闻信息服务许可证:31120170006
增值电信业务经营许可证:沪B2-2017116
© 2014-2025 上海东方报业有限公司




