CN111310927B - 一种引入推理机制的文本生成方法 - Google Patents
一种引入推理机制的文本生成方法 Download PDFInfo
- Publication number
- CN111310927B CN111310927B CN202010061962.3A CN202010061962A CN111310927B CN 111310927 B CN111310927 B CN 111310927B CN 202010061962 A CN202010061962 A CN 202010061962A CN 111310927 B CN111310927 B CN 111310927B
- Authority
- CN
- China
- Prior art keywords
- generated
- characters
- inference
- data
- triple
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Abstract
一种引入推理机制的文本生成方法,本发明涉及文本生成方法。本发明的目的是为了解决现有数据生成文本中数据信息推理表格信息中隐含信息准确率低的问题。过程为:一、用#号替换表格数据信息对应的新闻报告中能推理的数字;二、得到同一实体的总体表示;三、采用解码器LSTM对得到的同一实体的总体表示进行解码,生成每个三元组的权重;解码器根据三元组权重生成具体的文字;若生成的文字是#号,触发推理按钮,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换#号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;得到神经网络网格推理模型。本发明用于NLP领域数据到文本领域。
Description
技术领域
本方法主要涉及文本生成方法,用于NLP(自然语言处理)领域数据到文本领域(data-to-text)。
背景技术
数据到文本(data-to-text)[1](Data-to-text generation技术,文献引自Cambridge university press.,年份:2000年,作者:Ehud Reiter and RobertDale.2000.题目:Building natural language generation systems.),即由给出的数据信息,生成有关给出数据信息的文本。目前是自然语言处理领域一个非常有前沿性的研究,涉及人传传记、NBA比赛、棒球比赛、财经报道等相关工作。
现有的数据生成文本(data-to-text),大都是基于直接对表格数据中显式存在的信息来进行描述,对于表格信息中没有直接显式表示的信息(例如,球队A以110:106,4分险胜球队B,4分;球员C和球员D两人联合得分36分,4分和36分这两个数据在表格中没有出现),则往往生成类似表达时,出现错误。
在目前已公开的研究中,table-to-text生成方法的各种模型,CC(Wiseman etal.,2017)[2](作者:Sam Wiseman,Stuart M.Shieber,and Alexander M.Rush.年份:2017.题目:Challenges in data-to-document generation.会议:In Proceedings of the2017Conference on Empirical Methods in Natural Language Processing.)等,大部分都是直接依靠模型本身进行训练,并没有直接针对这些表格信息不存在的信息进行单独处理,因此对于这些需要推理的信息,往往不能生成。
论文《Operations Guided Neural Networks for High Fidelity Data-To-TextGeneration》[3](作者:Feng Nie1,Jinpeng Wang,Jin-Ge Yao,Rong Pan,Chin-Yew Lin.年份:2018.题目:Operations Guided Neural Networks for High Fidelity Data-To-TextGeneration.会议:In Proceedings of the 2018Conference on Empirical Methods inNatural Language Processing.)中针对以上无法生成需要推理计算的信息,提出了预先增加数据的方式。即预先增加大量要推理的数字信息到表格里,丰富表格建模,例如将球队A以110:106,4分险胜球队B,4分这个数据加入到表格表示之中,进行建模。在一定程度上缓解了不能生成类似表达的问题,但是同时,由于增加了大量可能无用的表格信息(例如两个替补球员联合得到了1个篮板,这样的数据,往往在文本生成中是不需要的),导致准确的生成球队A以110:106,4分险胜球队B,4分这样的文本数字的准确率不高,同时也使得总体生成文本的准确性下降。
发明内容
本发明的目的是为了解决现有数据生成文本中数据信息推理表格信息中隐含信息准确率低的问题,而提出一种引入推理机制的文本生成方法。
一种引入推理机制的文本生成方法具体过程为:
步骤一、用#号替换表格数据信息对应的新闻报告中能推理的数字;
步骤二、将步骤一用#号替换后的表格的数据集转化成若干个三元组;再对得到的三元组进行自身实体属性建模得到相应的向量最后,对同一个实体的所有记录进行MeanPooling,得到同一实体的总体表示rowi;
步骤三、采用解码器LSTM对步骤二得到的同一实体的总体表示rowi进行解码,生成每个三元组的权重;
解码器根据三元组权重生成具体的文字,通过解码生成具体的文字有两种方式,一种从三元组中拷贝,即拷贝概率,另一种从词表中选择一个词来生成,即生成概率;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型。
本发明的有益效果为:
本发明针对以上的问题提出了在生成文本中引入multitask(多任务学习)方式,具体的即在模型解码时刻嵌入一个gate(门控机制),由门控机制,判断当前生成的文本是否需要进行推理,如解码时刻生成指定标识时,触发按钮,进入推理模块,例如当需要推理4分这样的数字时,在该位置生成了标识“#”触发门机制,进入推理数字的模型中,获取当前推理数字的上下文信息,进行推理任务学习,生成推理序列,将生成的推理序列的结果返回填入触发门机制的位置,完成推理,继续生成文本,提高了现有数据生成文本中数据信息推理表格信息中隐含信息准确率。
本发明方法在ROTOWIRE数据集上进行了实验,证明了本发明提出的方法是有效的,将生成需要推理文本的准确率提高到了65%,同时在BLEU等评价指标上也达到了19,提升了2个多点,优于目前提出的所有模型。
附图说明
图1为本发明流程图,BOS为开始生成文本标识,EOS为结束生成文本标志,图中模型正在生成本场比赛得分为99-86,马刺队以4分险胜火箭队,生成4分时,触发按钮,进入推理机制,生成计算序列,返回填槽位置;
图2a为三元组拆分后的行数据-为球队的所有信息图;
图2b为三元组拆分后的行数据-为球员的所有信息图。
具体实施方式
具体实施方式一:结合图1说明本实施方式,本实施方式一种基于推理机制的文本生成方法具体过程为:
具体实验在rotowire NBA比赛数据集上进行验证。
rotowire NBA比赛数据集是发布于2017年EMNLP会议,由哈佛大学自然语言处理研究组在《Challenges in Data-to-document Generation》论文中提出。爬取了4000多场NBA比赛数据,每场比如包括主客队和所属球员的相关数据信息,以及每场比赛后由体育记者发布的新闻报道。
为了验证提出方法的有效性和通用性,在基线模型CC(Wiseman et al.,2017)和层次化模型Hier(对数据进行实体表示建模)两个模型上,均进行了实验验证。
步骤一、用#号替换表格数据信息对应的新闻报告中能推理的数字;
步骤二、将步骤一用#号替换后的表格的数据集(每场NBA比赛的表格数据)转化成若干个三元组,每个三元组具体形式为(球员/球队,具体属性,值),例如(湖人队,总得分,123),得到一场NBA比赛对应602个三元组;再对得到的三元组进行自身实体属性建模得到相应的向量最后,对同一个实体的所有记录(即一行的数据)进行MeanPooling(均值池化),得到同一实体(球员/球队)的总体表示rowi(hier模型);
步骤三、采用解码器LSTM对步骤二得到的同一实体的总体表示rowi进行解码,生成每个三元组的权重;
解码器根据三元组权重生成具体的文字,通过解码生成具体的文字有两种方式,一种从三元组中拷贝,即拷贝概率,另一种从词表中选择一个词来生成,即生成概率;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H(就是要判断这个#号到底是代替了哪个数字,要根据生成#号之前的文字来判断,例如现在生成了#号,生成#号前的文字是,马刺队99-86,因为这些文字是在#号之前生成的,所以生成#号的时候,隐层H也会蕴含马刺99-86这样的信息。)作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型。
具体实施方式二:本实施方式与具体实施方式一不同的是,所述步骤一中用#号替换表格数据信息对应的新闻报告中能推理的数字;具体过程为:
步骤一一、在rotowire数据集中爬取4000场NBA比赛数据,处理成如下形式:
每场NBA比赛数据包括相应的比赛数据和该场比赛对应的记者发表的新闻报道,其中比赛数据包括每场NBA比赛的主客队和所属球员的相关的表格数据信息(比如主队是火箭队,客队是马刺队,主队相关信息有球队胜利场数、失败场数、本场比赛总得分、本场比赛总助攻数、本场比赛第一节得分、第二节得分等15个属性,客队同理。
一个球队有13个球员,比如火箭队有姚明等13个球队,与姚明相关的就是姚明本场比赛的得分、篮板、助攻等22个属性);
步骤一二、将步骤一一中每场比赛的新闻报道中的所有数字信息统一转成阿拉伯数字,例如(five转成5);
步骤一三、判断步骤一二中的所有转成阿拉伯数字的数字信息和原先新闻报道中本身就是阿拉伯数字信息,是否在对应的表格数据中出现,若出现,则匹配成功,认为该数字不需要进行推理;若不出现,则匹配失败,认为该数字需要进行推理计算,执行步骤一四;
步骤一四、若当前需要进行推理的数字出现的句子中不出现设定的关键词,则结束;
若当前需要进行推理的数字出现的句子中出现设定的关键词,(出现了球队,又出现了规则设定的例如前半场得分比,联合得分等关键词,比如-point victory,firsthalf,second half,combined for以多少分胜利,前半场,后半场,联合得到),构造推理目标计算序列,得到需要推理计算的数字,执行步骤一五;
步骤一五、将新闻报道中需要计算推理的数字,用#号进行替换;用#号统一代表可推理数字,#号即为设置的触发推理按钮。
对于过去几场比赛平均上场23分钟这种,无法用一场比赛信息推理计算出的数字,进行了去除,再剩下的结果,进行了写规则化的目标计算序列的构造:
例子:最终马刺队以99-86,13分击败火箭队。13分这个数据在表格数据中不存在,即是需要我们构造计算序列进行推理计算:首先那么定位13这个数字出现的这句话,发现马刺队和火箭队这两个实体关键字出现在了这句话中,同时又出现了两队的得分,因此:当需要推理13这个数字的时候,推理目标计算序列为99–86。99为马刺队得分,86为火箭队得分。
去噪构造计算目标序列后,可推理计算的数字的结果如表1:
表1表格中可推理的数字信息和相应的噪音信息
类别 | 比赛场数 | 表格中不存在的信息数 | 可推理数字 |
训练集 | 3398 | 3698 | 346 |
验证集 | 727 | 784 | 61 |
测试集 | 728 | 829 | 77 |
举例1:
The Miami Heat(1-0)defeated the Washington Wizards(0-1)107-95onWednesday at American Airlines Arena in Miami.In the first UNK regular seasongame for the Heat,they were able to pull out an12-point victory over theWizards…周三,在迈阿密美国航空体育馆迈阿密热火队(1-0)以107-95击败华盛顿奇才队(0-1)。在热火队常规赛的第一场比赛中,以12分优势大胜奇才队。
举例2:Rodney Stuckey and Monta Ellis combined for 23points,sixrebounds and seven assists off the bench…
罗德尼·斯塔基和蒙塔·埃利斯替补上场后一起得到23分,6个篮板和7次助攻。
注:1)例子1中,12分在表格原始输入中不存在,但是可以通过107-95得到热火队最后领先的优势。
2)例子2中,两人的联合得分23,6,7三个数据在表格中是没有的,需要将两人的得分、篮板和助攻都相加后才能得到。
3)可以推理的数字不仅是多赢几分,两人联合得分,还有球队前半场得分,前三节得分,第一节多赢几分等;
本发明方法最后是在可推理的数字上进行验证。
其它步骤及参数与具体实施方式一相同。
具体实施方式三:本实施方式与具体实施方式一或二不同的是,所述步骤二中将步骤一用#号替换后的表格的数据集(每场NBA比赛的表格数据)转化成若干个三元组,每个三元组具体形式为(球员/球队,具体属性,值),例如(湖人队,总得分,123),得到一场NBA比赛对应602个三元组;再对得到的三元组进行自身实体属性建模得到相应的向量最后,对同一个实体的所有记录(即一行的数据)进行MeanPooling(均值池化),得到同一实体(球员/球队)的总体表示rowi(hier模型);具体过程为:
该步骤的目的是将第i行,第j列的记录数据的原始向量表示ri,j(以ri,j为姚明本场助攻9个为例),通过引入和自身实体其他属性对比,得到新的表示助攻9的向量表示该向量得到了助攻9个在姚明这个实体得分、篮板、助攻等所有数据中的重要性。再对同一个实体的所有属性进行了MeanPooling,得到这个实体本场比较的综合表现。
表格中的每一个数据进行实体属性的建模,以姚明本场比赛中助攻9个为例,希望通过姚明的得分、篮板,抢断等一行内的其他数据来表示姚明的助攻9个,判断姚明本场比赛的助攻9个是否发挥失常或者发挥正常。
式中,∝为正比,为表格第i行,第j列的记录的转置;ri,j′为表格第i行,第j′列的记录,即除助攻外的其他篮板得分抢断等数据,j≠j′;Wo为模型训练参数,为表格中在姚明比赛的一行数据中,当前助攻9个和其他所有篮板12,助攻1等记录中的相关性占比的权重;(用简单例子来解释说明,假如球员亮亮的一行数据中,篮板为1,其他助攻11,得分25,抢断4等都很优秀,那么将篮板和得分、助攻等算相关性权重后,加权得到的是本次比赛亮亮篮板这个记录在亮亮所有数据记录中发挥不佳的表示,即用亮亮除篮板外的数据衡量小明篮板数据是否发挥正常);
对于每一个i,j都表示不同的表格中的数据记录,每个记录都如上进行自身实体属性建模,融入该记录在自身实体记录中的重要程度,形成新的记录表示,不仅仅是姚明的助攻,其他每一位球员/球队的得分、篮板、助攻、失误、抢断等,凡是表中的数据都进行自身实体属性建模形成新的表示向量。
步骤二二、对表格中同一个行的所有记录进行均值池化(MeanPooling),表格中同一个行属于一个实体,得到该实体的总体表示,表达式为:
式中,表示的是同一行的新的记录表示,即同一个球员或者球队的数据,例如艾尔的得分,艾尔的助攻......艾尔的抢断,通过MeanPooling,得到艾尔自身数据的总体表现。MeanPooling为均值池化,rowi为同一实体的总体表示。
拆分建模后,将行信息建模成向量,就是对图2a、图2b信息建模成行(球员/球队信息)向量。此时行向量表示一个实体,即球员/球队的综合整体表现。
其它步骤及参数与具体实施方式一或二相同。
具体实施方式四:本实施方式与具体实施方式一至三之一不同的是,所述步骤三中采用解码器LSTM对步骤二得到的同一实体的总体表示rowi进行解码,生成每个三元组的权重;
解码器根据三元组权重生成具体的文字,通过解码生成具体的文字有两种方式,一种从三元组中拷贝,即拷贝概率,另一种从词表中选择一个词来生成,即生成概率;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H(就是要判断这个#号到底是代替了哪个数字,要根据生成#号之前的文字来判断,例如现在生成了#号,生成#号前的文字是,马刺队99-86,因为这些文字是在#号之前生成的,所以生成#号的时候,隐层H也会蕴含马刺99-86这样的信息。)作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型。
具体过程为:
步骤三一、计算注意力权重;
步骤三二、当步骤二一确定了当前解码时刻哪个实体更重要之后,需要将当前的lstm的隐层H与实体向量计算权重后的H’,和该实体(球员/球队)的所有属性的三元组计算注意力权重,判断当前解码时刻更应该关注于该实体的那个属性。(举例,最后602个三元组中,(姚明,得分,20)这个三元组权重最高,那么生成的文字很可能就是提及了姚明的得分,即生成20这个数字。)从选出的球员或者球队中找出最关注的属性,例如得分,篮板之类);
计算每个三元组的注意力权重;
步骤三三、求解每个三元组在解码t时刻和lstm当前状态的相关程度,即三元组的权重(即有多少信息有用);
步骤三四、解码器根据三元组权重生成具体的文字,通过解码生成具体的文字有两种方式,一种从三元组中拷贝,即拷贝概率,另一种从词表中选择一个词来生成,即生成概率;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H(就是要判断这个#号到底是代替了哪个数字,要根据生成#号之前的文字来判断,例如现在生成了#号,生成#号前的文字是,马刺队99-86,因为这些文字是在#号之前生成的,所以生成#号的时候,隐层H也会蕴含马刺99-86这样的信息。)作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型。
其它步骤及参数与具体实施方式一至三之一相同。
具体实施方式五:本实施方式与具体实施方式一至四之一不同的是,所述步骤三一中计算注意力权重;公式为:
该时刻的注意力权重,即解码器LSTM拥有的隐层信息H,和每一行(即26个实体,2只球队,每队13名球员)的向量计算一个权重,根据得出的权重判断当前解码时刻应该更多的包含那个实体的信息(即选出当前解码时刻最重要的球队/球员);
βt,i∝exp(score(dt,rowi)) (5)
式中,βt,i为每个球员或者球队的注意力权重;
其它步骤及参数与具体实施方式一至四之一相同。
具体实施方式六:本实施方式与具体实施方式一至五之一不同的是,所述步骤三二中当步骤二一确定了当前解码时刻哪个实体更重要之后,需要将当前的lstm的隐层H与实体向量计算权重后的H’,和该实体(球员/球队)的所有属性的三元组计算注意力权重,判断当前解码时刻更应该关注于该实体的那个属性。(举例,最后602个三元组中,(姚明,得分,20)这个三元组权重最高,那么生成的文字很可能就是提及了姚明的得分,即生成20这个数字。)从选出的球员或者球队中找出最关注的属性,例如得分,篮板之类);
计算每个三元组的注意力权重,公式如下:
式中,γt,i,j为每个三元组的注意力权重;dt为解码的状态(解码时候拥有的信息H)。
其它步骤及参数与具体实施方式一至五之一相同。
具体实施方式七:本实施方式与具体实施方式一至六之一不同的是,所述步骤三三中求解每个三元组在解码t时刻和lstm当前状态的相关程度,即三元组的权重(即有多少信息有用),公式为:
其它步骤及参数与具体实施方式一至六之一相同。
具体实施方式八:本实施方式与具体实施方式一至七之一不同的是,所述步骤三四中解码器根据三元组权重生成具体的文字,通过解码生成具体的文字有两种方式,一种从三元组中拷贝,即拷贝概率,另一种从词表中选择一个词来生成,即生成概率;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H(就是要判断这个#号到底是代替了哪个数字,要根据生成#号之前的文字来判断,例如现在生成了#号,生成#号前的文字是,马刺队99-86,因为这些文字是在#号之前生成的,所以生成#号的时候,隐层H也会蕴含马刺99-86这样的信息。)作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型。
具体过程为:
将解码器LSTM当前时刻的隐层通过MLP函数,得到当前时刻生成内容的拷贝概率a,则生成概率为1-a;
所述MLP函数为多层感知机函数;
若拷贝概率a大于生成概率1-a,则从三元组中拷贝值,三元组中拷贝值确定过程为:通过解码器LSTM对步骤二得到的rowi进行解码,生成每个三元组的权重,在t时刻选择权重最大的三元组作为待拷贝三元组,生成的文字即待拷贝三元组中的值,例如,此时拷贝概率大于生成文字概率,那么找三元组权重,比如(姚明、得分、16)这个三元组权重大,那么生成的文字就是16;
若拷贝概率小于等于生成概率,则将解码器LSTM当前时刻的隐层映射到词表上,选择词表中概率最大的文字作为当前t时刻的生成文字;比如说我的词表有1000个词,那么就选出1000个词中概率最大的文字作为生成字。
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H(就是要判断这个#号到底是代替了哪个数字,要根据生成#号之前的文字来判断,例如现在生成了#号,生成#号前的文字是,马刺队99-86,因为这些文字是在#号之前生成的,所以生成#号的时候,隐层H也会蕴含马刺99-86这样的信息。)作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型。
(例如,解码目标-(马刺队以99-95,4分险胜火箭队),当解码器解码到“马刺队以99-95,#”出现了#号,那么进入推理模块,根据隐层H,得到了当前#是为了计算胜利优势,于是模型解码获取隐层信息H,生成99-95计算序列,最后将99-95得到的4返回“#”号位置,替换#号,接着继续生成目标4后的文字“分险胜火箭队”)。
推理子任务模块的解码步骤和步骤二解码步骤一致,首先和每个实体计算注意力权重,再和每个实体的属性计算注意力权重,得到推理模块此时解码器LSTM的隐层H最关注的三元组信息,根据三元组的信息生成具体的推理计算序列(例如,目标的推理计算序列为99-95,那么在解码的第一个时刻,解码器首先最有可能关注实体马刺队,然后从马刺队的属性中找到得分99这个三元组,选取得分99这个信息,生成推理计算序列的第一个文字99);
举例2
当解码器依次生成:
周三,在迈阿密美国航空体育馆迈阿密热火队(1-0)以107-95击败华盛顿奇才队(0-1)。在热火队常规赛的第一场比赛中,他们以#
此时解码器生成设置的标识符“#”字,说明此时需要进行推理计算,触发图2中的门控机制,进入推理数字的解码器,推理数字的解码器,通过已经生成的文字信息,判断到了此时需要推理的数字是两个队伍的分差,因此生成了107-95,将107-95=12,12分这个数字返回到触发门控机制槽位位置。
具体如下
周三,在迈阿密美国航空体育馆迈阿密热火队(1-0)以107-95击败华盛顿奇才队(0-1)。在热火队常规赛的第一场比赛中,他们以#-->进入推理解码器-->107-95=12--->将12分返回代替#号,于是原文变成:
周三,在迈阿密美国航空体育馆迈阿密热火队(1-0)以107-95击败华盛顿奇才队(0-1)。在热火队常规赛的第一场比赛中,他们以12接着继续生成分优势大胜奇才队。
其它步骤及参数与具体实施方式一至七之一相同。
采用以下实施例验证本发明的有益效果:
实施例一:
本实施例具体是按照以下步骤制备的:
对提出的方法进行了实现,和目前的增加表格信息方法对比。
以下表格中Gold为标准答案,Template为模板,CC模型为公知模型,NCP+CC(Puduppully et al.,2019)模型为目前Table-to-text已公布最优模型,论文:Data-to-text Generation with Entity Modeling,作者:Ratish Puduppully and Li Dong andMirella Lapata会议:Proceedings of the 57th Annual Meeting of the Associationfor Computational Linguistics;
表2实验结果在dev开发集上的结果
开发集
表3实验在测试集上的结果
测试集
上表2和表3显示了在ROTOWIRE开发集和测试集上,hier模型在实现了推理功能的前提下(表格第8行,倒数第1行),评价指标BLEU和不加推理模型的原Hier方法(表格第7行,倒数第2行),取得了更好的指标结果,同时CC模型(表格第3行)在实现推理功能的前提下,Blue和事实类指标和原模型CC(表格第1行)也几近相同。事实类指标为ACC、#、F1、P、R、DLD;
同一场比赛给出的标准答案:
层次化Hieratical模型给出的标准答案:
The Washington Wizards(26-12)defeated the San Antonio Spurs(23-16)101-93 on Friday.
The Wizards were able to exploit the Spurs in this one,out-scoringthe Spurs 31-24 in the first half.The visitors outscored the Spurs by 12 inthe first quarter and held a 30-point lead for the rest ofthe game..
周五,华盛顿奇才队(26胜12负)以101-93击败圣安东尼奥马刺队(23胜16负)。奇才队在这场比赛中,在上半场以31-24的比分领先马刺队。客队在第一节的得分比马刺队高出12分,在余下的比赛中一直保持着30分的领先。
注:31-24,12都是需要推理的数字。
增加表格数据后的Hieratical模型生成结果:
The Washington Wizards(26-12)defeated The San Antonio Spues(23-16)101-93 on Wednesday at the Verizon Center in Washington,After a strong firsthalfwhere the Spurs out-scored the Spurs 58-21,the Wizards were able to out-score Spurs 58-93lead at the half...
华盛顿奇才队(26胜12负)周三在华盛顿的威瑞森中心以101-93击败了圣安东尼奥马刺队(23胜16负)。在上半场马刺队以58-21领先马刺队,奇才队在上半场以58-93领先马刺队。
注:发现58生成正确,但21和98等数字都生成错误,同时语句生成也如原始Hieratical模型。
本发明推理机制的Hieratical模型生成结果:
The Washington Wizards(26-12)defeated The San Antonio Spues(23-16)101-93 on Monday at the Verizon Center in Washington.The Wizards were able toout-score the Spurs by a margin of 58-49 in the first half,but were able tocoast to an easy 8-point victory in front of their homr crowed...
华盛顿奇才队(26胜12负)周一在华盛顿的威瑞森中心以101-93击败圣安东尼奥马刺队(23胜16负)。奇才队在上半场以58-49的比分领先马刺队,最终在主场球迷的欢呼声中轻松以8分优势胜出。
注:本发明推理机制的Hieratical模型成功推理出了58,49,8分这样的数字。
注:带下划线部分的数字是表格中没有的信息,需要进行推理。First half表示前半场得分,应该是第一节和第二节的比分相加,表中58-49是正确的答案。
表4是同一场比赛数据给出的人工撰写的新闻文本以及在正常的Hieratical模型上和本发明的推理Hieratical模型上的结果。希望本发明模型生成的文本越接近人工撰写的新闻文本同时保持表格信息的准确度。
通过对比可以看出:没有加入推理机制的模型对于first half、全场领先分数等数据,生成了错误的结果,说明模型此时基本不具备推理能力;而增加了表格数据之后的模型,生成出了一部分正确的结果和一部分错误的信息,说明模型此时具备一定的推理能力;而加入推理机制的模型,成功推理出了半场的得分对比以及全场最终领先的分数,说明此时的模型的推理能力更强,能更好的推理出正确的数字。
表4是增加表格数据的方法和本发明提出的方法得到推理数字的准确率对比:
表4本发明推理机制方法和增加表格数据方法推理结果准确率对比
model | 推理准确率 |
CC(增加表格数据) | 22.95% |
CC(our,推理机制) | 63.93% |
hier(增加表格数据) | 32.70% |
hier(our,推理机制) | 65.57% |
可以看出,本发明提出的推理机制在两个模型上的推理能力都强于增加表格数据的方法。
同时,如表5,本发明提出的模型在最后的BLEU和事实类指标上也取得了SOTA的结果。
表5本发明的推理机制方法和增加表格数据方法结果对比
开发集
模型 | Acc% | # | F1% | P% | R% | DLD | BLEU |
CC(增加表格数据) | 81.34% | 13.11 | 32.86% | 34.63% | 31.27% | 14.08% | 12.04 |
CC(our,推理机制) | 85.31% | 12.58 | 37.61% | 41.37% | 34.47% | 15.96% | 12.5 |
hier(增加表格数据) | 90.82% | 23.79 | 42.73% | 35.95% | 52.67% | 18.62% | 16.14 |
hier(our,推理机制) | 92.17% | 21.72 | 46.86% | 43.37% | 50.95% | 21.80% | 16.86 |
测试集
模型 | 准确率% | # | F1% | P% | R% | DLD | BLEU |
CC(增加表格数据) | 87.51% | 26.62 | 33.23% | 26.23% | 45.32% | 12.96% | 12.04 |
CC(our,推理机制) | 88.68% | 18.15 | 36.63% | 33.87% | 39.89% | 15.17% | 12.64 |
hier(增加表格数据) | 93.97% | 31.55 | 40.11% | 30.85% | 57.31% | 16.87% | 16.62 |
hier(our,推理机制) | 94.58% | 27.96 | 46.07% | 37.20% | 60.49% | 19.94% | 18.59 |
通过以上实验结果表明,本发明提出的方式是有效的,提高了模型推理计算的能力,同时模型在相应的指标上也取得了优于其他模型的结果。
本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (8)
1.一种引入推理机制的文本生成方法,其特征在于:所述方法具体过程为:
步骤一、用#号替换表格数据信息对应的新闻报告中能推理的数字;
步骤二、将步骤一用#号替换后的表格的数据集转化成若干个三元组;再对得到的三元组进行自身实体属性建模得到相应的向量最后,对同一个实体的所有记录进行MeanPooling,得到同一实体的总体表示rowi;
步骤三、采用解码器LSTM对步骤二得到的同一实体的总体表示rowi进行解码,生成每个三元组的权重;
解码器根据三元组权重生成具体的文字,通过解码生成具体的文字有两种方式,一种从三元组中拷贝,即拷贝概率,另一种从词表中选择一个词来生成,即生成概率;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型。
2.根据权利要求1所述一种引入推理机制的文本生成方法,其特征在于:所述步骤一中用#号替换表格数据信息对应的新闻报告中能推理的数字;具体过程为:
步骤一一、在rotowire数据集中爬取NBA比赛数据,处理成如下形式:
每场NBA比赛数据包括相应的比赛数据和该场比赛对应的记者发表的新闻报道,其中比赛数据包括每场NBA比赛的主客队和所属球员的相关的表格数据信息;
步骤一二、将步骤一一中每场比赛的新闻报道中的所有数字信息统一转成阿拉伯数字;
步骤一三、判断步骤一二中的所有转成阿拉伯数字的数字信息和原先新闻报道中本身就是阿拉伯数字信息,是否在对应的表格数据中出现,若出现,则匹配成功,认为该数字不需要进行推理;若不出现,则匹配失败,认为该数字需要进行推理计算,执行步骤一四;
步骤一四、若当前需要进行推理的数字出现的句子中不出现设定的关键词,则结束;
若当前需要进行推理的数字出现的句子中出现设定的关键词,构造推理目标计算序列,得到需要推理计算的数字,执行步骤一五;
步骤一五、将新闻报道中需要计算推理的数字,用#号进行替换;#号即为设置的触发推理按钮。
3.根据权利要求1或2所述一种引入推理机制的文本生成方法,其特征在于:所述步骤二中将步骤一用#号替换后的表格的数据集转化成若干个三元组;再对得到的三元组进行自身实体属性建模得到相应的向量最后,对同一个实体的所有记录进行MeanPooling,得到同一实体的总体表示rowi;具体过程为:
步骤二二、对表格中同一个行的所有记录进行均值池化,表格中同一个行属于一个实体,得到该实体的总体表示,表达式为:
4.根据权利要求3所述一种引入推理机制的文本生成方法,其特征在于:所述步骤三中采用解码器LSTM对步骤二得到的同一实体的总体表示rowi进行解码,生成每个三元组的权重;
解码器根据三元组权重生成具体的文字,通过解码生成具体的文字有两种方式,一种从三元组中拷贝,即拷贝概率,另一种从词表中选择一个词来生成,即生成概率;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型;
具体过程为:
步骤三一、计算注意力权重;
步骤三二、计算每个三元组的注意力权重;
步骤三三、求解三元组的权重;
步骤三四、解码器根据三元组权重生成具体的文字,通过解码生成具体的文字有两种方式,一种从三元组中拷贝,即拷贝概率,另一种从词表中选择一个词来生成,即生成概率;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型。
5.根据权利要求4所述一种引入推理机制的文本生成方法,其特征在于:所述步骤三一中计算注意力权重;公式为:
βt,i∝exp(score(dt,rowi)) (5)
式中,βt,i为注意力权重;dt为解码的状态。
8.根据权利要求7所述一种引入推理机制的文本生成方法,其特征在于:所述步骤三四中解码器根据三元组权重生成具体的文字,通过解码生成具体的文字有两种方式,一种从三元组中拷贝,即拷贝概率,另一种从词表中选择一个词来生成,即生成概率;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型;
具体过程为:
将解码器LSTM当前时刻的隐层通过MLP函数,得到当前时刻生成内容的拷贝概率a,则生成概率为1-a;
所述MLP函数为多层感知机函数;
若拷贝概率a大于生成概率1-a,则从三元组中拷贝值,三元组中拷贝值确定过程为:通过解码器LSTM对步骤二得到的rowi进行解码,生成每个三元组的权重,在t时刻选择权重最大的三元组作为待拷贝三元组,生成的文字即待拷贝三元组中的值;
若拷贝概率小于等于生成概率,则将解码器LSTM当前时刻的隐层映射到词表上,选择词表中概率最大的文字作为当前t时刻的生成文字;
若生成的文字是“#”号,触发推理按钮,解码器LSTM将当前已经蕴含了已经生成文字的语义信息隐层状态H作为推理输入,生成计算序列,将计算序列得到的结果返回触发推理按钮位置,替换“#”号,解码器继续依次生成文字,直到文字生成了EOS结束标识,文字生成结束;
得到神经网络网格推理模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010061962.3A CN111310927B (zh) | 2020-01-19 | 2020-01-19 | 一种引入推理机制的文本生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010061962.3A CN111310927B (zh) | 2020-01-19 | 2020-01-19 | 一种引入推理机制的文本生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111310927A CN111310927A (zh) | 2020-06-19 |
CN111310927B true CN111310927B (zh) | 2022-04-15 |
Family
ID=71146847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010061962.3A Active CN111310927B (zh) | 2020-01-19 | 2020-01-19 | 一种引入推理机制的文本生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111310927B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651970B (zh) * | 2020-07-14 | 2022-07-22 | 华侨大学 | 基于表格型数据生成文本的方法、装置、设备及存储介质 |
CN112612868A (zh) * | 2020-11-24 | 2021-04-06 | 中国传媒大学 | 文本快速生成方法、计算机可读存储介质、电子设备 |
CN114091446A (zh) * | 2021-11-24 | 2022-02-25 | 北京有竹居网络技术有限公司 | 生成文本的方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1922594A (zh) * | 2003-09-11 | 2007-02-28 | 伊顿尼生物工程有限公司 | 用于基于触发序列进行文本输入的高效方法和装置 |
CN107750360A (zh) * | 2015-06-15 | 2018-03-02 | 微软技术许可有限责任公司 | 通过利用语言理解的上下文语言生成 |
WO2018227462A1 (en) * | 2017-06-15 | 2018-12-20 | Microsoft Technology Licensing, Llc | Method and apparatus for intelligent automated chatting |
CN109558591A (zh) * | 2018-11-28 | 2019-04-02 | 中国科学院软件研究所 | 中文事件检测方法及装置 |
CN110609986A (zh) * | 2019-09-30 | 2019-12-24 | 哈尔滨工业大学 | 一种基于预训练的结构化数据生成文本的方法 |
-
2020
- 2020-01-19 CN CN202010061962.3A patent/CN111310927B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1922594A (zh) * | 2003-09-11 | 2007-02-28 | 伊顿尼生物工程有限公司 | 用于基于触发序列进行文本输入的高效方法和装置 |
CN107750360A (zh) * | 2015-06-15 | 2018-03-02 | 微软技术许可有限责任公司 | 通过利用语言理解的上下文语言生成 |
WO2018227462A1 (en) * | 2017-06-15 | 2018-12-20 | Microsoft Technology Licensing, Llc | Method and apparatus for intelligent automated chatting |
CN109558591A (zh) * | 2018-11-28 | 2019-04-02 | 中国科学院软件研究所 | 中文事件检测方法及装置 |
CN110609986A (zh) * | 2019-09-30 | 2019-12-24 | 哈尔滨工业大学 | 一种基于预训练的结构化数据生成文本的方法 |
Non-Patent Citations (4)
Title |
---|
Generating Descriptions from Structured Data Using a Bifocal Attention Mechanism and Gated Orthogonalization;Preksha Nema 等;《arXiv》;20180420;1-12 * |
Operations Guided Neural Networks for High Fidelity Data-To-Text Generation;Feng Nie 等;《arXiv》;20180908;1-11 * |
基于特定任务域的自然语言生成系统实现方法;黄友能 等;《铁路计算机应用》;20041130;第13卷(第11期);11-13 * |
基于编码器共享和门控网络的生成式文本摘要方法;田珂珂 等;《北京大学学报(自然科学版)》;20190926;1-8 * |
Also Published As
Publication number | Publication date |
---|---|
CN111310927A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111310927B (zh) | 一种引入推理机制的文本生成方法 | |
Puduppully et al. | Data-to-text generation with content selection and planning | |
Basol et al. | Towards psychological herd immunity: Cross-cultural evidence for two prebunking interventions against COVID-19 misinformation | |
Lu et al. | Neural baby talk | |
Kiros et al. | Skip-thought vectors | |
Yaroshefsky | Cooperation With Federal Prosecutors: experiences of truth telling and embellishment | |
Murdock | Aspects of sentence retrieval | |
York et al. | Effects of fact-checking political misinformation on perceptual accuracy and epistemic political efficacy | |
Mouritsen | Contract interpretation with corpus linguistics | |
CN110609986B (zh) | 一种基于预训练的结构化数据生成文本的方法 | |
Silver | Libel, the Higher Truths of Art, and the First Amendment | |
US8620961B2 (en) | Mention-synchronous entity tracking: system and method for chaining mentions | |
Gowda et al. | Macro-average: rare types are important too | |
Gonzales et al. | Private reactions to public transgressions: Predictors of evaluative responses to allegations of political misconduct | |
Kabiri et al. | A social learning model of antisocial coaching behavior | |
Zhang et al. | Tablellama: Towards open large generalist models for tables | |
Hutchings et al. | A preliminary investigation of a new pictorial method of measuring aggression-supportive cognition among young aggressive males | |
Nair et al. | On reducing repetition in abstractive summarization | |
Ghosh et al. | Retrieval of prior court cases using witness testimonies | |
Wang | Myths and realities of Asian American success | |
Woo et al. | Improving recall and security of passphrases through use of mnemonics | |
Tversky | The Essential Tversky | |
Trott et al. | Spontaneous, controlled acts of reference between friends and strangers | |
Miller | Did Jesus Really Rise from the Dead?: A Surgeon-Scientist Examines the Evidence | |
Puduppully | Data-to-text generation with neural planning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |