基于细粒度主题建模的数据到文本生成模型

2022-11-07 10:56:44王旭强田雨婷
计算机应用与软件 2022年10期
关键词:细粒度解码器数据表

王 扬 郑 阳 王旭强 田雨婷 杨 青

(国网天津市电力公司信息通信公司 天津 300000)

0 引 言

随着信息技术的发展,各个领域积累的行业数据正在快速增长,例如,金融领域积累的财务报表、体育领域积累的球赛实况数据等。为了解决海量数据带来的信息过载问题,数据到文本生成任务受到了越来越多研究者的关注。该任务旨在用自然语言描述结构化数据中包含的主要信息,进而帮助人们更好地把握海量数据背后包含的具体含义。

早期的研究工作[1-3]主要将该任务划分为内容规划、表层实现等多个子任务,并构建一系列人工规则来串行地执行这些子任务以得到最终的文本。这类方法虽然更具有可解释性,但是扩展性较差。近年来,随着深度学习技术的发展,基于端到端的机器学习方式[4-9]逐渐被应用到数据到文本生成任务,并取得了很好的效果。这些方法以数据驱动的形式进行模型训练,避免了烦琐的人工规则,进而使得生成结果更加灵活多样。然而,这些模型主要依赖于神经网络自身的表示学习能力来提升生成文本的质量,而忽略了文本与数据之间的主题一致性。

对于数据到文本生成任务,建模文本于数据之间的主题关联是提升模型选词准确性的前提,因此本文提出一种基于细粒度主题建模的数据到文本生成模型。具体地,本文利用非负矩阵分解方法[10]学习数据记录的主题分布以及主题的词分布,并由此得到不同数据记录对应的主题词表。随后,本文将学习到的主题词表引入编码器-解码器框架,指导模型的生成。此外,考虑到文本中通常会包含一定的数值描述,为了确保数值描述的准确性,本文进一步在解码器中引入了复制机制。为了验证本文模型的效果,本文手工构建了两个真实数据集:THS数据集和IATA数据集,并在两个数据集上进行了充分的实验,结果验证了本文模型的有效性。

1 相关工作

近年来,数据到文本生成逐渐成为了自然语言生成领域的一个研究热点,传统方法[1-3]通常将该任务拆分为内容规划、句子规划、表层实现三个独立的子任务,并依次执行以实现文本的生成。特别地,在每一个子任务中,都需要依赖领域知识构建大量的人工模板。因此,这类方法虽然结构简单且具有较好的可解释性,但存在错误传递、人工模板难以获取等问题。

随着深度学习技术的发展,基于编码器-解码器结构的端到端的学习方式逐渐成为了数据到文本生成任务的主流方法。Li等[4]在编码器-解码器的基础上提出延迟复制机制,首先生成文本模板,再采用复制机制填入具体数值。Puduppully等[5]通过注意力机制首先生成文本要描述的数据记录序列,后基于该序列进一步生成最终的文本。Gong等[6]提出多维度的层次编码,通过提升编码器的表示能力来增强生成文本的质量。Iso等[7]构建一个追踪模块,在生成过程中检测模型应描述的数据记录。Puduppully等[8]在模型中进行实体建模,通过学习实体的引用方式来提升模型的性能。Moryossef等[9]在生成模型中增加显式的符号规划组件,用以减轻模型在数据记录跟踪方面的负担。

虽然上述方法在极大地推动了数据到文本生成任务的发展,并取得了很好的效果,但是这些工作均忽略了对文本和数据之间主题一致性的建模。本文认为,在生成过程中考虑数据表对应的主题信息有助于提升模型选词的准确性。由此,本文提出一种基于细粒度主题建模的数据到文本生成模型,通过非负矩阵分解的方式学习数据记录对应的主题词表,并用其指导模型的生成过程。

2 模型设计

2.1 问题介绍

2.2 模型结构

为更好地解决数据到文本生成问题,提升生成文本的质量,本文提出基于细粒度主题建模的数据到文本生成模型,其整体结构如图1所示。具体地,本文在经典的编码器-解码器框架的基础上,引入基于数据记录的细粒度主题建模方法对生成文本的主题进行约束,以保证文本和数据表的主题一致性。此外,本文在生成过程中还引入了复制机制,使得模型可以对原始记录值以及记录值的数值运算结果进行复制,从而使得文本中包含的数值描述更加准确。

2.2.1编码器-解码器框架

本文提出的模型主要基于编码器-解码器框架,该框架被广泛应用于诸多文本生成任务[11-12]。本节主要对该框架进行介绍。给定数据表记录集合s,该框架首先使用编码器对记录集合进行编码,随后基于编码的结果构建一个解码器,用以生成对应的文本序列y={y1,y2,…,y|y|}。

(1)

(2)

基于记录序列的隐藏表示H={h1,h2,…,h|r|},本节同样采用LSTM作为解码器进行文本生成。对于每个时间步t,LSTM单元的输入为上一步预测的词对应的词向量yt-1以及解码器上一步的隐藏表示dt-1:

dt=LSTMdec(yt-1,dt-1)

(3)

(4)

(5)

(6)

式中:Wd和bd为模型参数。随后,本节将该特征表示映射到词表空间,从而得到每个词的生成概率:

(7)

式中:Wy与by为模型参数;y

2.2.2细粒度主题建模

为提升文本的生成质量,本文对数据表的主题信息进行建模,通过约束生成文本和数据表之间的主题一致性来指导模型学习到更准确的用词方式。考虑到在同一个数据表中,不同的数据记录通常会具有不同的主题,从而在用词方面存在差异,本文以数据记录为基本建模对象,提出一种细粒度的主题建模方法。

G≈UF

(8)

式中:U∈RB×K代表数据记录的主题分布情况;F∈RK×|D|代表主题下的词分布情况;K为设定的主题数。对于每个记录rj,本节选择其对应的主题分布中概率最大的主题作为该数据记录的主题,并从该主题对应的词分布中选择该概率最大的|Vj|个词作为该数据记录对应的主题词表。

(9)

(10)

(11)

(12)

为使得主题词表中的词有更高的概率被生成,本节将主题词的生成概率与式(7)进行整合,得到词的生成概率pgen:

pgen(yt|y

(13)

2.2.3复制机制

在数据表对应的描述文本中通常会包含一定的数值描述,而这些数值通常来源于原始数据表。为保证模型可以准确生成这类数值描述,本节在2.2.2节的基础上,进一步将复制机制引入生成过程中。考虑到这类数值可能为数据表中的记录值,也可能为记录值进行数值运算后的结果,因此本文提出扩展的复制机制,该机制不仅可以对原始记录值进行复制,还可以对记录值的数值运算结果进行复制。

具体地,在每个时间步t,本节首先根据解码器的隐藏表示dt计算一个二元变量ut,用以指示该时间步是否进行复制操作:

p(ut=1|y

(14)

p(ut=0|y

(15)

在此基础上,本节式(7)更新为如下公式:

(16)

式中:当p(ut=1|y

(17)

(18)

通过本节提出的复制机制,可以将数值计算融入到复制过程中,从而使模型生成更加精准的文本。

2.2.4模型训练

在训练过程中,本文最大化标准文本的对数似然函数:

(19)

3 实 验

3.1 数据集

为了验证模型的有效性,本文手工构建了两个数据集:THS数据集与IATA数据集,具体的统计信息如表1所示,数据样例如图2和图3所示。这两个数据集分别爬取自同花顺网站(THS)的上市公司财务诊断以及国际航空运输协会官网(IATA)公开的经济报告。在实验过程中,本文选取80%的样本作为训练集,10%的样本作为验证集,10%的样本作为测试集。

3.2 实验设置

对于THS数据集,本文将词向量维度、最大文本生成长度分别设为300和30;对于IATA数据集,上述维度分别设为100和50。此外,对于两个数据集,本文将编码器以及解码器隐藏状态的维度均设为300,将主题数设为50,主题词词表的大小也设为50。结合两个数据集的特点,在本文提出的复制机制中,数值运算的类型主要包括:记录值、记录值向下取整、记录值向上取整、记录值与历史记录的减法结果、记录值相对于历史记录的变化百分比。

在实验过程中,本文使用Adam优化器对模型参数进行优化,并将批处理大小设为10,迭代次数设为60,学习率设为0.002,衰减率为0.98,dropout比例设为0.5。

3.3 对比方法

为了验证模型的效果,本文将与以下文本生成方法进行比较。其中,EDA、EDA-T、EDA-Copy三个对比方法为本文模型对应的消融模型。

(1) Temlpate[14]:一种基于模板的生成方法。在训练过程中,统计不同类型的表格的用词频率,并选择频率最高的词序列构建模板,在推理过程中根据数据表中的具体数据情况填充模板的空缺处。

(2) KN[15]:Kneser-Ney模型是一种应用广泛的语言模型。在本文的实验中使用KenLM工具包来训练5-gram的模型,并且不进行修剪。

(3) T-NLM[16]:一种统计语言模型。本文以Mikolov等[16]提出的循环神经网络语言模型为基础进行实验。

(4) EDA:一种基于注意力机制的序列到序列模型,即为本文模型使用的基础框架。

(5) EDA-T:在EDA模型的基础上引入细粒度主题建模方法,以保证文本和数据表之间的主题一致性。

(6) EDA-Copy:在EDA模型的基础上引入复制机制,以保证模型可生成更为准确的数值描述信息。

3.4 评价指标

本文采用BLEU[17]以及ROUGE[18]作为评价指标,用于判断模型的生成效果。其中,BLEU是一种基于准确率的相似性度量方法,主要计算生成文本与和真实文本中n元组的共现比例;ROUGE是一种基于召回率的相似性度量方法,主要评价生成文本的充分性和真实性。并且,BLEU值和ROUGE值越大证明生成的结果越符合给定的真实文本。在本文的实验中,这两种评价指标均采用基于4元组的匹配进行计算。

3.5 实验结果

表2展示了本文模型和对比方法在两个数据集上的实验结果。可以看出,本文所提出的基于细粒度主题建模的数据到文本生成模型在两个数据集的所有指标上均取得了优于对比方法的性能,该结果证明了本文方法的有效性。

表2 实验结果

对于两个数据集,基于模板的方法以及基于语言模型的方法在性能上整体表现较差,这说明编码器-解码器框架更适用于数据到文本生成任务,能够生成更准确的文本。相较于EDA方法,引入细粒度主题建模可以在两个数据集的BLEU值上分别得到6.48和3.86的提升,在两个数据集的ROUGE值上分别得到10.2和4.12的提升。这说明通过引入主题建模,可以使得模型在选词上更加准确,进而使得生成的准确率得到较大的提升。与此同时,比较EDA-Copy模型和EDA模型,通过引入复制机制,两个数据集的BLEU值分别提升了2.48和4.68,两个数据集的ROUGE值分别提升了3.57和6.55。这说明通过引入复制机制,模型可以有效地从表格中选择要描述的数值,进而提升生成文本的召回率。

通过同时引入细粒度主题建模和复制机制,本文模型相较于其他方法有较大的提升,该现象表明本文所提出的模型可以同时提升用词以及数值结果的准确性,从而提升生成文本的质量。

3.6 主题一致性分析

为了进一步验证本文所提出的模型是否可以提升生成文本和数据表之间的主题一致性,本节提出一种新的评价指标。具体地,我们首先对数据集中的文本进行分词,后通过人工筛选的方法为两个数据集分别制作能够体现文本主题的主题词表。随后,我们计算生成结果在主题一致性方面的得分,具体公式如下:

(20)

式中:topicw∈Gen表示生成文本中包含的主题词;topicw∈Ref表示真实文本中包含的主题词。由此,式(20)代表了生成文本与真实文本中匹配的主题词个数占真实文本中包含的主题词个数的比例,进而反映了生成文本与数据表主题的一致程度。该分值越大则说明生成结果包含了越多正确的主题词,从而与原始数据表具有更高的主题一致性。

表3显示了主题一致性的实验结果。可以看出,相较于EDA,本文方法获得了更高的分数,这代表本文模型能够更好地保持与数据表的主题一致性,从而具有更高的用词准确度。

表3 主题一致性分析(%)

3.7 人工评价

上述实验结果均采用自动计算的方法对生成结果进行评价,虽然这些方法可以在一定程度上评估文本的生成效果,但是依然存在一定的局限性。因此本节从测试集随机抽取20%的样本进行人工评测。在测评过程中,本文为测评人员展示原始的结构化数据表以及不同方法的生成结果,测评人员会根据不同的要求选择最符合条件的一个或多个文本。

在本文的实验中,人工测评主要针对文本主题的符合程度(Cohe)以及分析结论的正确性(Corr)进行评价,并以不同方法被选的比例作为对应方法的评分。

人工评价的结果如表4所示,可以看出,本文提出的模型在主题一致性以及结论正确性方面优于EDA,这同样证明了本文模型的有效性。此外,基于模板的生成结果在人工测评中获得了最高的结果,这是由于模板基于人为规则制定的,因此生成结果在准确性以及主题的符合程度方面更符合人类的习惯。然而,基于模板的方法需要经过复杂的规则制定过程,可扩展性差,并且生成结果缺乏一定的多样性,而本文提出的模型可以很好地解决这两个问题。

表4 人工评价的结果(%)

3.8 样例分析

为了更直观地了解本文所提出模型的生成效果,在表5和表6中给出本文模型以及EDA方法生成的部分结果示例,并将其与真实文本进行对比。通过IATA的生成样例可以看出,EDA方法可以保证生成文本的流畅度,但是其在文本主题以及分析结果的正确性方面均无法保证。而本文方法通过引入扩展的复制机制和细粒度主题建模,不仅可以对文本中包含的数值描述进行准确生成,还可以很好地保持生成文本和表格的主题一致,提升用词的精准性。对于THS数据集,虽然其包含的数值较少,但是通过引入复制机制和细粒度主题建模,同样可以提升生成文本用词的准确程度,从而获得了更好的文本生成结果。

表5 样例分析—IATA数据集

表6 样例分析—THS数据集

4 结 语

本文主要关注于数据到文本生成任务,并提出基于细粒度主题建模的数据到文本生成模型。为保证文本与数据表的主题一致性,本模型以数据记录为基本建模单位,利用非负矩阵分解的方法建模数据记录的主题分布以及主题对应的词分布,并将建模的结果引入生成过程中。此外,为了提升文本中数值描述的准确性,本文还引入了复制机制,并将一系列数值运算融入到复制过程中。为了验证模型的有效性,本文构建了两个真实数据集,并进行了充分的实验。实验结果表明,本文模型取得了最优的性能,进而说明了本文模型可以很好地保证生成文本和表格之间的主题一致性,提升模型选词的准确性,并增强数值描述的准确性。

猜你喜欢
细粒度解码器数据表
融合判别性与细粒度特征的抗遮挡红外目标跟踪算法
红外技术(2022年11期)2022-11-25 03:20:40
科学解码器(一)
细粒度的流计算执行效率优化方法
高技术通讯(2021年1期)2021-03-29 02:29:24
科学解码器(二)
科学解码器(三)
湖北省新冠肺炎疫情数据表
党员生活(2020年2期)2020-04-17 09:56:30
线圣AudioQuest 发布第三代Dragonfly Cobalt蓝蜻蜓解码器
基于列控工程数据表建立线路拓扑关系的研究
基于双线性卷积网络的细粒度图像定位
支持细粒度权限控制且可搜索的PHR云服务系统