本发明公开一种基于参考规范的专业文本生成方法及装置,属于自然语言处理的技术领域。
背景技术:
文本自动生成任务是指面向特定目标,对输入的数据进行加工处理,自动生成一段满足条件的文本,具有广泛的应用场景,如新闻生成、作文生成等。一些场景中需要对生成文本进行语义控制,如生成不同情绪类别的诗歌。在基于参考规范的专业文本生成场景中,参考规范是对知识点的相关描述,不同参考规范描述不同知识点的相关内容,用于指导生成文本满足与参考规范的语义相关性和知识点匹配性,知识点的匹配程度有多种,如完全正确描述了知识点,或是与知识点矛盾。在特定匹配程度下,生成的专业文本和真实的专业文本在知识点描述上的相似性即为知识点匹配性。基于参考规范的专业文本生成有重要的应用价值,例如在自动文本评阅系统中,通过一个评阅模型来对文本进行打分,而训练模型过程需要大量标注样本,在实际场景中难以满足,可以使用基于参考规范的专业文本生成技术产生标注样本,辅助训练评阅模型。这种应用在其他类似的监督学习任务中同样适用,本发明探索面向自然语言文本处理的知识空间预训练模型,具有重要的理论价值。
可控文本生成技术是自然语言处理领域的研究热点,随着深度学习技术的不断进展,前沿工作主要采用深度网络模型,在控制生成文本语义方面分两种形式,一种为控制生成文本的属性类别,如生成不同情感的文本;另一种为控制生成文本与指导性文本的语义相关性,如根据标题生成新闻;但这些控制方法主要针对生成文本的语言连贯性和与指导性文本的语义相关性,没有从逻辑层面评价与参考文本的专业知识匹配程度,因此不能对知识点匹配程度进行约束,无法满足本发明场景要求的文本。
本发明针对给定的参考规范,设计专业文本生成方法及装置,用于指导生成文本满足与参考规范的语义相关性和知识点匹配性,生成的专业文本需同时具备语言连贯性和文本形式多样性。
技术实现要素:
发明概述
针对现有技术的问题,本发明公开了一种基于参考规范的专业文本生成方法。
本发明还公开一种针对上述专业文本生成方法的对抗训练方法。
本发明还公开一种实现基于参考规范的专业文本生成方法的装置。
本发明采用k个生成器,分别负责生成一种知识点匹配程度的专业文本,各生成器均为结合注意力机制的自编码器结构,包括编码器和解码器两部分。在训练过程中,生成器每次生成一个词语,n次迭代后生成完整的文本;本发明采用两个判别器从多个角度评价生成文本,其中连贯性判别器用于评价生成文本的语言规范性和鼓励文本多样性,专业性判别器用于评价生成文本与参考规范的语义相关性和知识点匹配性,通过两个判别器反馈,得到一个综合评分,并将其返回给生成器,生成器通过此综合评分来更新模型参数;在生成文本每一步评价过程中,对不完整文本需要进行文本补全后送判别器进行评价;模型训练目标为使生成文本获得更高综合评分,从而获得一种专业文本生成方法及装置。
技术术语解释
知识点:特指教科书上或考试题中涉及的一个特定知识规则。例如,“名义股东在未经实际持股人同意投资而造成损失,并被实际持股人要求赔偿的情况下,有责任赔偿”是一个知识点。
参考规范:在本发明中指对特定的一个或多个专业知识点的相关规则、问题或案例描述文本。
专业文本:在本发明中指与参考规范语义相关,且与知识点具有特定类型的匹配程度的文本。
语义相关性:在本发明中指生成文本的描述内容和参考规范的描述内容的主题相关性。
知识点匹配程度:在本发明中是指专业文本与参考规范中描述的各知识点匹配正确或错误的情况。知识点匹配程度被划分为多个种类,令种类数为k,则真实专业文本和生成的专业文本均包含k个种类。
知识点匹配性:是指生成的专业文本同真实的专业文本在知识点匹配程度方面的一致性。
本发明的技术方案如下:
一种基于参考规范的专业文本生成方法,其特征在于,包括:
1)对输入的参考规范文本,利用生成器进行处理,输出已生成文本;
2)对已生成文本进行补全后,输入至判别器模块,经判别后得到综合评分;其中所述判别器模块包括连贯性判别器和专业性判别器:
所述连贯性判别器的输入为已生成的部分文本,简称partt,用于评价生成文本的语言规范,其中partt是指生成器迭代生成文本过程中某一时刻已经生成的不完整文本;
所述专业性判别器的输入为参考规范文本和将partt补全后文本,后者简称partta,用于评价生成文本partta与参考规范的语义相关性和知识点匹配性;
3)利用综合评分对所述生成器进行训练。
根据本发明优选的,所述方法还包括:
利用上述步骤1)-3)所述方法训练完成得到的生成器,在使用时,直接对输入的参考规范文本进行处理以生成专业文本。
根据本发明优选的,所述生成器、连贯性判别器和专业性判别器均为神经网络,其参数是指网络结构中的各个参数,所述步骤1)中包括k个生成器,其中,每个生成器包括编码器和解码器,生成器的个数和知识点匹配程度的种类数k相同;
所述编码器用于提取参考规范文本中的特征信息,使用单向循环神经网络,简记为
其中,r为参考规范文本的长度;
所述解码器根据参考规范文本的特征信息生成文本:使用单向循环神经网络,简记为
其中,
根据本发明优选的,在生成器的解码器中,使用双线性注意力机制将
使用softmax函数对
根据
将
最后采用softmax函数对
其中,依据
其中,所述
本技术特征的技术优点在于:采用注意力机制可以更有针对性地整合参考规范的信息,一方面使生成文本反映参考规范的内容,另一方面,在生成文本的不同时间步,对参考规范的关注点又有差异。
根据本发明优选的,所述连贯性判别器的工作流程,包括:
所述连贯性判别器,简记为
2-1)通过预训练的语言模型提取已生成的文本
2-2)输入到softmax函数中,得到字典中各词语作为下一个词语的概率
其中,t时刻生成的词语为
2-3)对连贯性进行评价,同时鼓励文本多样性,故采用如下动态阈值方式:
首先,设置两个超参数i和
对上述
然后,对已生成文本的连贯性评分记为
其中,当
本技术特征的优势在于:使得评分能够真实反映出文本连贯性的同时,增加生成文本的多样性。生成器为了获取更高的综合评分,会倾向于生成连贯性高的词语,当
根据本发明优选的,所述连贯性判别器对应的预训练语言模型为robertatiny。
根据本发明优选的,所述专业性判别器的工作流程,包括:
专业性判别器为一个多分类器,用于评价生成文本与参考规范的语义相关性和知识点匹配性,简记为
2-4)将所述生成文本按照与参考规范的关系,分为相关和不相关两大类;根据知识点匹配程度的不同,将与参考规范相关的文本分为相应的匹配种类,令知识点匹配程度的种类数为k;
加上与参考规范不相关的种类,最终
2-5)
在
对参考规范文本
再将上述
对补全的文本l先使用多种不同窗口大小的卷积操作分别特征编码,然后再通过池化操作得到多个向量,使用第i种窗口大小的cnn时的操作网络简记为
再将上述
使用全连接层分别对
其中,
使用softmax函数得到
其中,第1至k类分别表示l与参考规范相关且属于相应的知识点匹配种类的概率;第k+1类表示l与参考规范不相关的概率;
2-6)生成文本与参考规范的语义相关性评分记为
其中,所述
2-7)生成文本与参考规范的知识点匹配性评分记为
期望的文本种类对应的概率为
根据本发明优选的,所述生成器的损失函数计算过程:经过连贯性判别器和专业性判别器对第i个生成器生成的文本
其中
根据本发明优选的,为了使专业性判别器
其中,search表示生成器的一次补全操作,l为生成文本的最大长度;
第i个生成器
一种针对上述专业文本生成方法的对抗训练方法,其特征在于,包括:
本发明专业文本生成方法包括预训练和对抗训练两个阶段,通过预训练来使得对抗训练时生成器能够更快地收敛,并一定程度上缓解梯度消失问题;
基于对抗架构的专业文本生成模型,即professionaltextgenerativeadversarialnetworks,简称pt-gan;预训练pt-gan时,需要分别预训练各个生成器和专业性判别器
预训练每个生成器时,先使用各个种类的文本汇总后的数据集进行训练,然后再分别用各个种类的文本训练对应的生成器,将训练集中的真实专业文本按照文本序列预测方式使用,即转换为一段文本以及其下一个词语的形式,分别记为x和y。具体过程为:先取文本中的一段文本x,以y表示x的下一个词语;并将y转换为词汇表字典的独热one-hot形式;将x和其对应的参考规范文本作为生成器的输入,y作为参考值,并通过最大似然估计来计算损失进行训练;训练集包含多条参考规范,每条参考规范对应多个知识点匹配种类的文本。对每个生成器,先使用各个种类的文本汇总后的数据集进行训练,然后再使用对应种类的文本进行训练;预训练生成器的流程图如附图1所示;
所述对连贯性判别器
所述预训练专业性判别器
在对抗训练pt-gan时,先使用预训练保存的模型权重进行初始化,然后对生成器和
一种实现基于参考规范的专业文本生成方法的装置,其特征在于,包括生成器和判别器模块;
所述生成器用于:对输入的参考规范文本进行处理,输出已生成文本;
所述判别器模块包括连贯性判别器和专业性判别器;所述连贯性判别器的输入为已经生成的部分文本,用于评价生成文本的语言规范;所述专业性判别器的输入为参考规范和补全后的文本,用于评价生成文本与参考规范的语义相关性和知识点匹配性。
根据本发明优选的,所述生成器为k个生成器,每个所述生成器分别负责生成一种知识点匹配程度的专业文本;每个所述生成器均为结合注意力机制的自编码器结构,包括编码器和解码器。
根据本发明优选的,所述生成器每次生成一个词语,n次迭代后生成完整的文本,对不完整的文本进行文本补全。“n次迭代”中的“n次”即指生成完整文本所需要的迭代次数,由于不同的句子词语的数量不同,因此需要的迭代次数也不相同,n是自然数。
本发明的优势在于:
(1)本发明提出了基于参考规范的条件生成器结构。采用多个独立的生成器,分别生成不同知识点匹配种类的文本,并且在生成文本的每一步进行评价和反馈,指导专业文本生成过程,本技术能够使生成器更好地获得参考规范包含的知识点语义。每个生成器均为自编码器结构,包括编码器和解码器。将已知的参考规范作为输入,生成的专业文本作为输出。在生成器中先对参考规范进行编码,然后使用注意力机制得到当前时刻对参考规范中的各个词语的不同关注程度,融合已经生成的部分文本的特征信息,指导生成下一个词语;在相同参考规范下,生成不同知识点匹配种类的文本时,不同生成器对参考规范的关注点不同,而各个生成器中的编码器提取得到的特征也不同;这种信息融合方式,能够有针对性地提取对当前时刻更重要的信息,从而有效地指导文本生成过程,更利于生成符合相应知识点匹配种类的文本。
(2)本发明提出多角度评价生成文本的方式,能够更好地指导生成文本满足语言学和专业知识点要求。采用多判别器相结合的方式,对生成文本同时进行连贯性、与参考规范的语义相关性以及知识点匹配性的约束。连贯性判别器为一个语言模型,用于对生成文本的语言规范进行评价,通过本发明阈值设定方法,鼓励生成多样性文本。专业性判别器为一个多分类器,用于对生成文本与参考规范的语义相关性和知识点匹配性进行评价。然后将判别器的分析结果进行汇总,得到一个综合的评价,这样就能使得生成器得到的反馈值包含更多的信息。同时,本技术对于文本生成过程进行评价,针对生成过程的每一个词汇通过多个补全文本,从不同角度对生成的部分文本进行分析。这种评价方式相较于传统的生成完整文本评价方式或是单一判别器方式,能够使生成器更好地学习到专业知识和语言学知识,生成更高质量的符合要求的专业文本。
附图说明
图1是本发明所述生成器的预训练流程图;
图2是本发明所述连贯性判别器的微调过程流程图;
图3是本发明所述针对基于参考规范的专业文本生成方法的对抗训练方法构架图;
图4是本发明所述基于参考规范的专业文本生成方法中的生成器经过训练后生成专业文本时的构架图。
具体实施方式
下面结合实施例和说明书附图对本发明做详细的说明,但不限于此。
实施例1、
如附图3所示,一种基于参考规范的专业文本生成方法,包括:
1)对输入的参考规范文本,利用生成器进行处理,输出已生成文本;
2)对已生成文本进行补全后,输入至判别器模块,经判别后得到综合评分;其中所述判别器模块包括连贯性判别器和专业性判别器:
所述连贯性判别器的输入为已生成的部分文本,简称partt,用于评价生成文本的语言规范,其中partt是指生成器迭代生成文本过程中某一时刻已经生成的不完整文本;
所述专业性判别器的输入为参考规范文本和将partt补全后文本,后者简称partta,用于评价生成文本partta与参考规范的语义相关性和知识点匹配性;
3)利用综合评分对所述生成器进行训练。
所述生成器、连贯性判别器和专业性判别器均为神经网络,其参数是指网络结构中的各个参数,所述步骤1)中包括k个生成器,其中,每个生成器包括编码器和解码器,生成器的个数和知识点匹配程度的种类数k相同;
所述编码器用于提取参考规范文本中的特征信息,使用单向循环神经网络,本实施例优选lstm作为编码器,简记为
其中,r为参考规范文本的长度;
所述解码器根据参考规范文本的特征信息生成文本:使用单向循环神经网络,本实施例优选lstm作为解码器,使用注意力机制将参考规范文本r的特征信息
其中,
在生成器的解码器中,使用双线性注意力机制将
使用softmax函数对
根据
将
最后采用softmax函数对
其中,依据
其中,所述
所述连贯性判别器的工作流程,包括:
所述连贯性判别器,简记为
2-1)通过预训练的语言模型提取已生成的文本
2-2)输入到softmax函数中,得到字典中各词语作为下一个词语的概率
其中,t时刻生成的词语为
2-3)对连贯性进行评价,同时鼓励文本多样性,故采用如下动态阈值方式:
首先,设置两个超参数i和
对上述
然后,对已生成文本的连贯性评分记为
其中,当
所述连贯性判别器对应的预训练语言模型为robertatiny。
所述专业性判别器的工作流程,包括:
专业性判别器为一个多分类器,用于评价生成文本与参考规范的语义相关性和知识点匹配性,简记为
2-4)将所述生成文本按照与参考规范的关系,分为相关和不相关两大类;根据知识点匹配程度的不同,将与参考规范相关的文本分为相应的匹配种类,令知识点匹配程度的种类数为k;
加上与参考规范不相关的种类,最终
2-5)
在
对参考规范文本
再将上述
对补全的文本l先使用多种不同窗口大小的卷积操作分别特征编码,然后再通过池化操作得到多个向量,使用第i种窗口大小的cnn时的操作网络简记为
再将上述
使用全连接层分别对
其中,
使用softmax函数得到l属于各个种类的概率
其中,第1至k类分别表示l与参考规范相关且属于相应的知识点匹配种类的概率;第k+1类表示l与参考规范不相关的概率;
2-6)生成文本与参考规范的语义相关性评分记为
其中,所述
2-7)生成文本与参考规范的知识点匹配性评分记为
期望的文本种类对应的概率为
所述生成器的损失函数计算过程:经过连贯性判别器和专业性判别器对第i个生成器生成的文本
其中
实施例2、
如实施例1所述的一种基于参考规范的专业文本生成方法,对
其中,search表示生成器的一次补全操作,l为生成文本的最大长度;
第i个生成器
实施例3、
一种针对实施例1、2所述专业文本生成方法的对抗训练方法,包括:
基于对抗架构的专业文本生成模型,即professionaltextgenerativeadversarialnetworks,简称pt-gan。预训练pt-gan时,需要分别预训练各个生成器和专业性判别器
预训练每个生成器时,先使用各个种类的文本汇总后的数据集进行训练,然后再分别用各个种类的文本训练对应的生成器,将训练集中的真实专业文本按照文本序列预测方式使用,即转换为一段文本以及其下一个词语的形式,分别记为x和y。具体过程为:先取文本中的一段文本x,以y表示x的下一个词语;并将y转换为词汇表字典的独热one-hot形式;将x和其对应的参考规范文本作为生成器的输入,y作为参考值,并通过最大似然估计来计算损失进行训练;训练集包含多条参考规范,每条参考规范对应多个知识点匹配种类的文本。对每个生成器,先使用各个种类的文本汇总后的数据集进行训练,然后再使用对应种类的文本进行训练;预训练生成器的流程图如附图1所示;
所述对连贯性判别器
所述预训练专业性判别器
在对抗训练pt-gan时,先使用预训练保存的模型权重进行初始化,然后对生成器和
实施例4、
一种实现基于参考规范的专业文本生成方法的装置,包括生成器和判别器模块;
所述生成器用于:对输入的参考规范文本进行处理,输出已生成文本;
所述判别器模块包括连贯性判别器和专业性判别器;所述连贯性判别器的输入为已经生成的部分文本,用于评价生成文本的语言规范;所述专业性判别器的输入为参考规范和补全后的文本,用于评价生成文本与参考规范的语义相关性和知识点匹配性。
所述生成器为k个生成器,每个所述生成器分别负责生成一种知识点匹配程度的专业文本;每个所述生成器均为结合注意力机制的自编码器结构,包括编码器和解码器。
所述生成器每次生成一个词语,n次迭代后生成完整的文本,对不完整的文本进行文本补全。
实施例5、
利用实施例1-4进行处理的方法,包括:
利用上述步骤1)-3)所述方法训练完成得到的生成器,在使用时,直接对输入的参考规范文本进行处理以生成专业文本。
应用例1、
将本发明应用到具体场景1,具体如下:
其中,数据集包含多条参考规范文本,每条参考规范文本对应若干的专业文本;参考规范均包含两个知识点,专业文本根据知识点匹配程度的不同被分为三类,分别记为种类1、种类2和种类3,知识点匹配程度的种类数k为3,生成器的个数和知识点匹配程度的种类数k相同,因此生成器的个数也为3。
种类1对应知识点1错误而知识点2正确以及两个知识点都错误的情况;
种类2对应知识点1正确而知识点2错误的情况;
种类3对应知识点1和知识点2都正确的情况。
如附图3所示,结合对抗训练,所述3个生成器的训练过程为:
将参考规范文本输入到各个生成器中,第i个生成器的计算过程为:
对输入的参考规范根据实施例1-3中的公式(1)-(9)计算,得到生成的不完整文本
将
通过对
通过公式(19),根据
对
对抗训练中,两个判别器的训练过程为:
连贯性判别器保持不变,不参加对抗训练。
向专业性判别器中输入参考规范文本r和经过补全后的完整文本,得到预测的概率向量,通过交叉熵计算损失来更新自身参数。
使用生成器生成专业文本的过程如附图4所示:
一条参考规范文本r为:“……张某未经王某、赵某同意能否变更为甲公司股东
第1个知识点的正确回答为“不能”,错误回答为“能”;
第2个知识点的正确回答为“没有得到其他股东半数以上同意”,其他意义的回答均为错误。
将所述r输入到各个生成器中,第1个生成器生成若干与r语义相关的种类1的专业文本,第2个生成器生成若干与r语义相关的种类2的专业文本,第3个生成器生成若干与r语义相关的种类3的专业文本,生成的专业文本样例如表1所示:
表1生成文本样例
应用例2、
将本发明应用到具体场景2,具体如下:
数据集包含多条参考规范,每条参考规范对应若干的专业文本。参考规范均包含两个知识点,专业文本根据知识点匹配程度的不同被分为三类,分别记为种类1、种类2和种类3,知识点匹配程度的种类数k为3,生成器的个数和知识点匹配程度的种类数k相同,因此生成器的个数也为3。
种类1对应知识点1错误而知识点2正确以及两个知识点都错误的情况;
种类2对应知识点1正确而知识点2错误的情况;
种类3对应知识点1和知识点2都正确的情况。
如附图3所示,结合对抗训练,所述3个生成器的训练过程为:
将参考规范输入到各个生成器中,第i个生成器的计算过程为:
对输入的参考规范根据公式(1)-(9)计算,得到生成的不完整文本
将
通过对
通过公式(19),根据
对
对抗训练中,两个判别器的训练过程为:
连贯性判别器保持不变,不参加对抗训练。
向专业性判别器中输入参考规范r和经过补全后的完整文本,得到预测的概率向量,通过交叉熵计算损失来更新自身参数。
使用生成器生成专业文本的过程如附图4所示:
一条参考规范文本r为:“……李某是否有权拒绝承担补充赔偿责任
第1个知识点的正确回答为“无权”,错误回答为“有权”;
第2个知识点的正确回答为“名义出资股东应当承担补充赔偿责任”,其他意义的回答均为错误。
将所述r输入到各个生成器中,第1个生成器生成若干与r语义相关的种类1的专业文本,第2个生成器生成若干与r语义相关的种类2的专业文本,第3个生成器生成若干与r语义相关的种类3的专业文本,生成的专业文本样例如表2所示。生成器生成文本时从开始迭代生成下一个词语,直到生成完整的文本或达到最大生成文本长度,其中最大生成文本长度可设置,如表2所示:
表2生成文本样例