CN114298010A - 一种融合双语言模型和句子检测的文本生成方法 - Google Patents
一种融合双语言模型和句子检测的文本生成方法 Download PDFInfo
- Publication number
- CN114298010A CN114298010A CN202111499830.XA CN202111499830A CN114298010A CN 114298010 A CN114298010 A CN 114298010A CN 202111499830 A CN202111499830 A CN 202111499830A CN 114298010 A CN114298010 A CN 114298010A
- Authority
- CN
- China
- Prior art keywords
- sentence
- language model
- text
- model
- speech
- 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.)
- Pending
Links
Images
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种融合双语言模型和句子检测的文本生成方法,该方法步骤包括:语言模型M1和语言模型M2同步扩展关键词前后的单词;语言模型M1正向预测下一字符得到新文本S1,语言模型M2反向预测下一个字符得到新文本S2,拼接新文本S1和新文本S2得到句子;句子满足输出条件则输出句子,否则作为新的输入;基于规约的句法分析方法对句子进行结构分析,句子能规约至文法起始符则符合句法规则;使用N‑Gram统计模型对符合句法规则的候选句子计算语言得分,若候选句子的语言得分超过设定阈值则作为最终文本输出。本发明可应用于句子构造、文章生成等创造性的文本生成任务中,有效解决以往生成技术中句子丰富度低、可读性差的问题。
Description
技术领域
本发明涉及文本生成技术领域,具体涉及一种融合双语言模型和句子检测的文本生成方法。
背景技术
文本生成技术是自然语言处理领域的重要分支,被广泛应用于摘要生成、机器翻译、对话系统等特定任务中,文本生成技术可应用于真实场景中,例如在文章生成、诗歌写作等场景中,可应用文本生成技术实现文本自动生成,大大降低手工成本;在新闻信息提取、评论分析等场景中,可应用文本生成技术快速获取关键语句;在智能对话、机器翻译等场景中,可应用文本生成技术提升人机交互过程中的效率。
常见的文本生成技术可大致分为两类:基于规则的文本生成技术和基于深度学习的文本生成技术。基于规则的文本生成技术主要依赖规则词表,在强规则使用场景(例如新闻摘要、财报生成等)较为常用,且生成效率高,但是规则词表的修改和扩充较为麻烦,需要大量手工构造;基于深度学习的文本生成技术可实现流程自动化,大大减少人工成本,其智能化程度远高于基于规则的文本生成技术,被广泛应用于较为复杂的场景中(例如智能对话,机器翻译,诗歌写作等)。因为自然语言本身所具有的歧义性和多义性,所以生成符合人类认知的文本仍是一个巨大的挑战。
目前已有一些解决方案,例如现有技术提出一种基于规则的文本生成方法,该方法首先定位用户输入的关键字,通过正排检索和倒排检索从文本语料库中获取包含关键词的段落S1,接着利用文本相似度匹配,筛选出与S1文本内容最相似的段落S2,以上匹配操作反复迭代,直到获取段落的总数达到规定数目,最后将所有段落重组生成一篇文章。该方法由人工进行语料采集、数据处理、构建索引表,故文本生成过程耗时耗力,并且该方法生成的文本由固定语料库中的段落组合而成,故文本内容有限,丰富度较低。
论文《A Neural Network Model for Chinese Sentence Generation with KeyWord》提出一种基于关键词的文本生成方法,该方法以关键词为输入,双向(前后)扩展关键词直至生成句子。该方法利用两个LSTM模型,前LSTM模型补充关键词右边的单词,生成一个句子S1,后LSTM模型补充S1左边的单词生成S2,交替使用两个LSTM模型扩展单词,直至生成句子;深度学习模型在预测下一个字符的时候,采用最大值采样或者随机采样法,最大值采样法导致生成的句子重复率高,随机采样法导致生成的句子随机性强,连贯性差,语义合理性弱,且通过深度学习模型生成文本难以保证句法的正确性和语义的合理性。
发明内容
为了克服现有技术存在的缺陷与不足,本发明提供一种融合双语言模型和句子检测的文本生成方法,使用由神经网络模型训练得到的双语言模型同步扩展文本前后部分的单词,改进了之前技术中交叉迭代生成速度慢的缺陷,并通过top_k法和词性加权法改进传统随机采样方法中句子随机性差和连贯性差的缺点,通过结合基于文法规约的句法分析方法和基于Tri-Gram统计模型的语义分析方法来进一步检查生成句子的合理性,使得生成的句子更加贴近人类造句。
为了达到上述目的,本发明采用以下技术方案:
本发明提供一种融合双语言模型和句子检测的文本生成方法,包括下述步骤:
获取输入关键词,语言模型M1和语言模型M2同步扩展关键词前后的单词;
所述语言模型M1正向预测下一字符得到新文本S1,所述语言模型M2反向预测下一个字符得到新文本S2,拼接新文本S1和新文本S2得到句子;
判定句子是否满足输出条件,满足输出条件则输出句子,否则作为新的输入;
基于规约的句法分析方法对句子进行结构分析,若句子能规约至文法起始符,则句子符合句法规则;
使用N-Gram统计模型对符合句法规则的候选句子计算语言得分,若候选句子的语言得分超过设定阈值,则该候选句子作为最终文本输出。
作为优选的技术方案,所述语言模型M1和语言模型M2同步扩展关键词前后的单词,具体步骤包括:
输入关键词至训练好的语言模型M1、语言模型M2,语言模型M1、语言模型M2分别预测下一字符,得到下一字符的原始概率分布;
采用top_k法选取字符及对应的预测概率,更新预测集合;
通过训练集生成词性临值表,通过词性临值表获取更新后预测集合中对应词性组合的词性临值,将词性临值与原始概率相乘得到新的概率分布;
将概率分布进行重分布,随机采样得到下一个字符nw以及下一个字符fw;
将输入的关键词kw分别与随机采样得到的字符nw、字符fw拼接得到拼接序列kw+nw、拼接序列fw+kw;
拼接语言模型M1和语言模型M2的预测结果,得到文本S=fw+kw+nw。
作为优选的技术方案,所述通过训练集生成词性临值表,具体步骤包括:
对于词性pos,词性sk的单词紧跟在词性pos单词后面的概率为:
其中,numk表示词性组合pos+sk在训练集出现的次数,n表示词性种类个数,最终生成大小为n*n的词性临值表Q。
作为优选的技术方案,将概率分布进行重分布,具体计算公式为:
其中,π(wk)表示重分布后的概率值,temperature表示比例因子,wk表示更新预测集合中的候选词,p(wk)表示候选词对应的概率。
作为优选的技术方案,所述基于规约的句法分析方法对句子进行结构分析,具体步骤包括:
将句子中所有字符的词性进行标注,每个字符都设有对应的非终结符,根据文法G规约句子,若句子能规约至文法起始符S,则句子符合句法规则。
作为优选的技术方案,所述基于规约的句法分析方法对句子进行结构分析,采用基于CFG规则的CYK算法,构建一个大小为[n+1,n+1]的识别矩阵,n是输入句子Sen的单词总数。
作为优选的技术方案,所述识别矩阵构建步骤包括:
定义ti,j为识别矩阵中坐标[i,j]的值,构造主对角线t0,0=0,t1,1到tn,n依次放入输入句子的单词wi;
构造主对角线右上方的对角线t0,1到tn-1,n,其中t1,1到tk-1,k=G(wk),其中G(wk)表示文法G中推导出wk的非终结符;
构造主对角线右上方的剩下对角线,对于ti,j,若文法G中存在产生式A→ti,j- 1ti+1,j,则ti,j=A,否则ti,j=ti,j-1。
作为优选的技术方案,所述使用N-Gram统计模型对符合句法规则的候选句子计算语言得分,具体采用Tri-Gram模型,通过计算各个词出现概率的乘积得到句子出现的概率。
作为优选的技术方案,所述语言模型M1和语言模型M2结构相同,采用神经网络模型LSTM、GRU或Transform中的任意一种。
本发明还提供一种融合双语言模型和句子检测的文本生成系统,包括:关键词获取模块、语言模型M1、语言模型M2、拼接模块、句子生成条件判断模块、句子结构分析模块、语义分析模块、文本输出模块;
所述关键词获取模块用于获取输入关键词,所述语言模型M1和语言模型M2同步扩展关键词前后的单词;
所述语言模型M1正向预测下一字符得到新文本S1,所述语言模型M2反向预测下一个字符得到新文本S2;
所述拼接模块用于拼接新文本S1和新文本S2得到句子;
所述句子生成条件判断模块用于判定句子是否满足输出条件,满足输出条件则输出句子,否则作为新的输入;
所述句子结构分析模块用于基于规约的句法分析方法对句子进行结构分析,若句子能规约至文法起始符,则句子符合句法规则;
所述语义分析模块用于使用N-Gram统计模型对符合句法规则的候选句子计算语言得分;
所述文本输出模块用于输出最终文本,若候选句子的语言得分超过设定阈值,则该候选句子作为最终文本输出。
本发明与现有技术相比,具有如下优点和有益效果:
(1)本发明通过双语言模型和句子检测器,基于关键词生成语法正确且语义合理的文本,在双语言模型中,采用双模型同步生成机制,改善交替生成法的生成效率低的问题;在采样策略中,针对现有技术中随机采样法存在句子随机性差和连贯性差的缺点,通过top_k法和词性加权法改善其缺陷;在句子检测器中,采用基于文法规约的句法分析方法和基于N-Gram统计模型的语义分析方法,检测句子的句法合理性和语义合理性,使得生成的句子更加贴近人类造句,本发明应用于句子构造、文章生成等创造性的文本生成任务中,可以有效解决以往生成技术生成的句子丰富度低、可读性差的问题。
(2)本发明通过训练好的Tri-Gram语言模型,为生成的文本进行语义打分,进一步保证生成文本的质量。在使用阶段,直接调用基于开源模型KenLM生成的模型,快速计算文本得分,提高效率。
附图说明
图1为本发明融合双语言模型和句子检测的文本生成方法的流程示意图;
图2为本发明的句子生成流程示意图;
图3为本发明句子生成中扩展关键词前后部分的流程示意图;
图4为本发明的句子检测流程示意图;
图5为本发明的文法规则示意图;
图6为本发明的识别矩阵示意图;
图7为本发明具体应用实例的识别矩阵示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例1
如图1、图2所示,本实施例提供一种融合双语言模型和句子检测的文本生成方法,主要包括两个步骤:①双语言模型生成句子;②句子检测器检测句子。在步骤①中,两个语言模型同步扩展关键词前后向字符,拼接成新文本后重新输入两个模型,继续扩展,如此循环直至生成一个候选句子;在步骤②中,通过对句子进行句子结构分析,若句子能成功规约至文法起始符S,则句子满足合理的句法结构;接着N-Gram模型对候选句子进行打分,通过得分是否超过阈值判断句子是否满足语义合理性。
在本实施例中,双语言模型生成句子:两个语言模型M1和M2同步扩展关键词前后向字符,每一次扩展后进行文本拼接,接着判断拼接后的文本是否满足输出句子的条件,满足则输出,否则将此次的生成结果作为两个模型新的输入,进行新一轮生成任务,如此循环直至生成一个候选句子;
在本实施例中,两个语言模型是神经网络模型结构,由已知的数据集训练得到。在训练集确定的情况下,语言模型M1和M2的构建和训练决定句子生成效果。两个模型结构一致,区别只在于训练样本的构造不同,故两个模型从训练数据中学习到的知识是不一致的。两个模型只要满足序列到序列的输入输出结构即可,不限于LSTM、GRU、Transform等神经网络模型。
在本实施例中,为双语言模型构造训练样本包含两个步骤:数据预处理、构建符合模型结构的数据对(x,y)。假设已有数据集D,D中包含若干条文本,则构建训练样本主要过程如下:
数据预处理阶段,首先为每个文本添加开始和结束的标记,记为“Begf”和“Endf”;接着将每一个文本填充为固定长度,并向量化表示文本,记为S={x0,x1,...,xt-1,xt}。
构建数据对阶段,针对两个语言构建不同的训练数据集,为模型M1构建训练数据集D1,为模型M2构建训练数据集D2。
在D1中,对于一个文本S={x0,x1,...,xt-1,xt},其转化成符合模型输入输出的数据对,形式为:
(x,y)=({x0,x1,...,xt-1},{x1,...,xt-1,xt})
在D2中,对于文本S={x0,x1,...,xt-1,xt},先逆转成Sr={xt,xt-1,...,x1,x0}再转化成符合模型输入输出的数据对为(x,y)=({xt,xt-1,...,x1},{xt-1,...,x1,x0})。
构建好的训练数据用于语言模型M1和语言模型M2的训练,并在训练好后将语言模型M1和语言模型M2保存在本地,在后续生成阶段直接调用即可。
具体步骤包括:
S1:输入关键词kw,是文本生成任务的原始输入,本发明的目的是生成一个包含该关键词的句子。为了保证生成效果,关键词kw必须为词典(基于训练集生成的词典)中词频大于1000的单词。因为在模型训练过程中,词频高的单词被学习次数多,模型从中学习到的知识更加丰富,在生成阶段,基于这些高词频的词生成的句子在句法、语义等方面更加合理。
S2:经过训练的语言模型M1和M2同步扩展关键词kw前后的单词,本实施例提出双语言模型同步扩展技术完成基于关键词的句子生成任务,较现有技术中通过交替迭代扩展关键词前后部分的方法,同步扩展大大加快了生成速率;
如图3所示,语言模型M1扩展关键词kw的步骤具体包括:
S21:模型的输入是一个已知文本序列(即关键词)kw。
S22:已知文本序列输入至训练好的语言模型M1得到一个预测集合P,预测集合P中存放预测下一个单词的所有可能以及每一个单词对应预测概率,可以表示为:
P={w1:p1,w:p2,...,wn:pn}
其中wk是预测字符,pk是预测概率。其中n为训练集合中的总单词数。
S23:预测集合的大小由训练集的词典(存放训练集中出现过的所有单词及序号)大小决定。文本的训练集大小在几千至几十万不等,总单词数少则上千多则上万。为了缓解生成不常见单词的问题,每次从概率最高的前t个单词做采样。故预测集合更新为:
P1={w1:p1,w:p2,...,wt:pt}
在本发明中,提出t的计算公式如下:
其中n为训练集合中的总单词数。
S24:本发明提出词性临值的概念,词性临值衡量不同词性单词在文本中相邻的概率。较其他语言,英文文本有规则性强的特点,例如动词后面紧跟名词、冠词等,但不会是动词。为了降低随机采样中出现这种错误的概率,将相邻词性值加到概率分布中,使得采样过程更加合理。
在本实施例中,通过训练数据集生成一个固定的词性临值表Q。具体而言,对于词性pos,词性sk的单词紧跟在pos词性单词后面的概率为:
其中numk表示“pos+sk”这种词性组合在训练集出现的次数,n代表一共有n种词性。最终生成大小为n*n的词性临值表Q。
S25:在经过前面步骤一系列操作后,预测集合中的概率值已经不满足正则化要求,对P*中的概率值进行重计算,计算公式为:
temperature是比例因子,用于对概率分布加权,temperature越接近于0,采样越具有确定性(即更有可能选择概率最大的单词),而temperature为1,则表明每个单词都会按照模型输出概率进行选择。实验中,temperature取值为0.2比temperature取值为1的时候单词选择结果更为连贯。为了平衡生成文本的丰富性和连贯性,temperature取值最优控制在[0.2,0,6]。
计算得到最终的概率分布后,随机采样得到下一个单词nw。
本发明通过选择top_k个单词,并通过词性概率加权重计算概率值,使得概率分布更加合理,减小随机采样带来的不确定性,使得生成的句子更加合理。
S26:输入的已知序列和采样得到的单词进行拼接得到kw+nw。
语言模型M2扩展步骤同语言模型M1,只是在步骤S26中,拼接是从将采样得到的单词拼接在kw的前面。假设经过M2预测采样得到的单词为fw,则拼接后的序列为fw+kw。
S3:拼接语言模型M1和语言模型M2的预测结果,得到文本S=fw+kw+nw。
S4:判断文本S是否满足输出条件,当生成后的字符序列长度大于最大值(提前设定好最大值ε=60,ε值大小由具体任务而定,属于人工调节的超参数)或者文本S最后一个字符为END,则算法终止,输出结果。否则将文本S作为已知序列,转至步骤S2继续扩展文本S。
句子检测器检测句子:在句子检测器中,联合基于规约的句法分析方法和基于N-Gram统计模型的语义分析方法,检测句子的句法合理性和语义合理性,在上述步骤中,通过两个语言模型同步扩展,已经生成一个候选句子,在检测环节分为两部分:一是对句子进行句子结构分析,若句子能成功规约至文法起始符S,则句子满足合理的句法结构;二是使用N-Gram统计模型对候选句子进行打分,通过得分是否超过阈值判断句子是否满足语义合理性。当且仅当候选句子通过两步的检测,才作为最终结果输出,否则生成的句子无效。
如图4所示,句子检测器的工作流程具体包括:
S5:首先将句子Sen中所有单词的词性进行标注,每个单词都有对应的非终结符。接着,如图5所示,根据文法G规约句子,如果句子能够成功规约至规则起始符号S,则句子Sen通过句法规则检测。否则生成的句子Sen无效处理,需重新执行句子生成部分。
其中,图5所示的文法是句法分析中常用到的句法规则,涵盖了大部分英文文本的句法结构。
本发明通过句法分析检查句子结构的合理性,句法分析是自然语言处理的基础任务之一,但目前鲜有相关技术用于文本生成,且本发明通过构建合理的文法规则,其涵盖了英文简单句的绝大部分句法结构。
在规约方法中,采用CYK(Coke-Younger-Kasami)算法,CYK算法是基于CFG规则的分析算法,是一种自底向上的分析算法。如图6所示,CYK算法需要构造一个大小为[n+1,n+1]的识别矩阵,n是输入句子Sen的单词总数,识别矩阵的构成如下:
①对角线以下元素全部为0;
②主对角线以上的元素由文法G的非终结符构成;
③主对角线上的元素由输入句子Sen的终结符号(单词)构成。
定义ti,j为识别矩阵中坐标[i,j]的值,构造识别矩阵步骤如下:
①构造主对角线,t0,0=0,t1,1到tn,n依次放入输入句子Sen的单词wi。
②构造主对角线右上方的对角线t0,1到tn-1,n,其中t1,1到tk-1,k=G(wk),其中G(wk)表示文法G中能够推导出wk的非终结符。例如A→wk,则G(wk)=A。
③构造主对角线右上方的剩下对角线,对于ti,j,若文法G中存在产生式A→ti,j- 1ti+1,j,则ti,j=A,否则ti,j=ti,j-1。
④判断句子Sen合法性的充要条件是t0,n=S。
S6:Tri-Gram模型计算Sen的语言得分,判断文本合理性,若得分超过指定阈值,则Sen合理,否则Sen无效。
N-Gram是一种基于统计语言模型的算法,包括二元的Bi-Gram和三元的Tri-Gram。其基本思想是将文本里面的内容在字节级上进行大小为N的滑动窗口操作,形成了长度是N的字节片段序列,每一个字节片段称为gram。该模型基于这样一种假设,第N个词的出现只与前面N-1个词相关,而与其它任何词都不相关,整句出现的概率就是各个词出现概率的乘积。本发明中使用的是Tri-Gram模型,即每一个词出现的概率和前两个词有关。假设文本表示为Sen={w1,w2,...,wn},那么Tri-Gram的计算公式表示为:
P(Sen)=P(w1w2...wn)=p(w1)*P(w2|w1)*(w3|w2w1)...*P(wn|wn-1wn-2)
式中每一项代表该关键词的条件概率,使用极大似然估计进行计算:
在本发明中,利用双语言模型可以生丰富度高、可读性强的文本,但是依然无法保证文本语法的合理性,故通过语言模型来对文本的语法合理性进行评估。具体而言,利用训练好的Tri-Gram语言模型对文本进行打分,分值越高,代表文本越符合人类语言习惯,语法合理性强,在本发明中,文本得分超过阈值则表示文本通过语义检查。
其中训练Trim-Gram的数据集可以与训练双语言模型相同,也可以是其它高质量的英文数据集。采用开源统计语言模型训练工具KenLM训练数据集,生成语言模型中包含关键词的回退权重和Tri-Gram的条件概率。通过git方式安装KenLM后,直接在build文件中通过命令行指令训练模型。
其中阈值取值通过随机采样计算得到。具体而言,随机采样用于训练双语言模型的数据集中随机采样100个样本,用训练好的Tri-Gram模型给采样得到的100个样本打分,并记录最低分score,重复采样100次,100次采样得到的score取平均值得到阈值语料中的文本得分代表了一般性正常文本的Tri-Gram得分,取最低分是尽可能获取语义合理样本与不合法样本的分界线,多次重复采样可以减小随机采样的不确定性。
本发明通过训练好的Tri-Gram语言模型,为生成的文本进行语义打分,进一步保证生成文本的质量。在使用阶段,直接调用基于开源模型KenLM生成的模型,快速计算文本得分,提高效率。
在本实施例中,基于关键词的文本生成方法中训练模型使用的数据集包括但不限于本实施例提到的数据集规模和形式,使用的网络结构、参数、损失函数、激活函数等均不影响本发明中文本生成方法的有效性;用于语义打分的模型不限于Tri-Gram模型,使用N-Gram模型进行合理的训练均能能达到同样的效果,N可以为任意合理的自然数,但一般为2(Bi)或者3(Tri)。其中阈值的确定方法不限于重复随机采样取最小值的平均数。
采用具体实例描述本发明的方法,假设训练数据集是Amazon Reading Reviews,用数据集训练得到两个LSTM神经网络模型M1和M2和一个Tri-Gram模型TG。通过训练集计算得到词性临值表Q。如步骤S6描述阈值随机采样计算的方法,得到
①输入序列kw=reading。
②M1第一次预测生成一个预测集合P={End:0.1985,books:0.2332,story:0.1750,happy:0.0020,he:0.0001,…}。
取概率排名前t(这里假设t=5)的字符及其概率值,P1={books:0.2332,End:0.1985,story:0.1750,lovely:0.1520,romantic:0.0999}。
reading books是“n+n”的词性组合,表Q中对应值为0.12,即q1=0.12。同理获取P1中其它单词的q值,得到q2=0.36,q3=0.15,q4=0.22,q5=0.19。将q值与P1中对应元素相乘,得到新的预测集合P*={books:0.0280,End:0.0715,story:0.0262,lovely:0.0334,romantic:0.0190}。
通过步骤S25给出的公式,取temperature=0.3,对P*进行重计算,得到最终的概率分布P={books:0.1271,Endf:0.5054,story:0.1203,lovely:0.1763,romantic:0.0709}
假设随机采样得到下一个单词是Endf(句子结束标记符)。拼接后得到readingEndf。
③同理,在M1预测下一个字符的同时,M2按照②步骤预测kw的前一个字符,得到loves,拼接得到loves reading Endf。句子长度小于60,开头单词不是Startf,不满足步骤S4所描述的输出条件,继续扩展文本。
④将“loves reading Endf”作为输入,进行步骤②③,由于Endf是句子结束标志符,所以在执行步骤②时直接跳过,不生成Endf后面的单词,执行步骤③,只向前扩充句子,得到新的文本“She loves reading Endf”。句子长度小于60,开头单词不是Startf,不满足步骤S4所描述的输出条件,继续扩展文本。
⑤将“She loves reading Endf”作为输入,进行步骤②③,由于Endf是句子结束标志符,所以在执行步骤②时直接跳过,不生成Endf后面的单词,执行步骤③,只向前扩充句子,得到新的文本“Startf She loves reading Endf”。开头单词是Startf且结尾单词是Endf,满足步骤S4所描述的输出条件,输出生成的句子Sen为“She loves reading”。
以上步骤完成了句子生成工作,接下来是句子检测部分。
⑥步骤通过规约判断句子是否符合句法规则。首先“She loves reading”的词性分别是P(代词)、V(动词)、N(名词),如图7所示,构造识别矩阵,句子可以成功规约到文法起始符S,符合句法规则。
⑦调用训练好的Tri-Gram模型,通过步骤S21的公式计算P(Sen)=0.805,超过阈值0.783,语义合理。
故,由关键词reading生成的最终句子为She loves reading。
实施例2
本实施例提供一种融合双语言模型和句子检测的文本生成系统,包括:关键词获取模块、语言模型M1、语言模型M2、拼接模块、句子生成条件判断模块、句子结构分析模块、语义分析模块、文本输出模块;
在本实施例中,关键词获取模块用于获取输入关键词,所述语言模型M1和语言模型M2同步扩展关键词前后的单词;
在本实施例中,语言模型M1正向预测下一字符得到新文本S1,所述语言模型M2反向预测下一个字符得到新文本S2;
在本实施例中,拼接模块用于拼接新文本S1和新文本S2得到句子;
在本实施例中,句子生成条件判断模块用于判定句子是否满足输出条件,满足输出条件则输出句子,否则作为新的输入;
在本实施例中,句子结构分析模块用于基于规约的句法分析方法对句子进行结构分析,若句子能规约至文法起始符,则句子符合句法规则;
在本实施例中,语义分析模块用于使用N-Gram统计模型对符合句法规则的候选句子计算语言得分;
在本实施例中,文本输出模块用于输出最终文本,若候选句子的语言得分超过设定阈值,则该候选句子作为最终文本输出。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (10)
1.一种融合双语言模型和句子检测的文本生成方法,其特征在于,包括下述步骤:
获取输入关键词,语言模型M1和语言模型M2同步扩展关键词前后的单词;
所述语言模型M1正向预测下一字符得到新文本S1,所述语言模型M2反向预测下一个字符得到新文本S2,拼接新文本S1和新文本S2得到句子;
判定句子是否满足输出条件,满足输出条件则输出句子,否则作为新的输入;
基于规约的句法分析方法对句子进行结构分析,若句子能规约至文法起始符,则句子符合句法规则;
使用N-Gram统计模型对符合句法规则的候选句子计算语言得分,若候选句子的语言得分超过设定阈值,则该候选句子作为最终文本输出。
2.根据权利要求1所述的融合双语言模型和句子检测的文本生成方法,其特征在于,所述语言模型M1和语言模型M2同步扩展关键词前后的单词,具体步骤包括:
输入关键词至训练好的语言模型M1、语言模型M2,语言模型M1、语言模型M2分别预测下一字符,得到下一字符的原始概率分布;
采用top_k法选取字符及对应的预测概率,更新预测集合;
通过训练集生成词性临值表,通过词性临值表获取更新后预测集合中对应词性组合的词性临值,将词性临值与原始概率相乘得到新的概率分布;
将概率分布进行重分布,随机采样得到下一个字符nw以及下一个字符fw;
将输入的关键词kw分别与随机采样得到的字符nw、字符fw拼接得到拼接序列kw+nw、拼接序列fw+kw;
拼接语言模型M1和语言模型M2的预测结果,得到文本S=fw+kw+nw。
5.根据权利要求1所述的融合双语言模型和句子检测的文本生成方法,其特征在于,所述基于规约的句法分析方法对句子进行结构分析,具体步骤包括:
将句子中所有字符的词性进行标注,每个字符都设有对应的非终结符,根据文法G规约句子,若句子能规约至文法起始符S,则句子符合句法规则。
6.根据权利要求1所述的融合双语言模型和句子检测的文本生成方法,其特征在于,所述基于规约的句法分析方法对句子进行结构分析,采用基于CFG规则的CYK算法,构建一个大小为[n+1,n+1]的识别矩阵,n是输入句子Sen的单词总数。
7.根据权利要求6所述的融合双语言模型和句子检测的文本生成方法,其特征在于,所述识别矩阵构建步骤包括:
定义ti,j为识别矩阵中坐标[i,j]的值,构造主对角线t0,0=0,t1,1到tn,n依次放入输入句子的单词wi;
构造主对角线右上方的对角线t0,1到tn-1,n,其中t1,1到tk-1,k=G(wk),其中G(wk)表示文法G中推导出wk的非终结符;
构造主对角线右上方的剩下对角线,对于ti,j,若文法G中存在产生式A→ti,j-1ti+1,j,则ti,j=A,否则ti,j=ti,j-1。
8.根据权利要求1所述的融合双语言模型和句子检测的文本生成方法,其特征在于,所述使用N-Gram统计模型对符合句法规则的候选句子计算语言得分,具体采用Tri-Gram模型,通过计算各个词出现概率的乘积得到句子出现的概率。
9.根据权利要求1所述的融合双语言模型和句子检测的文本生成方法,其特征在于,所述语言模型M1和语言模型M2结构相同,采用神经网络模型LSTM、GRU或Transform中的任意一种。
10.一种融合双语言模型和句子检测的文本生成系统,其特征在于,包括:关键词获取模块、语言模型M1、语言模型M2、拼接模块、句子生成条件判断模块、句子结构分析模块、语义分析模块、文本输出模块;
所述关键词获取模块用于获取输入关键词,所述语言模型M1和语言模型M2同步扩展关键词前后的单词;
所述语言模型M1正向预测下一字符得到新文本S1,所述语言模型M2反向预测下一个字符得到新文本S2;
所述拼接模块用于拼接新文本S1和新文本S2得到句子;
所述句子生成条件判断模块用于判定句子是否满足输出条件,满足输出条件则输出句子,否则作为新的输入;
所述句子结构分析模块用于基于规约的句法分析方法对句子进行结构分析,若句子能规约至文法起始符,则句子符合句法规则;
所述语义分析模块用于使用N-Gram统计模型对符合句法规则的候选句子计算语言得分;
所述文本输出模块用于输出最终文本,若候选句子的语言得分超过设定阈值,则该候选句子作为最终文本输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111499830.XA CN114298010A (zh) | 2021-12-09 | 2021-12-09 | 一种融合双语言模型和句子检测的文本生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111499830.XA CN114298010A (zh) | 2021-12-09 | 2021-12-09 | 一种融合双语言模型和句子检测的文本生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114298010A true CN114298010A (zh) | 2022-04-08 |
Family
ID=80967714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111499830.XA Pending CN114298010A (zh) | 2021-12-09 | 2021-12-09 | 一种融合双语言模型和句子检测的文本生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114298010A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115101064A (zh) * | 2022-07-20 | 2022-09-23 | 安克创新科技股份有限公司 | 指令词识别方法、装置、电子设备及存储介质 |
CN115965013A (zh) * | 2023-03-16 | 2023-04-14 | 北京朗知网络传媒科技股份有限公司 | 基于需求识别的汽车传媒文章生成方法和装置 |
CN116956835A (zh) * | 2023-09-15 | 2023-10-27 | 京华信息科技股份有限公司 | 一种基于预训练语言模型的文书生成方法 |
-
2021
- 2021-12-09 CN CN202111499830.XA patent/CN114298010A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115101064A (zh) * | 2022-07-20 | 2022-09-23 | 安克创新科技股份有限公司 | 指令词识别方法、装置、电子设备及存储介质 |
CN115965013A (zh) * | 2023-03-16 | 2023-04-14 | 北京朗知网络传媒科技股份有限公司 | 基于需求识别的汽车传媒文章生成方法和装置 |
CN115965013B (zh) * | 2023-03-16 | 2023-11-28 | 北京朗知网络传媒科技股份有限公司 | 基于需求识别的汽车传媒文章生成方法和装置 |
CN116956835A (zh) * | 2023-09-15 | 2023-10-27 | 京华信息科技股份有限公司 | 一种基于预训练语言模型的文书生成方法 |
CN116956835B (zh) * | 2023-09-15 | 2024-01-02 | 京华信息科技股份有限公司 | 一种基于预训练语言模型的文书生成方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8131539B2 (en) | Search-based word segmentation method and device for language without word boundary tag | |
US6311152B1 (en) | System for chinese tokenization and named entity recognition | |
CN114298010A (zh) | 一种融合双语言模型和句子检测的文本生成方法 | |
CN112541356B (zh) | 一种生物医学命名实体识别的方法和系统 | |
CN113761890B (zh) | 一种基于bert上下文感知的多层级语义信息检索方法 | |
CN111709242A (zh) | 一种基于命名实体识别的中文标点符号添加方法 | |
Sen et al. | Bangla natural language processing: A comprehensive analysis of classical, machine learning, and deep learning-based methods | |
CN110134950B (zh) | 一种字词结合的文本自动校对方法 | |
CN112784604A (zh) | 一种基于实体边界网络的实体链接方法 | |
CN110717045A (zh) | 一种基于信访信件概况的信件要素自动提取方法 | |
Masmoudi et al. | Transliteration of Arabizi into Arabic script for Tunisian dialect | |
CN111274829A (zh) | 一种利用跨语言信息的序列标注方法 | |
CN114387537A (zh) | 一种基于描述文本的视频问答方法 | |
JPH10326275A (ja) | 形態素解析方法および装置、並びに日本語形態素解析方法および装置 | |
CN109815497B (zh) | 基于句法依存的人物属性抽取方法 | |
CN111444720A (zh) | 一种英文文本的命名实体识别方法 | |
CN110929518A (zh) | 一种使用重叠拆分规则的文本序列标注算法 | |
CN112446217B (zh) | 情感分析方法、装置及电子设备 | |
CN112765977B (zh) | 一种基于跨语言数据增强的分词方法及装置 | |
Sen et al. | Bangla natural language processing: A comprehensive review of classical machine learning and deep learning based methods | |
Mekki et al. | COTA 2.0: An automatic corrector of Tunisian Arabic social media texts | |
Ovi et al. | BaNeP: An End-to-End Neural Network Based Model for Bangla Parts-of-Speech Tagging | |
Shahid et al. | Next word prediction for Urdu language using deep learning models | |
Khoufi et al. | Chunking Arabic texts using conditional random fields | |
Tukur et al. | Parts-of-speech tagging of Hausa-based texts using hidden Markov model |
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 |