用即插即用语言模型控制文本生成

用即插即用语言模型控制文本生成

这篇文章是基于即插即用语言模型:受控文本生成的一种简单方法作者:Sumanth Dathathri, Andrea Madotto, Janice Lan, Jane Hung, Eric Frank, Piero Molino, Jason Yosinski和Rosanne Liu。

变压器神经网络架构,由Vaswani等人(2017),在过去的两年中,使更大的模型和自然语言处理(NLP)取得了重大进展。在乳房,我们投资严重推进NLP技术和平台改善与客户互动,提供更快捷、更满意的支持

来自科学界的最新发现表明,在大型、无注释的语料库上训练语言模型(lm),并以一个简单的目标——根据前面的文本预测一段文本中的下一个单词——可以展示出前所未有的流畅性。lm可以生成连贯的、相关的文本,可以从头开始,也可以完成用户开始的一段文字。

例如,以前缀提示食物很难吃, LM可能会生成以下句子的貌似合理的补全(生成于预训练的GPT-2-medium模型):

食物太难吃了。工作人员既粗鲁又懒惰。的
即使按我的标准,食物也很恶心。

尽管这些模型能够对关于拼写、语法和典型语音模式的复杂知识进行编码,但它们很难操纵或控制。换句话说,虽然我们可以要求他们生成许多可能的句子或完成一个给定的句子片段,但没有简单的方法可以让他们生成具有特定属性或关于特定主题的文本。例如,如果我们想要生成的文本以相同的前缀开始,食物很难吃但之后又转向积极的方向呢?还是逐渐将生成文本的主题转变为政治?

为了暗示将要发生什么,下面是一个示例(由我们在本文中描述的模型生成),在该示例中我们请求一个积极的完成:

食物很难吃,但也有音乐,故事和魔力!
《七重复仇》是一部表演娴熟的摇滚音乐剧
将在世界各地有强大的存在。

文本从否定转变为肯定,但仍然相当连贯。雷竞技是骗人的世界各地的研究人员已经提出了多种条件文本生成的方法,包括从预先训练的LM和微调它,总是产生积极的句子从零开始训练一个大型条件模型,或者把一个句子变成一个更积极的句子用新文本替换关键字n-grams

本文讨论了受控文本生成的另一种方法,标题为即插即用语言模型(PPLM),在最近的一篇论文从超级人工智能。PPLM允许用户灵活地将一个或多个表示所需控制目标的简单属性模型插入到大型的、无条件的LM中。该方法有一个关键属性,即它按原样使用LM- - - - - -不需要培训或微调——这使研究人员能够利用一流的lm,即使他们没有雷竞技是骗人的广泛的硬件需要训练他们。

我们释放代码陪同我们的论文,以及在线演示的PPLM,与拥抱的脸(创造者用变压器变形金刚存储库)。中提供了十几个属性模型演示自己试试吧!

如何驾驭一头猛犸象

图1所示。如何驾驭猛犸象。在PPLM中使用的许多属性模型比语言模型(LM)小100,000倍,大致相当于一只田鼠与一头长毛猛犸象的重量比。PPLM方法是即插即用的:它可以结合任何生成神经语言模型(mammoth)和任何可区分属性模型(mouse)来表示所需的指导目标。它还具有资源效率:LM是按原样使用的,无需训练或更新任何重量(毕竟猛犸象很难训练)。

最大的、最有能力的语言模型是巨大的(例如,超过10亿个参数),需要大量的计算资源(例如,培训一个模特61000美元),并且必须在大量的数据集上进行训练公开发布即使训练代码是可用的。在很多方面,语言模型就像聪明但没有被引导的长毛猛犸象,它喜欢在哪里走动就在哪里走动。

结果是,除了装备最好的机器学习研究人员和世界各地的从业者之外,所有的机器学习研究人员和从业者都必须在三种不受欢迎的选择中做出雷竞技是骗人的选择:使用大型的、公开的预训练模型(这可能不完全适合他们的任务),在更小的数据集上微调预训练的大型模型(这可能破坏他们的建模能力通过灾难性的忘记),训练的模型远小于他们的预算所能提供的最先进水平。

幸运的是,Uber AI的即插即用语言模型允许研究人员利用少数预先训练过的模型:而不是要求每个人都训练自己的庞大的模型雷竞技是骗人的,PPLM让用户将小属性模型与LM结合起来,以引导其生成。属性模型可以比LM小100,000倍,但仍然可以有效地操纵它,就像坐在我们的长毛猛犸象朋友身上的老鼠,告诉它去哪里(图1)。

老鼠用渐变法告诉猛犸象该去哪里。要理解这个过程是如何运作的,我们需要一点数学知识。

一点数学知识

为了理解PPLM是如何工作的,我们首先考虑几个分布和模型。

首先是无条件的LMp (x),在所有文本上的概率分布。这是由GPT-2这样的无条件lm建模的分布,GPT-2是我们在上面的图1中的庞然大物。它是通用的,可以生成关于广泛主题的流畅文本。

第二,有p (x |),这是我们想要创建的条件LM。这是一个假设的模型,给定一个属性一个,生成具有这些属性的句子(如上面的积极情绪的例子)。

第三,有一个属性模型p (x |),这需要一句话x并输出它拥有该属性的概率一个.这个模型可能会判断一个句子有10%的可能性含有积极情绪,或者有85%的可能性是关于政治的。这些模型可能很小,也很容易训练,因为从直觉上看,识别积极因素比正面因素容易,识别政治言论比撰写政治言论容易;当识别是在预先训练的LM提供的表示上学习时,这是特别正确的,如中所示Radford等人(2019).如下所示,仅包含4000个参数的单层属性模型在识别属性和指导生成方面表现良好。

幸运的是,使用贝叶斯法则,我们可以根据第一个和第三个模型写出第二个模型:

p (x |)p (x |) p (x)。

虽然这让我们可以很容易地评估概率(这个句子看起来像我们期望的肯定句吗?),很难从中抽样。尝试通常的怀疑-拒绝抽样或重要性抽样,例如使用p (x)作为一个建议——在理论上可行,但在实践中要么会有偏见,要么会花很长时间。生成一个关于政治的句子的过程大致可以这样进行:(第一步)生成一个句子xp (x),(第二步)给p (x |)如果不是,请转到(1)。不幸的是,随机生成一个关于政治的句子可能要花费指数级的时间,因为有太多其他的话题要谈论,就像要花上亿万年猴子随机输入来制作莎士比亚的作品,因为还有很多其他的页面可以打印。

PPLM通过近似实现更有效的metropolis调整Langevin采样器来解决这个问题罗伯茨和Tweedie (1996)对神经网络的实现Nguyen等人(2016)即插即用生成网络(PPGN)模型。在这种情况下,PPLM算法需要三个简单的步骤来生成样本:

    • 给定一个部分生成的句子,计算日志(p (x))而且日志(p (| x))以及它们相对于底层语言模型的隐藏表示的梯度。使用这两个模型的有效正向和向后传递,都可以获得这些量。
    • 使用梯度可以将语言模型的隐藏表示向递增的方向移动一小步日志(p (| x))和增加日志(p (x))
    • 抽样下一个单词。

直观地说,当PPLM每次生成一个标记时,它会不断地将文本表示转向更可能具有所需属性的方向——高属性日志(p (| x))——同时在原始语言模式下仍然保持流畅日志(p (x))

在我们演示PPLM时,我们想要注意一些细节。首先,PPLM控制方案是可调的:更新的强度可以增加或减少,在强度极限为零的情况下,恢复原来的LM。其次,pplm假设基本语言模型是自回归的,这是许多现代LMs的情况。事实上,如果LM是基于变压器的,上述算法可以有效地实现,因为未来只依赖于过去的变压器的过去键和值,而不是它的任何其他激活,所以这些是每一步都必须更新和向前推进的唯一张量。第三,与ppgn相比,本研究中采样器的实现方式有一些重要的区别雷竞技是骗人的Nguyen等人(2016)或大都会调整朗之万采样器罗伯茨和Tweedie (1996);一定要看看我们的论文全文如果你对这个讨论感兴趣的话。最后,在本研究中,我们着重于使用雷竞技是骗人的GPT-2 345M参数模型作为基础LM,尽管任何其他自回归模型都可以被替代。

可视化PPLM抽样

上面描述的PPLM采样算法需要通过由两个子网络(基本LM和属性模型)组成的网络向前和向后传递,如图2所示:

图2。用于受控文本生成的PPLM方法可以分解为三个步骤,如上所示并在本文中进行了描述。

第1步,通过语言模型向前传递,使用预测的属性模型计算所需属性的可能性p (x |).在步骤2中,基于属性模型的梯度,向后传递更新LM的内部潜在表示,以增加生成的通道具有所需属性的可能性。在潜伏更新之后,在第3步,根据更新潜在词的分布生成词汇表上的新分布,并采样单个标记或单词。这个过程在每个时间步中重复,LM潜变量表示过去(对于变压器:过去的键和值)在每个时间步中被重复修改(参见第3.2节)我们的论文更多的细节)。

除了转向生成的文本使用梯度从一个特定p (x |)属性模型,文本必须由p (x)从一个基本的LM。正如上面提到的贝叶斯规则,并在我们的论文,如果没有LM也向高似然的方向采取梯度步骤,语言退化;例如,只优化正性而不优化LM似然,就会产生“伟大伟大伟大伟大”这样的字符串。因此,我们使用未修改的语言模型来确保语言的流畅性保持在或接近原始语言模型的水平(在本例中为GPT-2-medium)。我们有两种方法来做到这一点:首先,采取措施使Kullback-Leibler(吉隆坡)散度修改后和未修改的语言模型之间的输出分布,二是通过执行后范数融合(引入Stahlberget al . (2018))之间的修改和未修改的下一个词分布。通过这两个因素,生成的文本保持在高p (x)的第3.3节所述我们的论文如图3所示:

图3。在生成PPLM样本的过程中,为什么必须采取步骤最大化p(a|x)和p(x) ?考虑中的句子显示为一个黑点,它首先向p(a|x)的最大化方向推进,然后向p(x)的最大化方向推进。在实践中,不是两个单独的步骤,而是结合这两项的梯度来计算对应于净位移的单步。

属性模型

现在我们已经解决了PPLM背后的方法和数学问题,让我们看看使用不同的属性模型可以生成什么样本!

Bag-of-words

最简单的属性模型(p (| x))我们认为是一个代表一个主题的单词包(BoW),其中的可能性是由包中每个单词的可能性之和给出的。例如,一个BoW表示主题空间可能包含“行星”、“星系”、“空间”和“宇宙”等词。我们用PPLM-BoW指的是属性模型为BoW的PPLM控制生成方法。在下面的表1中,我们展示了该主题下的PPLM-BoW示例(空间)与几个前缀。在每个示例中,文本都与主题相关且流畅。

表1。PPLM-BoW样品下(空间)主题,用不同的前缀生成。袋子里的单词用鲜艳的颜色突出显示,相关单词(由人判断)用柔和的颜色突出显示。最后两个例子的条件是相同的主题和前缀,不同的样本显示了PPLM抽样产生的文本的多样性。

我们可以转到其他话题,比如(军事)而且(科学),如表2所示,均有相同的前缀。这里我们看到,增加在袋子中生成单词的概率也增加了生成不在BoW中的相关主题单词的概率(例如,在(科学)示例如下所示,请注意“问题”和“哲学家在第一个BoW单词之前采样,"法律”)。这是因为连贯地转移潜在者可以使话题朝着预期的方向转移;稍后我们将看到,这比直接提升所需的关键字集效果更好。

表2:来自基线LM、GPT-2(上行)和PPLM-BoW(其他行)的样本对应于不同的主题(如科学),所有样本都以单个前缀为条件:集中的问题

最后,我们会使用一些不自然的前缀,这些前缀在句子的开头完全不接近预定的主题,例如,把“the chicken”变成(政治),如表3所示。我们观察到,即使使用奇数句开头,PPLM也能够有效地引导生成。

表3。PPLM-BoW样品导向(政治)以不一致的前缀开头的主题。在这些示例中,为了在奇数前缀的情况下仍能产生效果,我们使用了三倍于生成其他样本时使用的常规步长。一些样本(最后)通过重复关键字开始退化。

我们向人类评估人员展示了数千个pplm生成的样本,并请他们标记出与每个主题相关的样本,并判断每个样本的流畅性。下面的图4显示了GPT-2基线(B)的人类评估主题相关性(百分比),这是一个通过属性模型(BR)重新排序的基线,和两个PPLM变体:应用于具有(BCR)和不具有(BC)排名的潜在者的梯度。

图4:消融研究PPLM对基于BoW的主题受控语言生成的影响。在上图中,“B”对应于预先训练GPT-2 LM的代(345M参数);“BR”对应于用预训练的GPT-2 LM生成多个样本,然后选择最大化的一个 p (x |); “BC”对应于用预训练的GPT-2 LM生成,并更新潜伏期;“BCR”是指用修饰过的电位生成多个BC样本,然后选择哪个最大化 p (x |)

我们还执行了全面的自动化评估,并与替代基线进行了比较,例如加权解码而且CTRL;见《香港法例》第4条我们的论文本实验的评价方法和结果的完整描述。我们发现,PPLM明显优于加权解码(WD),略微优于CTRL,同时在WD和CTRL方面也相当流畅(注意,CTRL使用更大的LM模型,其参数是本文使用的GPT-2基础LM的四倍多)。

简单的鉴别器

虽然BoW是一种表示主题属性的简单而直观的方法,但有些属性则比较难以表达;例如,积极情绪和消极情绪。虽然句子的情感在某种程度上可以通过某些词的存在来体现,但句子真正的情感远不止于词的存在。

在这些场景中,我们可以使用在标记了所需属性的数据集上训练的鉴别器来表示属性。这种类型的模型称为pplm - discriminm,使用单层分类器属性模型,从原始LM模型中提取的嵌入表示的平均值预测目标标签。该层中的参数数量可以为5,000或更低,这与LM本身中的参数数量相比可以忽略不计。

在下面的表4所示的例子中,我们使用一个情感鉴别器,它具有5K个参数(每个类1025个参数)SST-5数据集引导文本产生积极和消极的情绪:

表4。由基线GPT-2、pplm - discriminm正向转向和pplm - discriminm负向转向生成的三联句样本均以前缀“The chicken”为条件。与情绪相关的单词(由人类判断)被突出显示。

与之前一样,我们对四个变体进行消融研究:“B”、“BR”、“BC”和“BCR”。下图5为消融研究结果:

图5。研究了pplm - discriminem在引导语言生成期望情感和风格方面的作用' B ', ' BR ', ' BC '和' BCR '如图4所示。

此外,我们比较了PPLM与基线:加权解码,CTRL (凯斯卡尔等人,2019年)及GPT2-FT-RL (齐格勒等人,2019年),这是一个被微调为积极的LM。我们发现PPLM明显优于加权解码和GPT2-FT-RL,而与CTRL相比(见第4节)我们的论文).

多属性模型

我们可以在受控生成中结合多个属性模型,例如,将多个bow与鉴别器结合在一起。例如,我们可以控制生成一个混合的主题冬天,政治而且厨房,而将积极的,如表6所示。(我们在。中提供更多这样的例子我们的论文)。

表5所示。使用多个属性模型控制文本生成。每个属性模型都用特定的颜色标注,相关的单词用相应的颜色高亮显示。虽然表达了多个主题,但由于模型努力合并主题,文章的连贯性似乎有所下降。

引导有偏见的语言模型远离有毒的言语

PPLM架构固有的灵活性允许人们使用任何可区分的属性模型,无论该模型检测到的是更简单的属性(如积极或消极),还是更微妙但具有社会意义的概念(如偏见或攻击性言论)。我们接下来考虑这个应用程序。

有人注意到,使用大量互联网数据进行训练的lm可以反映出其训练数据中存在的偏见和毒性。华莱士等人(2019)演示了使用对抗性攻击可以使GPT-2产生种族主义输出,当给出一个精心优化的触发器字符串作为前缀时。如果没有解决方案,这个不幸的属性将限制可以安全部署lm的场景。

幸运的是,通过插入毒性分类器作为属性模型并使用梯度。我们进行了一项测试,在测试中,自愿的人类评估者标记了500个由PPLM产生的解毒文本样本和GPT-2基线的毒性,使用十个不同的对抗性触发器作为前缀。平均而言,产生有毒言论的比例从63.6%下降到4.6%。的4.4节讨论了进一步的数值结果我们的论文;我们选择省略所有样本,因为我们认为发表特定样本对科学界的好处相对于某些样本可能造成的冒犯来说微不足道。

虽然我们很高兴PPLM能够在这种情况下减少毒性,但仍有很多工作要做,以进一步防止模型产生毒性,并更广泛地确保模型的使用与它们的设计者的意图一致。

受控语言模型的伦理

最近有实质性的讨论围绕有能力的语言模型的伦理,包括它们再现有问题的社会偏见的潜力,以及它们被直接滥用造成社会伤害(例如,产生虚假信息)的可能性。虽然我们研究的一个目的是提出一种机制来为语雷竞技是骗人的言模型解毒,但我们也承认,几乎相同的机制可以被利用来创造更多有毒的语言。这种可能性是机器学习等通用技术固有的,我们相信总的来说,这项工作通过推进对模型功能、属性和当前模型面临的风险的潜在解决方案的讨论,创造了净积极的结果。

前进

通过这项研究,我们引雷竞技是骗人的入了PPLM,这是一种用于受控语言生成的动态可配置方法,它允许将一个大型的、预先训练的语言模型与一个或多个BoW模型、微小鉴别器或其他属性模型灵活组合。PPLM实现了主题和情绪等属性的细粒度控制,同时保持流畅性,所有这些都不需要LM的再培训或微调。

PPLM可以被认为是一种用于翻转的通用机器文学评论家模型p (x |)可以判断阅读文本的价值作者模型p (x |)可以写出类似有价值的东西。从这个意义上说,PPLM的机制是相当通用的,允许使用任何可微属性模型,这将使不同的和创造性的应用程序超越这里给出的例子。

如果您有兴趣了解更多关于工作的知识,请查看我们的代码(独立的代码/在拥抱脸/变压器代码,玩互动演示Colab,请阅读我们的,并告诉我们您的发现!

确认

本文中的艺术品由Eric Frank和Colan Chen创作。我们要感谢Uber的所有注释人员,他们提供了可靠的人工评估,Joel Lehman与我们讨论了这项工作的伦理含义,Molly Vorwerck为我们提供了不懈的编辑帮助,Uber AI的Deep Collective研究小组成员对这项工作的早期草稿进行了有益的讨论、想法、反馈和评论。雷竞技是骗人的

我们也要感谢Julien Chaumond, Lysandre出道,Thomas Wolf和整个拥抱脸团队与我们一起制作了PPLM演示,并帮助我们将代码集成到他们的变形金刚库,并感谢Bryan McCann (Salesforce Research)在CTRL基雷竞技是骗人的线方面的帮助。

评论
前一篇文章 Uber Eats的食物发现:使用图形学习增强推荐
下一篇文章 利用分布式XGBoost在Uber上训练具有大数据集的深度树模型
罗赞刘
Rosanne是一名高级研究科学家,也是雷竞技是骗人的Uber AI的创始成员。她在西北大学获得了计算机科学博士学位,在那里她使用神经网络来帮助发现新材料。她目前正在研究机器学习和神经网络的多个神秘领域。她试图在业余时间写作。
Sumanth Dathathri
Sumanth Dathathri目前是加州理工学院的一名研究生,他对控制理论、形式化方法和机器学习的交叉问题感兴趣。他是2019年夏季Uber AI的实习生,探索语言处理。
安德里亚Madotto
Andrea Madotto是香港科技大学电子与计算机工程专业的三年级博士生,他是2019年Uber AI的暑期实习生。他致力于自然语言理解和对话AI。
皮耶罗Molino
皮耶罗是斯坦福大学朦胧研究小组的一雷竞技是骗人的名专职研究科学家。他是Uber AI的前创始成员,在那里他创建了Ludwig,从事应用项目(COTA, Uber Eats的图形学习,Uber的对话系统),并发表了关于NLP,对话,可视化,图形学习,强化学习和计算机视觉的研究。雷竞技是骗人的
杰森Yosinski
Jason Yosinski是Uber AI实验室的创始成员,也是Deep Collective研究小组的负责人。雷竞技是骗人的他因对理解神经网络建模、表示和训练的贡献而闻名。在加入Uber之前,Jason在加州理工学院从事机器人研究,与人共同创立了两家网络公司,并在洛杉矶的中学启动了一个机器人项目,目前该项目为500多名学生服务。他在康奈尔创新机器实验室、蒙特利尔大学、喷气推进实验室和DeepMind完成了他的博士学位。他是美国宇航局空间技术研究奖学金的获得者,参与撰写了50多篇论文和专利,并担任Uber收购的几雷竞技是骗人的何智能(Geometric Intelligence)的ML副总裁。他的作品被NPR、BBC、连线、经济学人、科学和纽约时报报道过。在他的空闲时间,杰森喜欢做饭,阅读,滑翔伞,假装他是一个艺术家。

没有可显示的帖子