【技术实现步骤摘要】
一种基于情感预训练模型的故事结尾生成方法
[0001]本专利技术涉及自然语言处理
,具体涉及一种基于情感预训练模型的故事结尾生成方法。
技术介绍
[0002]故事结局生成是为一个不完整的故事生成结局句子的任务,任务的主要挑战是如何生成合理且通顺的句子,并且要符合故事情节的发展。早期的工作主要基于序列到序列(Seq2Seq)模型,由于不能很好的理解故事内容,容易导致生成通用的不连贯回复。之后的工作在的基础上进行情感生成的探索,通过高斯函数将情感强度引入解码器内核层来控制输出的情绪,在生成多样性上做出了一定的进步,但依然没有改进结尾与故事上下文之间缺少联系以及生成的结尾句子逻辑不通顺的问题。之后有工作结合采用增量编码方案和常识知识,来表示故事中跨越的上下文线索以及促进故事理解,但太过于依赖常识性知识,会使得模型习惯性的从常识知识中获取信息,而不是故事上下文,这样会导致生成的句子与故事上下文内容不一致的情况,同时此类工作的模型在情感一致性上也有待提升。
技术实现思路
[0003]为了解决现有的故事结尾文本生成 ...
【技术保护点】
【技术特征摘要】
1.一种基于情感预训练模型的故事结尾生成方法,其特征在于,包括如下步骤:通过故事线提取模块抽取故事内容的关键信息,训练一个用于判别故事中输入每句话情感和实时判别每个时刻输出的故事结尾情感的情感判别器,通过情感判别器判别故事中输入每句话的情感训练一个利用前四句故事隐向量预测结尾期望情感的情感预测模型,计算生成过程中情感判别器实时判别每个时刻输出的故事结尾情感和情感预测模型的期望情感之间的差距反向传播获得情感梯度,根据情感判别器返回的情感梯度更新GPT
‑
2模型的内部历史状态,使故事中输入每句话的情感接近期望情感的情感属性,控制GPT
‑
2模型自动生成与期望情感一致的故事结尾文本。2.根据权利要求1所述的一种基于情感预训练模型的故事结尾生成方法,其特征在于,所述情感判别器和情感预测模型的训练步骤如下:S1,抽取故事中的故事线,将其拼接到原始故事的结尾增强数据;S2,通过交叉熵损失函数训练能自左向右自动回归生成句子的GPT
‑
2模型,通过步骤S1中故事线的增强数据来微调GPT
‑
2模型参数;S3,冻住步骤S2中的GPT
‑
2模型参数,通过SST
‑
5数据集训练一个用于判别故事中输入每句话情感和实时判别每个时刻输出的故事结尾情感的情感判别器;S4,通过步骤S3中的情感判别器判别故事中输入每句话的情感的情感向量来训练一个利用前四句故事的隐向量来预测我们结尾所期望情感的情感预测模型。3.根据权利要求2所述的一种基于情感预训练模型的故事结尾生成方法,其特征在于,所述步骤S2中训练GPT
‑
2模型的交叉熵损失函数,优化目标为最大化如下似然:其中,表示损失函数,P表示概率,u
i
为训练语料中第i个词汇,k为窗口大小。4.根据权利要求2所述的一种基于情感预训练模型的故事结尾生成方法,其特征在于,所述控制GPT
‑
2模型自动生成故事结尾文本的步骤如下:S5.生成过程中,通过交叉熵损失函数计算步骤S3中训练的情感判别器实时判别每个时刻输出的故事结尾情感和步骤S4中训练的情感预测模型的期望情感之间的情感差距;S6.通过步骤S5中所计算的情感差距反向传播获得情感梯度,将情感梯度当作扰动添加到GPT
‑
2模型的隐向量中,用于下一个词的计算;根据情感判别器返回的梯度,更新GPT
‑
2模型内部历史状态H
t
,然后根据得到的新的输出概率分布进行采样并生成新的单词o
t+1
;S7.通过步骤S6的情感梯度反馈,将情感预测模型内部的历史状态H更新为再通过GPT
‑
2模型根据新历史来生成更接近步骤S4中所计算的期望情感所需求的句子;S8.通过softmax函数生成按位置的前馈层产生目标词条的输出分布,生成故事结尾文本,再通过贝叶斯公式...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。