掌桥专利:专业的专利平台
掌桥专利
首页

生成文本数据的方法、装置和计算机设备

文献发布时间:2023-06-19 09:49:27


生成文本数据的方法、装置和计算机设备

技术领域

本申请涉及大数据领域,特别是涉及到生成文本数据的方法、装置和计算机设备。

背景技术

在自然语言处理技术应用的多个场景下,都需要大量的语料去支撑模型的预测、生成。如果语料不足或者样本严重不均衡的情况,就需要进行中文文本数据增强。可通过生成相似问或生成同义句的方式进行中文文本数据增强。表现为通过输入一个语料短文本,输出一个语义类似、文字不同的短文本。但现有生成相似问或生成同义句的方式,多通过seq2seq模型、基于同义词的增删改换、回译模型等实现,在生成的文本的连贯性以及语义的准确性方面,还不能满足训练自然语言处理模型的数据精度需求。

发明内容

本申请的主要目的为解决业务量大时数据库运行障碍,无法快速响应业务需求的技术问题。

本申请提出一种生成文本数据的方法,包括:

获取训练数据中的标准训练文本,以及与所述标准训练文本对应的扩展训练文本,其中,一个所述标准训练文本对应多个所述扩展训练文本,所述标准训练文本和所述扩展训练文本均携带标注数据;

将所述标准训练文本输入预先布设于孪生框架下的第一Bert,将所述扩展训练文本输入预先布设于所述孪生框架下的第二Bert;

在损失函数约束下训练所述第一Bert和所述第二Bert组成的孪生Bert模型,其中,所述损失函数的表达式为

判断所述损失函数是否收敛;

若是,则确定所述孪生Bert模型的模型参数;

将待生成相似文本的标准文本数据输入至所述孪生Bert模型中,生成所述标准文本对应的向量;

根据所述标准文本对应的向量,获取与所述标准文本相似的扩展文本。

优选地,所述根据所述标准文本对应的向量,获取与所述标准文本相似的扩展文本的步骤之后,包括:

将所述标准文本对应的向量输入最近邻模型;

通过最近邻模型在预设数据库中筛选与所述标准文本满足预设相似度要求的指定语句向量;

获取所述指定语句向量对应的文本数据;

将所述指定语句向量对应的文本数据作为所述标准文本对应的扩展文本。

优选地,所述通过最近邻模型在预设数据库中筛选与所述标准文本满足预设相似度要求的指定语句向量的步骤之后,包括:

将所述标准文本对应的向量,以及所述指定语句向量进行向量拼接,形成拼接向量;

将所述拼接向量输入Bert分类模型进行降序排序;

获取排列于所述降序排序中靠前排列的指定数量的拼接向量;

根据所述指定数量的拼接向量,确定与所述标准文本对应的扩展文本。

优选地,所述将所述标准文本对应的向量,以及所述指定语句向量进行向量拼接,形成拼接向量的步骤,包括:

获取所述标准文本对应的第一向量,以及所述最近邻模型筛选出的第二向量,其中,所述第二向量为所述指定语句向量中的任一个;

根据所述第一向量以及所述第二向量,计算所述第一向量以及所述第二向量的元素粒度差、元素粒度积以及向量间的余弦距离;

将所述元素粒度差、元素粒度积以及向量间的余弦距离,拼接成所述拼接向量。

优选地,所述根据所述指定数量的拼接向量,确定与所述标准文本对应的扩展文本的步骤,包括:

在所述指定数量的扩展文本,分别计算两两之间的相关度;

判断所述相关度是否达到两个文本相关时对应的阈值;

若是,则将两个所述指定扩展文本合并为一个扩展文本。

优选地,所述在所述指定数量的扩展文本,分别计算两两之间的相关度的步骤,包括:

在所述指定数量的扩展文本,分别计算两两之间的Levenshtein距离、Jaro-Winkler距离,以及Levenshtein距离对应的第一TF-IDF和第一BM25,Jaro-Winkler距离对应的第二TF-IDF和第二BM25;

将所述Levenshtein距离、所述Jaro-Winkler距离、所述第一TF-IDF、所述第一BM25、所述第二TF-IDF和所述第二BM25拼接形成相关性特征;

将所述相关性特征输入随机森林框架内,调用random forest函数,进行重复度计算;

将所述随机森林框架输出的二分类结果作为所述相关度。

本申请是提供了一种生成文本数据的装置,包括:

第一获取模块,用于获取训练数据中的标准训练文本,以及与所述标准训练文本对应的扩展训练文本,其中,一个所述标准训练文本对应多个所述扩展训练文本,所述标准训练文本和所述扩展训练文本均携带标注数据;

第一输入模块,用于将所述标准训练文本输入预先布设于孪生框架下的第一Bert,将所述扩展训练文本输入预先布设于所述孪生框架下的第二Bert;

训练模块,用于在损失函数约束下训练所述第一Bert和所述第二Bert组成的孪生Bert模型,其中,所述损失函数的表达式为

判断模块,用于判断所述损失函数是否收敛;

第一确定模块,用于若收敛,则确定所述孪生Bert模型的模型参数;

第二输入模块,用于将待生成相似文本的标准文本数据输入至所述孪生Bert模型中,生成所述标准文本对应的向量;

第二获取模块,用于根据所述标准文本对应的向量,获取与所述标准文本相似的扩展文本。

本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。

本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。

本申请通过在孪生框架下布设Bert模型,并设计了孪生Bert模型的训练损失函数,使生成的文本数据的相似度更高,生成的扩展问对应的文本更连贯、语义更准确。

附图说明

图1本申请一实施例的生成文本数据的方法流程示意图;

图2本申请一实施例的生成文本数据的装置结构示意图;

图3本申请一实施例的计算机设备内部结构示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

参照图1,本实施例的生成文本数据的方法,包括:

S1:获取训练数据中的标准训练文本,以及与所述标准训练文本对应的扩展训练文本,其中,一个所述标准训练文本对应多个所述扩展训练文本,所述标准训练文本和所述扩展训练文本均携带标注数据;

S2:将所述标准训练文本输入预先布设于孪生框架下的第一Bert,将所述扩展训练文本输入预先布设于所述孪生框架下的第二Bert;

S3:在损失函数约束下训练所述第一Bert和所述第二Bert组成的孪生Bert模型,其中,所述损失函数的表达式为

S4:判断所述损失函数是否收敛;

S5:若是,则确定所述孪生Bert模型的模型参数;

S6:将待生成相似文本的标准文本数据输入至所述孪生Bert模型中,生成所述标准文本对应的向量;

S7:根据所述标准文本对应的向量,获取与所述标准文本相似的扩展文本。

本申请实施例中,通过把两个相同的Bert预先布设于孪生架构上形成孪生Bert模型,并通过设定的损失函数,在训练数据上训练孪生Bert模型,使两个Bert具有相同的参量参数。由于Bert可通过双向编码器联合调解所有层中的上下文训练深度的双向表示,结合孪生向量的对齐操作,可根据上下文语境对存在一词多义现象的词语进行解释和表示,最终生成符合语境语义信息的句向量,从而提高了语义准确性,使得孪生Bert模型能精准确定与标准文本相似的扩展文本。当标准文本的句子向量映射更精准时,后续依据标准文本筛选的与标准文本相似的扩展文本,才与标准文本具有相似的连贯性和语义精准性,才能更符合文本数据的扩增精度需求。

进一步地,所述根据所述标准文本对应的向量,获取与所述标准文本相似的扩展文本的步骤S7之后,包括:

S71:将所述标准文本对应的向量输入最近邻模型;

S72:通过所述最近邻模型在预设数据库中筛选与所述标准文本满足预设相似度要求的指定语句向量;

S73:获取所述指定语句向量对应的文本数据;

S74:将所述指定语句向量对应的文本数据作为所述标准文本对应的扩展文本。

本申请实施例中,最近邻模型起到的是召回层的作用,使用的召回语料库,除了训练语料外,还添加了高质量的已公开的用户对话的数据集,即保证了充沛的召回语料库,也保证了文本的连贯性。上述最近邻模型为根据最近邻实现数据检索的模型,根据数据的相似性,从数据库中寻找与目标数据最相似的项目,并把相似性量化到空间位置上数据之间的距离,可以认为数据在空间中的距离越近,则数据之间的相似性越高。当需要查找离目标数据最近的前k个数据项时,就是k最近邻检索模型,简称K-NN。召回层通过在高维空间求近似最近邻的指定语句向量,通过确定近似最近邻的语句向量,在预设数据库中筛选与标准文本满足预设相似度要求的向量。本申请实施例使用Annoy开源库,提取用户输入的标准文本的语料生成的句向量,然后通过句向量建立Annoy索引,在预设数据库中构建一棵二叉树,通过二叉树查找,实现O(logn)时间复杂度的近似最近邻查找。查找过程如下:“fromgensim.models import KeyedVectors;sent2vec_model=KeyedVectors.load(u'sent2vec_model');sent2vec_model.similar_by_vector(query)”。

进一步地,所述通过所述最近邻模型在预设数据库中筛选与所述标准文本满足预设相似度要求的指定语句向量的步骤S72之后,包括:

S75:将所述标准文本对应的向量,以及所述指定语句向量进行向量拼接,形成拼接向量;

S76:将所述拼接向量输入Bert分类模型进行降序排序;

S77:获取排列于所述降序排序中靠前排列的指定数量的拼接向量;

S78:根据所述指定数量的拼接向量,确定与所述标准文本对应的扩展文本。

本申请实施例为提高选定的相似语句向量的精准度,将召回层输出的指定语句向量,分别与标准文本对应的句向量进行向量拼接,再通过Bert分类模型进行降序排序,Bert分类模型起到的是排序层的作用。通过Bert分类模型的降序排序,确定排列于降序排序中靠前排列的指定数量的拼接向量,以确定相似度程度较高的句向量,以确定与标准文本具有最相似的连贯性、最相似语义的扩展文本。

进一步地,将所述标准文本对应的向量,以及所述指定语句向量进行向量拼接,形成拼接向量的步骤S75,包括:

S751:获取所述标准文本对应的第一向量,以及所述最近邻模型筛选出的第二向量,其中,所述第二向量为所述指定语句向量中的任一个;

S752:根据所述第一向量以及所述第二向量,计算所述第一向量以及所述第二向量的元素粒度差、元素粒度积以及向量间的余弦距离;

S753:将所述元素粒度差、元素粒度积以及向量间的余弦距离,拼接成所述拼接向量。

本申请实施例通过将第一向量和第二向量进行交互计算,捕获两个向量间的交互信息特征,以提高Bert分类模型的排序精准性。上述交互计算包括但不限于计算两个向量之间的元素粒度差、元素粒度积以及余弦距离,以便从不同维度,获取两个文本向量的交互信息,提取交互信息特征。举例地,第一向量为标准文本的向量vec_q1,第二向量为召回层输出的其中一个扩展文本的向量vec_q2,上述的交互运算包括计算两个向量之间的元素粒度差element-wise minus:vec_q1-vec_q2;计算两个向量之间的元素粒度积element-wisemulptify:vec_q1*vec_q2;计算两个向量的余弦距离vec_q1⊙vec_q2。比如vec_q1=[x1,x2,x3...xn],vec_q2=[y1,y2,y3...],则vec_q1-vec_q2=[x1-y1,x2-y2,x3-y3...];vec_q1*vec_q2=[x1*y1,x2*y2,x3*y3...];本申请实施例的余弦距离vec_q1⊙vec_q2,为未经过向量模规范化的余弦距离,以降低计算量。上述的vec_q1⊙vec_q2==x1*y1+x2*y2+x3*y3+...。

根据Bert分类模型的向量输入方式,并且在拼接向量的开头加[cls],在每两个向量中间[sep]。最后拼接后的输入向量为[cls,vec_q1,sep,vec_q2,sep,vec_q1-vec_q2,sep,vec_q1*vec_q2,sep,vec_q1⊙vec_q2]。

进一步地,所述根据所述指定数量的拼接向量,确定与所述标准文本对应的扩展文本的步骤S78,包括:

S781:在所述指定数量的扩展文本,分别计算两两之间的相关度;

S782:判断所述相关度是否达到两个文本相关时对应的阈值;

S783:若是,则将两个所述指定扩展文本合并为一个扩展文本。

本申请实施例的相关度,可通过Levenshtein距离表示,以在满足精度的情况下尽量减少计算量。通过将获取的扩展文本两两之间进行Levenshtein距离计算,判断两个文本的字符串是否相同。比如,Levenshtein距离小于或等于2,说明两个扩展文本的字符串基本相同,则达到具有相关关系的阈值。即Levenshtein Distance(q1,q2)<=2表示两个指定扩展文本相关或相同,去进行去重处理,其中,q1和q2表示两个指定扩展文本,LevenshteinDistance表示Levenshtein距离。可将两个合并为一个,以提高扩展文本作为其他模型的训练扩充数据时的有效性。

进一步地,所述在所述指定数量的扩展文本,分别计算两两之间的相关度的步骤S781,包括:

S7811:在所述指定数量的扩展文本,分别计算两两之间的Levenshtein距离、Jaro-Winkler距离,以及Levenshtein距离对应的第一TF-IDF和第一BM25,Jaro-Winkler距离对应的第二TF-IDF和第二BM25;

S7812:将所述Levenshtein距离、所述Jaro-Winkler距离、所述第一TF-IDF、所述第一BM25、所述第二TF-IDF和所述第二BM25拼接形成相关性特征;

S7813:将所述相关性特征输入随机森林框架内,调用random forest函数,进行重复度计算;

S7814:将所述随机森林框架输出的二分类结果作为所述相关度。

本申请实施例为了能够从不同维度评估两个扩展文本的相关性,提高去重效果,分别计算两两扩展文本的Levenshtein距离、Jaro-Winkler距离,并将Levenshtein距离、Jaro-Winkler距离各自对应的TF-IDF(term frequency–inverse document frequency),BM25(best maching 25),与Levenshtein距离、Jaro-Winkler距离一起拼接成相关性特征,拼接在一起输入随机森林框架进行重复/不重复的二分类计算,当输出的二分类结果为重复时,则表明两个扩展文本相同或相关,需进行去重处理。上述TF-IDF是一种用于信息检索与数据挖掘的加权技术,TF是词频Term Frequency,IDF是逆文本频率指数InverseDocument Frequency;BM25是TF-IDF的优化版。

参照图2,本申请一实施例的生成文本数据的装置,包括:

第一获取模块1,用于获取训练数据中的标准训练文本,以及与所述标准训练文本对应的扩展训练文本,其中,一个所述标准训练文本对应多个所述扩展训练文本,所述标准训练文本和所述扩展训练文本均携带标注数据;

第一输入模块2,用于将所述标准训练文本输入预先布设于孪生框架下的第一Bert,将所述扩展训练文本输入预先布设于所述孪生框架下的第二Bert;

训练模块3,用于在损失函数约束下训练所述第一Bert和所述第二Bert组成的孪生Bert模型,其中,所述损失函数的表达式为

判断模块4,用于判断所述损失函数是否收敛;

第一确定模块5,用于若收敛,则确定所述孪生Bert模型的模型参数;

第二输入模块6,用于将待生成相似文本的标准文本数据输入至所述孪生Bert模型中,生成所述标准文本对应的向量;

第二获取模块7,用于根据所述标准文本对应的向量,获取与所述标准文本相似的扩展文本。

本申请实施例中,通过把两个相同的Bert预先布设于孪生架构上形成孪生Bert模型,并通过设定的损失函数,在训练数据上训练孪生Bert模型,使两个Bert具有相同的参量参数。由于Bert可通过双向编码器联合调解所有层中的上下文训练深度的双向表示,结合孪生向量的对齐操作,可根据上下文语境对存在一词多义现象的词语进行解释和表示,最终生成符合语境语义信息的句向量,从而提高了语义准确性,使得孪生Bert模型能精准确定与标准文本相似的扩展文本。当标准文本的句子向量映射更精准时,后续依据标准文本筛选的与标准文本相似的扩展文本,才与标准文本具有相似的连贯性和语义精准性,才能更符合文本数据的扩增精度需求。

进一步地,生成文本数据的装置,包括:

第三输入模块,用于将所述标准文本对应的向量输入最近邻模型;

筛选模块,用于通过所述最近邻模型在预设数据库中筛选与所述标准文本满足预设相似度要求的指定语句向量;

第三获取模块,用于获取所述指定语句向量对应的文本数据;

作为模块,用于将所述指定语句向量对应的文本数据作为所述标准文本对应的扩展文本。

本申请实施例中,最近邻模型起到的是召回层的作用,使用的召回语料库,除了训练语料外,还添加了高质量的已公开的用户对话的数据集,即保证了充沛的召回语料库,也保证了文本的连贯性。召回层通过在高维空间求近似最近邻的指定语句向量,通过确定近似最近邻的语句向量,在预设数据库中筛选与标准文本满足预设相似度要求的向量。本申请实施例使用Annoy开源库,提取用户输入的标准文本的语料生成的句向量,然后通过句向量建立Annoy索引,在预设数据库中构建一棵二叉树,通过二叉树查找,实现O(logn)时间复杂度的近似最近邻查找。查找过程如下:“from gensim.models import KeyedVectors;sent2vec_model=KeyedVectors.load(u'sent2vec_model');sent2vec_model.similar_by_vector(query)”。

进一步地,生成文本数据的装置,包括:

形成模块,用于将所述标准文本对应的向量,以及所述指定语句向量进行向量拼接,形成拼接向量;

第四输入模块,用于将所述拼接向量输入Bert分类模型进行降序排序;

第四获取模块,用于获取排列于所述降序排序中靠前排列的指定数量的拼接向量;

第二确定模块,用于根据所述指定数量的拼接向量,确定与所述标准文本对应的扩展文本。

本申请实施例为提高选定的相似语句向量的精准度,将召回层输出的指定语句向量,分别与标准文本对应的句向量进行向量拼接,再通过Bert分类模型进行降序排序,Bert分类模型起到的是排序层的作用。通过Bert分类模型的降序排序,确定排列于降序排序中靠前排列的指定数量的拼接向量,以确定相似度程度较高的句向量,以确定与标准文本具有最相似的连贯性、最相似语义的扩展文本。

进一步地,形成模块,包括:

获取单元,用于获取所述标准文本对应的第一向量,以及所述最近邻模型筛选出的第二向量,其中,所述第二向量为所述指定语句向量中的任一个;

第一计算单元,用于根据所述第一向量以及所述第二向量,计算所述第一向量以及所述第二向量的元素粒度差、元素粒度积以及向量间的余弦距离;

拼接单元,用于将所述元素粒度差、元素粒度积以及向量间的余弦距离,拼接成所述拼接向量。

本申请实施例通过将第一向量和第二向量进行交互计算,捕获两个向量间的交互信息特征,以提高Bert分类模型的排序精准性。上述交互计算包括但不限于计算两个向量之间的元素粒度差、元素粒度积以及余弦距离,以便从不同维度,获取两个文本向量的交互信息,提取交互信息特征。举例地,第一向量为标准文本的向量vec_q1,第二向量为召回层输出的其中一个扩展文本的向量vec_q2,上述的交互运算包括计算两个向量之间的元素粒度差element-wise minus:vec_q1-vec_q2;计算两个向量之间的元素粒度积element-wisemulptify:vec_q1*vec_q2;计算两个向量的余弦距离vec_q1⊙vec_q2。比如vec_q1=[x1,x2,x3...xn],vec_q2=[y1,y2,y3...],则vec_q1-vec_q2=[x1-y1,x2-y2,x3-y3...];vec_q1*vec_q2=[x1*y1,x2*y2,x3*y3...];本申请实施例的余弦距离vec_q1⊙vec_q2,为未经过向量模规范化的余弦距离,以降低计算量。上述的vec_q1⊙vec_q2==x1*y1+x2*y2+x3*y3+...。

然后根据Bert分类模型的向量输入方式,并且在拼接向量的开头加[cls],在每两个向量中间[sep]。最后拼接后的输入向量为[cls,vec_q1,sep,vec_q2,sep,vec_q1-vec_q2,sep,vec_q1*vec_q2,sep,vec_q1⊙vec_q2]。

进一步地,第二确定模块,包括:

第二计算单元,用于在所述指定数量的扩展文本,分别计算两两之间的相关度;

判断单元,用于判断所述相关度是否达到两个文本相关时对应的阈值;

合并单元,用于若达到两个文本相关时对应的阈值,则将两个所述指定扩展文本合并为一个扩展文本。

本申请实施例的相关度,可通过Levenshtein距离表示,以在满足精度的情况下尽量减少计算量。通过将获取的扩展文本两两之间进行Levenshtein距离计算,判断两个文本的字符串是否相同。比如,Levenshtein距离小于或等于2,说明两个扩展文本的字符串基本相同,则达到具有相关关系的阈值。即Levenshtein Distance(q1,q2)<=2表示两个指定扩展文本相关或相同,去进行去重处理,其中,q1和q2表示两个指定扩展文本,LevenshteinDistance表示Levenshtein距离。可将两个合并为一个,以提高扩展文本作为其他模型的训练扩充数据时的有效性。

进一步地,第二计算单元,包括:

计算子单元,用于在所述指定数量的扩展文本,分别计算两两之间的Levenshtein距离、Jaro-Winkler距离,以及Levenshtein距离对应的第一TF-IDF和第一BM25,Jaro-Winkler距离对应的第二TF-IDF和第二BM25;

拼接子单元,用于将所述Levenshtein距离、所述Jaro-Winkler距离、所述第一TF-IDF、所述第一BM25、所述第二TF-IDF和所述第二BM25拼接形成相关性特征;

输入子单元,用于将所述相关性特征输入随机森林框架内,调用random forest函数,进行重复度计算;

作为子单元,用于将所述随机森林框架输出的二分类结果作为所述相关度。

本申请实施例为了能够从不同维度评估两个扩展文本的相关性,提高去重效果,分别计算两两扩展文本的Levenshtein距离、Jaro-Winkler距离,并将Levenshtein距离、Jaro-Winkler距离各自对应的TF-IDF(term frequency–inverse document frequency),BM25(best matching 25),与Levenshtein距离、Jaro-Winkler距离一起拼接成相关性特征,拼接在一起输入随机森林框架进行重复/不重复的二分类计算,当输出的二分类结果为重复时,则表明两个扩展文本相同或相关,需进行去重处理。上述TF-IDF是一种用于信息检索与数据挖掘的加权技术,TF是词频Term Frequency,IDF是逆文本频率指数InverseDocument Frequency;BM25是TF-IDF的优化版。

参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储生成文本数据的过程需要的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现生成文本数据的方法。

上述处理器执行上述生成文本数据的方法,包括:获取训练数据中的标准训练文本,以及与所述标准训练文本对应的扩展训练文本,其中,一个所述标准训练文本对应多个所述扩展训练文本,所述标准训练文本和所述扩展训练文本均携带标注数据;将所述标准训练文本输入预先布设于孪生框架下的第一Bert,将所述扩展训练文本输入预先布设于所述孪生框架下的第二Bert;在损失函数约束下训练所述第一Bert和所述第二Bert组成的孪生Bert模型,其中,所述损失函数的表达式为

上述计算机设备,通过在孪生框架下布设Bert模型,并设计了孪生Bert模型的训练损失函数,使生成的文本数据的相似度更高,生成的扩展问对应的文本更连贯、语义更准确。

在一个实施例中,上述处理器根据所述标准文本对应的向量,获取与所述标准文本相似的扩展文本的步骤之后,包括:将所述标准文本对应的向量输入最近邻模型;通过所述最近邻模型在预设数据库中筛选与所述标准文本满足预设相似度要求的指定语句向量;获取所述指定语句向量对应的文本数据;将所述指定语句向量对应的文本数据作为所述标准文本对应的扩展文本。

在一个实施例中,上述处理器通过所述最近邻模型在预设数据库中筛选与所述标准文本满足预设相似度要求的指定语句向量的步骤之后,包括:将所述标准文本对应的向量,以及所述指定语句向量进行向量拼接,形成拼接向量;将所述拼接向量输入Bert分类模型进行降序排序;获取排列于所述降序排序中靠前排列的指定数量的拼接向量;根据所述指定数量的拼接向量,确定与所述标准文本对应的扩展文本。

在一个实施例中,上述处理器将所述标准文本对应的向量,以及所述指定语句向量进行向量拼接,形成拼接向量的步骤,包括:获取所述标准文本对应的第一向量,以及所述最近邻模型筛选出的第二向量,其中,所述第二向量为所述指定语句向量中的任一个;根据所述第一向量以及所述第二向量,计算所述第一向量以及所述第二向量的元素粒度差、元素粒度积以及向量间的余弦距离;将所述元素粒度差、元素粒度积以及向量间的余弦距离,拼接成所述拼接向量。

在一个实施例中,上述处理器根据所述指定数量的拼接向量,确定与所述标准文本对应的扩展文本的步骤,包括:在所述指定数量的扩展文本,分别计算两两之间的相关度;判断所述相关度是否达到两个文本相关时对应的阈值;若是,则将两个所述指定扩展文本合并为一个扩展文本。

在一个实施例中,上述处理器在所述指定数量的扩展文本,分别计算两两之间的相关度的步骤,包括:在所述指定数量的扩展文本,分别计算两两之间的Levenshtein距离、Jaro-Winkler距离,以及Levenshtein距离对应的第一TF-IDF和第一BM25,Jaro-Winkler距离对应的第二TF-IDF和第二BM25;将所述Levenshtein距离、所述Jaro-Winkler距离、所述第一TF-IDF、所述第一BM25、所述第二TF-IDF和所述第二BM25拼接形成相关性特征;将所述相关性特征输入随机森林框架内,调用random forest函数,进行重复度计算;将所述随机森林框架输出的二分类结果作为所述相关度。

本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。

本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现生成文本数据的方法,包括:获取训练数据中的标准训练文本,以及与所述标准训练文本对应的扩展训练文本,其中,一个所述标准训练文本对应多个所述扩展训练文本,所述标准训练文本和所述扩展训练文本均携带标注数据;将所述标准训练文本输入预先布设于孪生框架下的第一Bert,将所述扩展训练文本输入预先布设于所述孪生框架下的第二Bert;在损失函数约束下训练所述第一Bert和所述第二Bert组成的孪生Bert模型,其中,所述损失函数的表达式为

上述计算机可读存储介质,通过在孪生框架下布设Bert模型,并设计了孪生Bert模型的训练损失函数,使生成的文本数据的相似度更高,生成的扩展问对应的文本更连贯、语义更准确。

在一个实施例中,上述处理器根据所述标准文本对应的向量,获取与所述标准文本相似的扩展文本的步骤之后,包括:将所述标准文本对应的向量输入最近邻模型;通过所述最近邻模型在预设数据库中筛选与所述标准文本满足预设相似度要求的指定语句向量;获取所述指定语句向量对应的文本数据;将所述指定语句向量对应的文本数据作为所述标准文本对应的扩展文本。

在一个实施例中,上述处理器通过所述最近邻模型在预设数据库中筛选与所述标准文本满足预设相似度要求的指定语句向量的步骤之后,包括:将所述标准文本对应的向量,以及所述指定语句向量进行向量拼接,形成拼接向量;将所述拼接向量输入Bert分类模型进行降序排序;获取排列于所述降序排序中靠前排列的指定数量的拼接向量;根据所述指定数量的拼接向量,确定与所述标准文本对应的扩展文本。

在一个实施例中,上述处理器将所述标准文本对应的向量,以及所述指定语句向量进行向量拼接,形成拼接向量的步骤,包括:获取所述标准文本对应的第一向量,以及所述最近邻模型筛选出的第二向量,其中,所述第二向量为所述指定语句向量中的任一个;根据所述第一向量以及所述第二向量,计算所述第一向量以及所述第二向量的元素粒度差、元素粒度积以及向量间的余弦距离;将所述元素粒度差、元素粒度积以及向量间的余弦距离,拼接成所述拼接向量。

在一个实施例中,上述处理器根据所述指定数量的拼接向量,确定与所述标准文本对应的扩展文本的步骤,包括:在所述指定数量的扩展文本,分别计算两两之间的相关度;判断所述相关度是否达到两个文本相关时对应的阈值;若是,则将两个所述指定扩展文本合并为一个扩展文本。

在一个实施例中,上述处理器在所述指定数量的扩展文本,分别计算两两之间的相关度的步骤,包括:在所述指定数量的扩展文本,分别计算两两之间的Levenshtein距离、Jaro-Winkler距离,以及Levenshtein距离对应的第一TF-IDF和第一BM25,Jaro-Winkler距离对应的第二TF-IDF和第二BM25;将所述Levenshtein距离、所述Jaro-Winkler距离、所述第一TF-IDF、所述第一BM25、所述第二TF-IDF和所述第二BM25拼接形成相关性特征;将所述相关性特征输入随机森林框架内,调用random forest函数,进行重复度计算;将所述随机森林框架输出的二分类结果作为所述相关度。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。

以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

相关技术
  • 生成文本数据的方法、装置和计算机设备
  • 文本数据的脱敏方法、装置、存储设备以及计算机设备
技术分类

06120112314995