摘要
近年来,从结构化数据生成文本的方法有了长足的进步,这主要归功于在大型数据集上对预先训练好的语言模型进行微调。然而,这些模型可能无法生成忠实于输入数据的输出结果,尤其是在域外数据上。对于特定领域来说,通常无法获得足够的注释数据,因此本文需要寻求一种无监督的方法来提高输出文本的忠实性。
由于问题的根本在于结构化数据和文本表征之间的一致性,本文在这项工作中评估了循环训练的有效性。循环训练使用两个互为逆变的模型:一个模型从结构化数据生成文本,另一个模型从自然语言文本生成结构化数据。本文的研究表明,在 WebNLG、E2E、WTQ 和 WSQL 数据集的数据到文本生成任务中,循环训练在使用少量监督数据(在本文的案例中为 100 个样本)进行初始化时,可获得与完全监督方法几乎相同的性能。
本文利用自动评估指标和新设计的人工评估模式进行了广泛的实证分析,以揭示不同循环训练策略在减少各类生成错误方面的有效性。
引言
大量信息(如电影信息数据库或产品目录)以结构化知识的形式存在,为了充分利用这些数据到各种任务中,本文希望将这些信息阐述化。现阶段有研究人员利用免费公开的数据来解决这种数据到文本的生成任务。然而,仍然存在两大挑战。
1 要实现良好的性能,所需的训练数据量非常大,尤其是在现有语料库不能包含的领域。
2 从结构化数据中自然语言生成(NLG)往往会产生多种错误,从而限制了这些模型在面向客户的应用中的实用性。当NLG 模型在生成的输出文本时注入与输入结构化数据无关的无意义词语或信息就会产生幻觉。
为了在数据转文本的过程中解决这些问题,一般有两条研究思路:
1 设计能直接生成更忠实于输入数据的输出的模型。
2 设计在输出文本生成后检测并纠正事实错误或幻觉的模型。
针对这两种情况,先前的研究一般都假定有足够多的结构化数据和文本对作为训练数据,从而在任务中达到相持与人类水平的性能。由于它们一般都是在 100,000 个或更多实例的大型语料库中训练出来的,虽然在域内数据,事实验证模型可以达到很高的性能,却在域外数据上下降,这对事实验证模型来说是一个很大的限制。同样,像 WebNLG 这样的语料库包含约 20,000 个示例;这可能太小,即使在完全监督下也无法达到人类性能,但其规模足以使生成 WebNLG 规模的特定领域语料。尽管存在上述事实,但很少有为数据到文本和表到文本任务模型针对数据和相应文本之间的一致性出发而开发模型。
本文从克服缺乏训练数据(尤其是域外数据)和结构化数据与文本之间需要一致性两方面出发,采用了循环训练法。主要思想为:用主谓宾三元组形式的无配对数据 D 和不一定来自同一领域文本 T。还用一小组(100 个样本)配对数据Dpr和文本Tpr,用来循环训练两个反复训练的模型(正向模型 F:D → T,反向模型 R:T → D)。训练是无监督的,即冻结一个模型,用它来解码一组输入,用来训练另一个模型,之后用新的模型反向预测第一个模型输入。具体来说,在一个循环中,本文冻结 F,并通过将输入 D 重构为 R(F(D))来训练 R。一个训练周期后,本文将两个模型的角色互换。值得注意的是,正如本文将要展示的那样,即使最初的模型很差,也能收敛到接近监督性能的模型。此外,本文还证明,即使配对数据很少或根本没有,这一过程也能确保输出文本忠实于输入数据,反之亦然。
此外,本文还详细研究循环训练的有效条件,重点关注领域以及训练文本和结构化数据的性质。发现,无监督循环训练的效果优于低资源微调模型,而且在使用少量注释数据进行初始化和后期调整时,可以达到接近完全监督的效果。
本文主要贡献:
1、仅使用一个预先训练的语言模型 T5,就成功地将循环训练应用于数据到文本和文本到数据模型,而无需使用图方法或其他辅助模型。
2、证明了循环训练在某些领域的性能几乎与监督模型相同。
3、对循环训练效果良好的条件以及不同类型生成错误下数据到文本的忠实性进行了广泛的实证分析。
4、设计了一种新颖的基于计数和排名的注释模式,以便从正确性、忠实性、数据覆盖率和流畅性等角度更全面地评估生成文本的忠实性。本文采用的方案在客观性、一致性、精确性和易评估性方面改进了WebNLG 2020 挑战赛使用的基于评级的方案。
相关研究
与以往研究主要由维基百科等通用来源的数据为基础,模型已在大规模表对文语料库上进行了训练,以执行事实验证。然而,这些模型在它们没有训练过的特定领域的表现可能不理想。有些研究尝试使用 GPT-3 来增加训练数据,而另一些则使用信息检索系统来建立生成原型。本文直接利用了目标语料库的未配对基础数据和文本,而无需借助任何额外的信息检索或生成系统。此外,以往研究数据到文本的任务主要是通过 BLEU或 METEOR等单词或语法级别的自动指标进行评估,对忠实度的评估很少(而且大多是主观的)。本文中设计了一种新颖的评估模式来对生成文本对输入数据的忠实度进行更全面的评估。
循环训练依赖于两个模型,这两个模型本质上是彼此的逆变换,用于创建 “循环”,其返回的输出应与给定的输入完全相同。循环训练有两种不同的形式。第一种形式旨在学习从一种输入形式转换到另一种输入形式。另一种形式是使用 “周期一致性损失 ”作为其他任务的辅助损失。在这项工作中,作者只使用循环一致性进行训练。在一个文本到文本的应用中,有研究用类似的无监督方法进行双向文本转换,将关键词搜索查询转换为自然语言问题。在没有大量注释文本的情况下,它也被用于命名实体识别。在这种情况下,一个模型提取实体,反向模型根据这些实体创建文本。这种方法的局限性在于,有许多方法可以实现具有相同实体的句子。
WebNLG 数据集上的数据到文本生成而开发的 CycleGT 模型明确提出数据到文本生成任务的一致性要求。不过,CycleGT 依靠已有的 NER 模型从输出文本中提取实体。然后,训练一个反向模型来预测实体和谓词之间的联系。如果实体未被他们的NER 系统识别,将影响珍整体模型的性能。原则上,可以像 CycleNER那样,利用循环训练建立一个单独的NER模型,但 CycleGT 的作者并没有这样做。而循环训练的一个主要优点是无需依赖任何监督,而是主要或完全依赖输入和输出的自一致性,在本工作中,作者设计了一种简单的方法,使用预先训练好的语言生成模型,针对数据到文本和文本到数据的生成循环进行微调。
方法及骨干模型
循环训练的前提是有两个互逆模型。根据 WebNLG2020 挑战赛,本文采用了性能明显较强的 T5 模型,作为正向生成(F: D→T,执行 RDF 到文本的生成)和反向生成(R : T → D,执行文本到 RDF 的生成)的骨干模型。将每个样本的 RDF 三元组线性化为序列 d,分别用 [S]、[P] 和 [O] 标记表示每个三元组的主语、谓语和宾语。因此,RDF 到文本和文本到 RDF 都可以作为序列到序列生成任务来处理和训练。
本文应用迭代回译可以增强各种 NLP任务的循环一致性的思想来迭代循环训练模型。这包括强制数据自洽的数据-文本-数据 (DTD) 循环和文本-数据-文本 (TDT) 循环。如图 1 所示,对于 DTD 循环,数据到文本模型将线性化三元组 d 作为输入并生成关联的中间文本 。接下来,训练文本到数据模型,目标是使用提供的 重建 d。重建损失 Ld′ 是平均负对数似然,如下所示,其中 di 表示序列 t 的第 i 个标记,|d|是序列长度:
用相反的方式,对 TDT 循环,文本到数据模型首先将文本 t 作为输入并生成关联的线性化三元组 。接下来,训练文本到数据模型,目标是使用提供的 重建 t。重建损失 是平均负对数似然,如下所示,其中 表示序列 t 的第 i 个标记,|t|是序列长度:
由于生成离散中间输出标记的过程是无差别的,重构损失只能通过每个循环的第二个模型传播,即DTD 循环的文本到数据模型和 TDT 循环的数据到文本模型。因此,两个模型的训练只能通过 TDT 循环和 DTD 循环的交替进行,这样两个模型的性能才能逐步提高。
实验设置
本文在现有的数据源上进行实了验,这些数据源已注释了成对的数据三元组和参考文本。其中英语数据使用来自WebNLG 3.0 版本的WebNLG+ 2020 挑战赛。为了更好地促进在不同领域的实验和评估,分别利用 DART 的 E2E、WTQ 和 WSQL 的人工注释部分。为了按照 WebNLG 的格式调整数据,还删除了一些包含非常规结构标签的 WSQL 和 WTQ 示例。
表1显示了该文详细的数据集统计数据。在使用这些数据进行循环训练时,本文沿用了之前的工作方法,将所有配对样本拆分为一个独立的洗码文本语料库和另一个独立的洗码三元组语料库。如图 1 所示:
微调大型预训练模型已被证明在众多任务中表现很出色的性能。在这项工作中,详细介绍并运用完全监督下的微调、低资源微调及额外的预训练进行低资源微调三个基线微调策略。还探索了无监督循环训练和低资源循环训练两种不同的训练策略,评估不同数据约束下循环训练的有效性和通用性。为了凭经验评估“文本语料库和数据语料库的潜在内容或实体分布必须具有某种不确定程度的重叠才能使循环训练方法发挥作用”这个先决条件,本文在不同匹配级别应用相同大小的文本和数据语料库的无监督循环训练以作为潜在内容或实体分布重叠的粗略近似。具体来说,随机选择一半的 WebNLG 三元组作为数据语料库。针对性地选择五个大小相等的文本语料库,其中包含0%、25%、50%、75%和100%的原始相关参考文本,并分别补充包括100%、75%、50%、25%、0%的不相关参考文本。
本文选择了T5-base模型作为基线,具有线性权重衰减的 AdamW 作为优化器,最大输入长度设为256,Learningrate设为3e-4,batchisze设为了256,共训练了50轮。
实验结果和讨论
本文使用自动评价和人工评价两种方法对使用的策略进行了评估。使用ROUGE、 BLEU、 METEOR、BertScore和PARENT五个广泛使用的自动评估指标来评估每个策略,这些指标从字符的匹配、语义相似性和忠实度三个方面衡量生成的质量。表 2 显示了多种数据到文本生成方法在不同设置下的性能。发现,无监督循环训练法的性能普遍低于全监督微调法。与低资源微调方法相比,它在 WebNLG 和 WTQ 上的得分较高,但在 E2E 和 WSQL 上的表现较差,其中在 WSQL 上的性能差距更大。作者将这种差异归因于独特谓词和词汇量的不同。通过接触更多不同的文本和结构化数据,以及通过逐步学习不同的数据-文本关联的能力,循环训练应该能够提高模型的泛化能力和鲁棒性。对于 E2E 和 WSQL 这样的数据集来说,它们的词汇量和独特谓词的数量都较少,这意味着少量的注释样本就可能涵盖数据集的大量潜在变化。这成就了强大的低资源微调性能,与相应的完全监督的方法只有很小的性能差距,并掩盖了无监督的循环训练方法。
无论如何,当有少量注释数据可用于初始化循环训练时,低资源循环训练策略显著提高了生成性能,超过了低资源微调方法,并达到了与完全监督方法堪比的性能。这种改进在所有四个数据集和五种评估指标中都是一致的。值得注意的是,当应用于多领域和开放域数据集(WebNLG、WTQ 和 WSQL)时,与完全监督的相比,低资源循环训练生成的文本对输入数据具有更好的忠实度(从 PARENT 分数可以明显看出)。与采用额外预训练的设置相比,循环训练的作用显然不仅仅是提高生成目标域标记的概率。至于使用不同重叠度的无配对数据集进行循环训练的实验,表 3 中的结果显示,随着重叠度的增加,性能在开始时急剧上升,然后在重叠度达到 50%左右时趋于平稳。这表明,在规模相同的情况下,用于循环训练的未配对数据语料库和文本语料库至少需要有 50%的实体(或者说潜在信息)重叠,才能达到理想的性能水平。作者认为 50% 是一个合理的水平,因为许多相关但未配对的文本和结构化数据可能具有更高的信息重叠。我们认为低资源循环训练是一种普遍适用的方法,它能以最少的人力从大量未配对的结构化数据和文本中有效地学习。
为了定量比较生成文本的正确性、忠实性、数据覆盖率和流畅性,作者开发了新的基于计数和排名的注释模式,采用事实错误计数 (FE)、幻觉错误计数 (HE)、信息丢失计数 (IM)和流畅性偏好 (FP)并用来进行人工评估。与 WebNLG 2020 挑战赛使用的基于 0-100 评分的模式相比,本文使用的模式具有更好的客观性、一致性和精确性。人工评估表明,低资源循环训练持续减少事实错误、幻觉错误和信息遗漏。人工评估表明,低资源循环训练可以持续减少事实错误、幻觉错误和信息遗漏。当循环训练应用于底层关系和表面实现变化较多的数据集时,其性能会有较大提升。人类对错误和信息覆盖率的评价与 PARENT 分数的相关性更好,这证实了 PARENT 衡量忠实性的能力。从结果中还可以看出,所有三种被评估的数据到文本生成模型都更容易出现幻觉错误,而不是事实错误,这就要求我们在今后的工作中更加努力地减少幻觉错误。在生成文本的流畅性方面,低资源循环训练比低资源微调方法有所改进,但仍无法持续击败完全监督方法。
结论
在这项工作中,作者将循环训练应用在数据到文本生成任务当中。系统地研究了跨不同领域的循环训练的有效性,以及循环前微调在资源匮乏环境中的应用。表明,本文使用的方法大大提高了低资源环境中数据到文本的生成性能,与完全监督的模型相比,实现了有竞争力的性能,并且还通过减少事实错误、幻觉和信息遗漏提高了生成文本的忠实度,即使与完全监督的方法相比也是如此。此外还设计了一种对数据到文本生成进行有效人类评估的模式,该模式改进了之前的工作并鼓励对忠实度进行更客观和一致的审查。
本方法局限性
作者认识到,本文的注释和分析方法可能需要大量的人力,这可能会限制可以收集的注释数据量。此外,尽管循环训练被普遍认为是一种与模型无关的方法,但由于资源限制,无法测试各种骨干模型。此外,尽管本文放宽了实体约束并对数据到文本生成进行端到端的循环训练,但不可微性问题仍未解决。假设每个周期的第一个模型生成的中间输出是正确是一个弱假设,可能会将误导性的训练信号传播到每个周期的第二个模型,特别是在训练的早期阶段。
-
数据库
+关注
关注
7文章
3770浏览量
64301 -
模型
+关注
关注
1文章
3184浏览量
48763 -
语言模型
+关注
关注
0文章
514浏览量
10252 -
自然语言
+关注
关注
1文章
287浏览量
13339
原文标题:通过循环训练实现忠实的低资源数据文本生成
文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论