利索能及
我要发布
收藏
专利号: 2021114746794
申请人: 成都信息工程大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-12-30
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种条件文本生成方法,其特征在于,包括:S1、采集文本数据;数据预处理,将文本数据转化为适合训练的数据集;

S2、构建编码器、解码器;

S3、将条件信息和文本数据分别通过编码器编码,得到条件特征、文本特征;将条件特征和文本特征进行特征融合,得到融合后的特征,记为融合特征;

S4、将所述融合特征作为解码器的输入,得到解码器的输出结果;

S5、计算损失;

S6、基于解码器的输出结果和损失,对网络模型进行训练,直到满足训练条件或达到最大训练次数,输出训练后的网络模型;

S7、向训练后的网络模型中输入条件信息和提示文本,生成文本。

2.根据权利要求1所述的一种条件文本生成方法,其特征在于,步骤S1中,通过爬虫采集网上公开的文本数据,并存储为json格式;所采集的文本数据包括内容和主题。

3.根据权利要求1所述的一种条件文本生成方法,其特征在于,步骤S1中,所述数据预处理包括:

S101、噪声清除:将爬取的数据利用正则去掉无用符号、多余空白、数字、人名和地名;

S102、归一化:替换特殊符号、替换稀有词汇;

S103、关键词提取:对采集的文本数据进行关键词提取,筛选出包含指定关键词的文本作为数据集;

S104、分词:利用分词工具对数据集进行分词,将分词后的词语转化为词典中对应的位置编号。

4.根据权利要求1所述的一种条件文本生成方法,其特征在于,步骤S2中,利用采集的文本数据训练GPT‑2模型,将训练好的模型记为模型M,以模型M作为编码器和解码器。

5.根据权利要求4所述的一种条件文本生成方法,其特征在于,步骤S3包括:S301、将条件信息输入模型M,得到条件特征fc;

S302、将包含所述条件信息的文本数据输入模型M,得到文本特征fp;

S303、将fc和fp进行特征融合,得到融合特征fcp。

6.根据权利要求5所述的一种条件文本生成方法,其特征在于,步骤S303包括:S3031、确定条件信息的个数n,各条件信息的条件特征依次记为fc1、fc2…fcn;其中n取正整数;

S3032、将各条件特征的键向量keyc1、keyc2…keycn、值向量valuec1、valuec2…valuecn分别依次连接到文本特征fp的键向量key、值向量value之前,并保持文本特征fp的查询向量query不变,得到连接后的键向量keylast、值向量valuelast:keylast=[keyc1;keyc2…keycn;key];

valuelast=[valuec1;valuec2…valuecn;value];

S3033、通过如下公式计算输出值scroe:T

式中,q代表查询向量query,k 代表keylast的转置,v代表valuelast,dk代表keylast的维度;

S3034、将scroe输入前馈神经网络,得到融合特征fcp。

7.根据权利要求1所述的一种条件文本生成方法,其特征在于,步骤S5中,计算损失的方法包括:

S501、计算条件信息与文本数据的互信息损失Lpoint:x ‑1

Lpoint=(e‑1) ;

式中,a表示文本数据,c表示条件信息;x为文本数据和条件信息之间的互信息计算结果;p(a)表示文本数据中每个词出现概率的累积;p(c)表示条件信息与文本数据中每个词出现概率的累积;p(a,c)表示文本数据中每个词与条件信息的概率累积;

S502、将条件信息设置为空集,计算无条件内容损失Lnull:式中,c表示条件信息;xi表示当前生成的词;{x1,x2…xi‑1}表示生成xi需要的提示文本;

表示xi的后验概率;k表示生成文本的最大长度;

S503、通过如下公式计算最终损失Loss:式中,当所述互信息损失参与训练时, 否则当所述无条件内容损失参与训练时, 否则

8.一种条件文本生成系统,其特征在于,包括:数据采集模块,用于通过爬虫采集文本数据并存储为json格式;

预处理模块,用于对文本数据进行预处理,将文本数据转化为适合训练的数据集;

模型训练模块,用于构建条件文本生成模型,并输出训练后的网络模型;

文本生成模块,通过输入的提示文本和条件信息,根据训练后的网络模型预测下一词概率,然后经过softmax归一化,采用top‑k和top‑p结合输出下一个词,直至完成文本生成;

其中,所述模型训练模块包括:

预训练语言模型单元,用于构建编码器和解码器;

编码器,用于将条件信息和文本数据分别作为输入,得到条件特征、文本特征;

特征融合单元,用于将条件特征和文本特征进行特征融合,得到融合特征;

损失计算单元,用于计算模型训练过程中的损失;

解码器,用于将融合特征作为输入,得到输出结果,以指导文本生成。

9.根据权利要求8所述的一种条件文本生成系统,其特征在于,所述特征融合单元包括:

前置子单元,用于确定条件信息的个数n,将各条件信息的条件特征依次记为fc1、fc2…fcn;其中n取正整数;

连接子单元,用于将各条件特征的键向量keyc1、keyc2…keycn、值向量valuec1、valuec2…valuecn分别依次连接到文本特征fp的键向量key、值向量value之前,并保持文本特征fp的查询向量query不变,得到连接后的键向量keylast、值向量valuelast:keylast=[keyc1;keyc2…keycn;key];

valuelast=[valuec1;valuec2…valuecn;value];

第一计算子单元,用于通过如下公式计算输出值scroe: 式T

中,q代表查询向量query,k代表keylast的转置,v代表valuelast,dk代表keylast的维度;

第二计算子单元,用于将scroe输入前馈神经网络,得到融合特征fcp。

10.根据权利要求8所述的一种条件文本生成系统,其特征在于,所述损失计算单元包括:

互信息损失子单元,用于通过如下公式计算条件信息与文本数据的互信息损失Lpoint:x ‑1

Lpoint=(e‑1) ;

式中,a表示文本数据,c表示条件信息;x为文本数据和条件信息之间的互信息计算结果;p(a)表示文本数据中每个词出现概率的累积;p(c)表示条件信息与文本数据中每个词出现概率的累积;p(a,c)表示文本数据中每个词与条件信息的概率累积;

无条件内容损失子单元,用于将条件信息设置为空集,并通过如下公式计算无条件内容损失Lnull:

式中,c表示条件信息;xi表示当前生成的词;{x1,x2…xi‑1}表示生成xi需要的提示文本;

表示xi的后验概率;k表示生成文本的最大长度;

结合子单元,用于通过如下公式结合互信息损失和无条件内容损失,得到最终损失Loss:

式中,当所述互信息损失参与训练时, 否则当所述无条件内容损失参与训练时, 否则