以关键事实为枢轴:一种两阶段的低资源的表格到文本生成模型

摘要

表到文本生成旨在将结构化数据转换为非结构化文本。 大多数现有方法采用编码器 - 解码器框架来学习转换,这需要大规模的训练样本。 然而,缺乏大并行数据是许多领域的主要实际问题。 在这项工作中,我们考虑低资源表到文本生成的情况,其中只有有限的并行数据可用。 我们提出了一种新的模型,将这一代分为两个阶段:关键事实预测(key fact prediction)和表面实现(surface realization)。 它首先从表中预测关键事实,然后使用关键事实生成文本。 关键事实预测的训练需要更少的注释数据,而表面实现可以用伪平行语料库训练。 我们在传记生成数据集上评估我们的模型。 我们的模型通过仅仅1,000个并行数据获得27.34 BLEU分数,而基线模型仅获得9.71 BLEU分数的性能。

1 简介

表到文本生成是从结构化表生成描述。 它有助于读者总结表中的关键点,并用自然语言讲述。

表1是Table-to-Text的一个例子:

此外,表到文本生成是模型理解结构化知识的能力的良好测试平台。

目前大部分表到文本生成的模型都是基于编码器解码器的架构,之前几个最先进模型的效果确实还可以,但是这种架构的问题就是需要大量的文本训练。图2展示了这种架构模型的效果和训练数据量的关系:

我们可以看到数据量很小的时候效果很差,但是实际工作中,我们恰恰就是缺少大数据集。

这项工作侧重于低资源表到文本生成的任务,其中只有有限的并行数据可用。 以前的一些工作将任务表示为内容选择和表面实现的组合,并使用端到端模型对它们进行建模。 受这些工作的启发,我们将表到文本生成分为两个阶段,每个阶段都由一个只有少量注释数据的可训练模型执行。 具体来说,它首先从表中预测关键事实,然后使用关键事实生成文本,如图1所示。

两阶段方法由两个独立的模型组成:关键事实预测模型和表面实现模型。 关键事实预测模型被表述为序列标记问题,因此它需要比编码器 - 解码器模型少得多的注释数据。 根据我们的实验,该模型可以获得87.92%的F1分数,仅有1,000个注释数据。 对于表面实现模型,我们提出了一种构建伪并行数据集而无需标记数据的方法。 通过这种方式,我们的模型可以充分利用未标记的文本,并减轻并行数据的繁重需求。

这项工作的贡献如下:

  • 我们提出使用两个单独的模型将表到文本生成分为两个阶段,以便可以使用更少的带注释数据来训练模型。

  • 我们提出了一种方法来为表面实现模型构建伪并行数据集,而无需标记数据。

  • 实验表明,我们提出的模型可以在仅有1000个tabletext样本的传记生成数据集上实现27.34 BLEU分数。

2 PIVOT:一个两阶段模型

接下来我们将介绍我们提出的双阶段模型——PIVOT。

2.1 公式和符号

假设我们有一个具有N个数据样本的并行表到文本数据集P和一个带有M个样本的未标记文本数据集U。每个并行样本由源表T和文本描述y=\{y_1,y_2,...,y_n\}组成。而源表T又可以被表示为K个记录,即T=\{r_1,r_2,...,r_K \},并且每个记录都是一个属性——值对。在未标注数据集U中的每个样本都是一段文字\overline y=\{\overline y_1,\overline y_2,...,\overline y_n \}

正式的说,表到文本生成的任务就是将T=\{(a_1,v_1),(a_2,v_2),...(a_m,v_m) \}作为输入,生成输出y=\{y_1,y_2,...,y_n\}

2.2 概要

图3显示了我们提出的模型的概述架构。 我们的模型包含两个阶段:关键事实预测和表面实现。

在第一阶段,我们将表格表示为一个序列,并使用table-to-pivot模型从序列中选择关键事实。 table-to-pivot模型采用双向长期短期记忆网络(Bi-LSTM)来预测每个单词是否被保留为关键事实的二进制序列。

在第二阶段,我们构建一个序列到序列模型,将第一阶段中选择的关键事实作为输入并发出表描述。 为了利用未标记的文本语料库,我们提出了一种构造伪并行数据的方法,以训练更好的表面实现模型。 此外,我们引入了一种去噪数据增强方法,以降低两个阶段之间错误传播的风险。

2.3 预处理:关键事实选择

这两个阶段是分开训练的,但我们没有标记表中的哪些词是数据集中的关键事实。 在这项工作中,我们将表格和文本之间的共现事实定义为关键事实,因此我们可以自动标记关键事实。

算法1说明了自动注释关键事实的过程。 给定一个表及其相关文本,我们枚举表中的每个属性——值对,并计算值和文本之间的单词重叠。 单词重叠被定义为不是停用词或标点符号但出现在表和文本中的单词数。 我们收集与文本至少有一个重叠的所有值,并将它们视为关键事实。 通过这种方式,我们可以获得一个带有0/1标签的二进制序列,表示表中的值是否是关键事实。 二进制序列将被视为关键事实预测模型的监督信号,并且所选择的关键事实将是表面实现模型的输入。

2.4 第一阶段:关键事实预测

关键事实预测模型就是一个Bi-LSTM模型上面加一个多层感知器的分类器,以确定是否每个单词都被选择了。为了表示该表,我们遵循先前的工作将表的值中的所有单词连接成单词序列,并且每个单词用其属性标记。这样的话,表就被表示成了两个句子:表示value的句子\{v_1,v_2,...,v_m\}​,表示属性值的句子\{a_1,a_2,...,a_m\}​。

使用单词嵌入和属性嵌入将两个序列转换为向量。接下来我们引入了位置嵌入(position embedding)来捕获表的结构化信息。 位置信息表示为元组(p^+_w,p_w)(p^+_w,p_w),其包括分别从值的开始和结束计数的令牌w的位置。 For example, the record of “(Name, Denise Margaret Scott)” is represented as “({Denise, Name, 1, 3}, {Margaret, Name, 2, 2}, {Scott, Name, 3, 1})”.这样,即使存在两个相同的单词,表中的每个标记也具有嵌入的唯一特征。 最后,将单词嵌入,属性嵌入和位置嵌入连接起来作为模型x的输入。

Table Encoder: 源表编码器的目标是为分类器提供一系列表示。 更具体地说,表编码器是Bi-LSTM:

Classifier: 输出向量ht被馈入MLP分类器以计算标签p1的概率分布:

p_1(l_t|x)=softmax(W_ch_t+b_c)

​Wc,bc​都是分类器的可训练参数。

2.5 第二阶段:表面实现

表面实现阶段的目的是生成以第一阶段预测的关键事实为条件的文本。我们将两个模型作为表面实现的实现:vanilla Seq2Seq和Transformer。

Vanilla Seq2Seq:

在我们的实现中,vanilla Seq2Seq由Bi-LSTM编码器和具有注意机制的LSTM解码器组成。Bi-LSTM编码器与关键事实预测模型的编码器相同,只是它不使用任何属性嵌入或位置嵌入。

Transformer:

和vanilla Seq2Seq相似,Transformer由编码器和解码器组成。编码器使用了一层Transformer层用于将每个单词编码为表征ht:

2.6 伪并行数据构造

表面实现模型基于编码器 - 解码器框架,其需要大量训练数据。 为了增加训练数据,我们提出了一种构造伪并行数据的新方法。 表面实现模型用于组织和完成给定关键事实的文本。 因此,可以通过移除文本的骨架并仅保留关键事实来构造伪并行数据。 在实现中,我们使用Stanford CoreNLP toolkit2标记文本,为每个单词分配POS标记。 我们保留其POS标签属于{NN,NNS,NNP,NNPS,JJ,JJR,JJS,CD,FW}标签集的单词,并删除剩余单词。 通过这种方式,我们可以构造一个大规模的伪并行数据来训练表面实现模型。

2.7 去噪数据增强

两阶段模型的问题在于误差可能从第一阶段传播到第二阶段。 一种可能的解决方案是应用波束搜索以扩大第一阶段的搜索空间。 然而,在我们的初步实验中,当光束尺寸较小时,预测的关键事实的多样性较低,并且也无助于提高准确度。 当光束尺寸大时,解码速度慢而且精度的提高也有限。

为了解决这个问题,我们实现了一种去噪数据增强的方法,以减少错误传播带来的伤害并提高模型的稳健性。 在实践中,我们从表面实现模型的输入中随机删除一些单词,或者从其他样本中插入一些单词。 当关键事实预测模型无法回忆某些共现时,删除模拟情况,而当模型从表中预测一些额外事实时,插入模拟情况。 通过添加噪声,我们可以将这些数据视为对抗性示例,这可以提高表面实现模型的鲁棒性。

2.8 Training and Decoding

由于我们模型的两个组件是分开的,因此模型的目标函数是单独优化的。

3 实验

我们在表对文本生成基准上评估我们的模型。 我们将Seq2Seq框架下的PIVOT模型表示为PIVOT-Vanilla,将Transformer框架下的PIVOT模型表示为PIVOT-Trans。

3.1 数据集

WIKIBIO Dataset:该数据集包含来自英语维基百科的728,321篇文章,其使用每篇文章的第一句作为相关信息框的描述。 每个描述中平均有26.1个单词,其中9.5个单词也出现在表中。 该表平均包含53.1个单词和19.7个属性。 在之前的工作(Lebret等,2016; Liu等,2018)之后,我们将数据集分成80%的训练集,10%的测试集和10%的验证集。 为了模拟低资源情景,我们随机抽样1,000个并行样本,并从其余训练数据中删除表格。

3.2 评估指标

Following the previous work (Lebret et al., 2016; Wiseman et al., 2018), we use BLEU-4 (Papineni et al., 2002), ROUGE-4 (F measure) (Lin and Hovy, 2003), and NIST-4 (Belz and Reiter, 2006) as the evaluation metrics.

3.3 实施细节

词汇量仅限于训练数据集中最常见的20,000个单词。 所有型号的批量大小均为64。 我们实施early stop机制,4个epoch后如果验证集loss不下降则停止。 我们根据验证集上的性能调整超参数。

关键事实预测模型是Bi-LSTM。其隐藏单元,单词嵌入,属性嵌入和位置嵌入的维度分别为500,400,50和5。

我们实现了两个模型作为表面实现模型。 对于vanilla Seq2Seq模型,我们将隐藏维度,嵌入维度和辍学率(Srivastava等人,2014)分别设置为500,400和0.2。 对于Transfomer模型,多头组件和前馈层的隐藏单元为512和2048Embedding size=512 number of head=8 number of Transformer block=6。

我们将梯度剪切到最大标准5.0。当验证集上的性能在3个epoch内没有改善时,我们将学习率降低一半。

3.4 Baseline

We compare our models with two categories of baseline models: the supervised models which exploit only parallel data (Vanilla Seq2Seq, Transformer, Struct-aware), and the semi-supervised models which are trained on both parallel data and unlabelled data (PretrainedMT, SemiMT)。以下是各个模型的简介:

  • 具有注意机制的Vanilla Seq2Seq是用于自然语言生成的流行模型。

  • Transformer是编码器解码器框架下的最先进模型,仅基于注意机制。

  • Struct-aware是用于表到文本生成的最先进模型。它使用LSTM内部的门控机制模拟表的内部结构,并使用双重注意机制学习表和文本之间的交互。

  • PretrainedMT是一种半监督方法,用语言模型预先训练序列到序列模型的解码器。

  • SemiMT是一种半监督方法,用于通过自动编码器联合训练序列到序列模型。

监督模型使用与我们的模型相同的并行数据进行训练,而半监督模型共享相同的并行数据和未标记的数据。

3.5 结果

此外,它表明使用Transformer的实现可以获得比使用vanilla Seq2Seq更高的分数。

3.6 改变并行数据大小

首先随机打乱所有并行训练数据集合,然后选取前K个sample作为并行数据并修改剩下的数据将其表去掉作为未标注数据。得到下图:

可以看到,关键事实预测模型和表面实现模型都可以在小数据集上表现出很好的性能。

3.7 伪并行数据集的效果

令人惊讶的是,伪并行数据不仅可以帮助PIVOT模型,还可以显着改善vanilla Seq2Seq和Transformer。原因在于伪并行数据可以帮助模型提高表面实现的能力,这是这些模型在有限的并行数据条件下所缺乏的。PIVOT模型可以通过伪数据优于基线,主要是因为它破坏了关键事实预测和表面实现的操作,两者都是明确地和单独地优化的。

3.8 去噪数据增强的效果

5 总结

在这项工作中,我们专注于低资源的表到文本生成,其中只有有限的并行数据可用。 我们将生成分为两个阶段,每个阶段都由一个只有少量注释数据的可训练模型执行。 此外,我们提出了一种方法来构建表面实现模型的伪并行数据集,而不需要任何结构化表。 实验表明,我们提出的模型可以在仅有1,000个并行数据的传记生成数据集上实现27.34 BLEU分数。

Key Fact as Pivot: A Two-Stage Model for Low Resource Table-to-Text Generation 论文翻译相关推荐

  1. Scaled-YOLOv4: Scaling Cross Stage Partial Network 论文翻译

    Scaled-YOLOv4: Scaling Cross Stage Partial Network论文翻译 摘要 1.介绍 2.相关工作 2.1 实时检测器 2.2 模型缩放 3.模型缩放的原则 3 ...

  2. ef mysql modelfirst_MySQL –EF edmx(Model First)– Sql Server table

    一.mysql environment When we create an new database,first We need draw er diagram for somebody to sho ...

  3. View Invariant Gait Recognition Using Only One Uniform Model论文翻译以及理解

    View Invariant Gait Recognition Using Only One Uniform Model论文翻译以及理解 一行英文,一行翻译 论文中所述的优点:The unique a ...

  4. 论文翻译 —— Model Free Episodic Control

    标题:Model Free Episodic Control 文章链接:Model Free Episodic Control 代码实现:sudeepraja Model-Free-Episodic- ...

  5. A Generic Camera Model and Calibration Method for Conventional, Wide-Angle, and Fish-Eye Lenses 论文翻译

    目录 题目 Abstract I. Introduction II. GENERIC CAMERA MODEL A. Radially Symmetric Model 径向对称模型 B. Full M ...

  6. 【论文翻译】EIDETIC 3D LSTM: A MODEL FOR VIDEO PREDICTION AND BEYOND

    pdf链接:https://openreview.net/pdf?id=B1lKS2AqtX EIDETIC 3D LSTM: A MODEL FOR VIDEO PREDICTION AND BEY ...

  7. Towards Two-Dimensional Sequence to Sequence Model和Two-Way Neural Machine Translation两篇论文简单分析

    第一篇是:发布于2018年Towards Two-Dimensional Sequence to Sequence Model in NeuralMachine Translation 第二篇是:与第 ...

  8. 《Universal Language Model Fine-tuning for Text Classification》翻译

    ULMFiT-用于文本分类的通用语言模型微调 翻译自<Universal Language Model Fine-tuning for Text Classification> Jerem ...

  9. 论文翻译:2021_语音增强模型压缩_Towards model compression for deep learning based speech enhancement...

    论文地址:面向基于深度学习的语音增强模型压缩 论文代码:没开源,鼓励大家去向作者要呀,作者是中国人,在语音增强领域 深耕多年 引用格式:Tan K, Wang D L. Towards model c ...

最新文章

  1. mysql包含哪几部分_sql语言包含哪些部分
  2. Python学习笔记-模块介绍
  3. java 操作 mongodb_Java操作MongoDB数据库方法详解
  4. 虚拟内存越大越好吗_滤波电容越大越好吗?
  5. VMWARE VCSA 6.5安装过程
  6. 人生聚散,一切随缘!
  7. server sql 数据c盘迁移d盘_C盘空间不足怎么办?如何给C盘扩容?
  8. python怎样切换到上一行_如何返回到python中的前一行?
  9. JAVA基础知识(四):final关键字
  10. C++命名空间和头文件的关系 例如已经使用了#includestring,为什么还要 using std::string?...
  11. android图片背景颜色透明度,android:设置背景图片、背景颜色透明
  12. Winodws10 system进程占用磁盘100%
  13. Performance Test Framework (PTF)是压力测试框架(轩)
  14. 实现商品库存信息管理页面
  15. win7取消计算机密码怎么设置,win7开机密码怎么取消
  16. 类和对象7:构造和析构方法
  17. ipfs 存储目录结构
  18. CISP注册信息安全工程师证书及展示
  19. 哪里可以下载Holer软件包
  20. CentOS7配置代理上网

热门文章

  1. 【工具】Gamepad Tester游戏手柄在线测试平台
  2. 简历中特长爱好怎么写
  3. 在 JavaScript 中为任何表格添加分页
  4. 2018年最流行JavaScript明星项目
  5. yum安装软件时,出现“No package XXX available“的解决办法
  6. CSS3伪类选择器:nth-child(n)及:nth-of-type(n)使用区别探究总结
  7. LeetCode-589. N-ary Tree Preorder Traversal
  8. 网络摄像头Androi端显示(mjpeg)源码分析
  9. java弱化胖瘦客户端_Java架构师成长直通车百度云
  10. 南华大学计算机有调剂名单吗,南华大学调剂公告