CN110287999A - 基于隐变量模型的故事生成方法及装置 - Google Patents
基于隐变量模型的故事生成方法及装置 Download PDFInfo
- Publication number
- CN110287999A CN110287999A CN201910450203.3A CN201910450203A CN110287999A CN 110287999 A CN110287999 A CN 110287999A CN 201910450203 A CN201910450203 A CN 201910450203A CN 110287999 A CN110287999 A CN 110287999A
- Authority
- CN
- China
- Prior art keywords
- model
- story
- outline
- hidden variable
- title
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000012549 training Methods 0.000 claims description 74
- 238000009826 distribution Methods 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 23
- 238000007781 pre-processing Methods 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 6
- 238000000342 Monte Carlo simulation Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 claims description 3
- 230000001427 coherent effect Effects 0.000 abstract 1
- 241000282414 Homo sapiens Species 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明提供一种基于隐变量模型的故事生成方法及装置,方法包括:基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲;其中,所述隐变量模型中的隐变量为所述大纲;基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事。本发明一方面利用故事大纲作为辅助指导信息使得生成的故事更加通顺、扣题,能够缩小故事生成中标题与故事之间的信息差,降低故事生成难度;另一方面,将故事大纲建模为隐变量,不限定其形式,使其能够蕴含更多的信息,并且隐变量是完全可学习的,具有很强的学习能力;此外还可以扩展成其他形式的文本生成,具有很好的实用性和通用性。
Description
技术领域
本发明属于文本生成技术领域,尤其涉及一种基于隐变量模型的故事生成方法及装置。
背景技术
随着大数据时代的来临,人们日常生产转换的数据量急剧增加,手动进行文本数据的生成整理带给人们越来越重的工作负担,人们对于自动文本生成的需求与日俱增。
随着人工智能技术的蓬勃发展,尤其是自然语言处理领域的相关技术逐渐成熟,自动文本生成成为一种可能。故事生成作为文本生成方向的一个子领域,因其输入与输出之间存在比较大的信息差,仍然是一个尚待解决的难题。
现有的故事生成方法大都是基于神经网络的架构,借助于当前序列生成最有效的Sequence-to-Sequence模型,故事生成方向也取得一定的进展,越来越多的研究开始致力于生成通顺的、扣题的故事。然而,不同于基于统计的方法,神经网络架构虽然具备强大的表示学习能力,但同时可控性相对而言就变得比较困难。而文本生成尤其是故事生成需要对给定标题进行信息的扩展,使之成为一篇完整的故事。仅仅依赖现有的端到端的生成模型很难很好的完成这一部分的功能。
目前已有的故事生成方法都依赖于端到端的生成模型。一方面端到端的序列生成模型并非为故事生成开发,而是针对机器翻译领域设计的,因此需要在此基础之上进行适当的调整。另一方面,故事生成更需要的是信息的扩展,这是一种比较开放式的任务,对目标故事的生成需要做一定的规划安排。
综上所述,现有的故事生成方法生成的故事不通顺、不切题。因此,亟需提供一种新的故事生成方法,以高质量地完成故事生成任务。
发明内容
为克服上述现有的故事生成方法生成的故事不通顺、不切题的问题或者至少部分地解决上述问题,本发明实施例提供一种基于隐变量模型的故事生成方法及装置。
根据本发明实施例的第一方面,提供一种基于隐变量模型的故事生成方法,包括:
基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲;其中,所述隐变量模型中的隐变量为所述大纲;
基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事。
根据本发明实施例第二方面提供一种基于隐变量模型的故事生成装置,包括:
第一生成模块,用于基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲;其中,所述隐变量模型中的隐变量为所述大纲;
第二生成模块,用于基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事。
根据本发明实施例的第三个方面,还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器调用所述程序指令能够执行第一方面的各种可能的实现方式中任一种可能的实现方式所提供的基于隐变量模型的故事生成方法。
根据本发明实施例的第四个方面,还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面的各种可能的实现方式中任一种可能的实现方式所提供的基于隐变量模型的故事生成方法。
本发明实施例提供一种基于隐变量模型的故事生成方法及装置,该方法通过将故事生成分成两步生成任务,并将中间产物故事大纲建模为隐变量构建隐变量模型,并对隐变量模型进行训练优化,先基于训练好的隐变量模型中的规划模型根据故事的标题生成故事的大纲,然后基于训练好的隐变量模型中的生成模型根据大纲和标题生成故事,从而模仿人类写故事的过程,利用故事大纲作为辅助指导信息使得生成的故事更加通顺、扣题;相较于直接用标题生成故事的方法,本实施例能够缩小故事生成中标题与故事之间的信息差,降低故事生成难度;相较于将其他分步故事生成方法,本实施例将故事大纲建模为隐变量,不限定其形式,使其能够蕴含更多的信息,并且隐变量是完全可学习的,具有很强的学习能力;本实施例还可以扩展成其他形式的文本生成,具有很好的实用性和通用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于隐变量模型的故事生成方法整体流程示意图;
图2为本发明实施例提供的基于隐变量模型的故事生成装置整体结构示意图;
图3为本发明实施例提供的电子设备整体结构示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
在本发明的一个实施例中提供一种基于隐变量模型的故事生成方法,图1为本发明实施例提供的基于隐变量模型的故事生成方法整体流程示意图,该方法包括:S101,基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲;其中,所述隐变量模型中的隐变量为所述大纲;
其中,隐变量是指不可直接观测特征的变量。隐变量模型是指对隐变量进行处理的模型。本实施例将故事的大纲作为隐变量模型的隐变量。隐变量模型包括规划模型和生成模型。在使用隐变量模型生成故事之前先对隐变量模型进行训练,通过训练对隐变量模型中的参数集合进行优化,隐变量模型中的参数集合包括规划模型的参数集合和生成模型的参数集合。故事的标题为预先设定好的,使用训练好的隐变量模型中的规划模型根据故事的标题生成故事的大纲是指将预先设定好的标题作为参数集合优化后的规划模型的输入,获取故事的大纲。
S102,基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事。
在生成好故事的大纲后,使用训练好的隐变量模型中的生成模型根据已生成的大纲和预先设定好的标题生成故事,即将已生成的大纲和预先设定好的标题作为参数集合优化后的参数模型的输入,生成故事。
本实施例通过将故事生成分成两步生成任务,并将中间产物故事大纲建模为隐变量构建隐变量模型,并对隐变量模型进行训练优化,先基于训练好的隐变量模型中的规划模型根据故事的标题生成故事的大纲,然后基于训练好的隐变量模型中的生成模型根据大纲和标题生成故事,从而模仿人类写故事的过程,利用故事大纲作为辅助指导信息使得生成的故事更加通顺、扣题;相较于直接用标题生成故事的方法,本实施例能够缩小故事生成中标题与故事之间的信息差,降低故事生成难度;相较于将其他分步故事生成方法,本实施例将故事大纲建模为隐变量,不限定其形式,使其能够蕴含更多的信息,并且隐变量是完全可学习的,具有很强的学习能力;本实施例还可以扩展成其他形式的文本生成,具有很好的实用性和通用性。
在上述实施例的基础上,本实施例中所述隐变量模型具体为:
P(y|x;θ,γ)=∑zP(z|x;θ)P(y|x,z;γ);
其中,P(y|x;θ,γ)为所述隐变量模型,P(z|x;θ)为规划模型,用于根据标题x生成大纲z,θ为所述规划模型的参数集,P(y|x,z;γ)为生成模型,用于根据标题x和大纲z生成故事y,γ为所述生成模型的参数集,大纲z是一个隐变量;
所述规划模型具体为:
其中,z<k=z1…zk-1表示大纲z的前k-1个词,P(zk|x,z<k;θ)表示根据标题x和所述大纲中已生成的前k-1个词生成的大纲z中第k个词的概率;
用x=x1…xI表示标题,其中包含I个词;用y=y1…yJ表示故事,其中包含J个词;用z=z1…zK表示故事的大纲,其中包含K个词。从中可以看出,规划模型生成大纲z的第k个词依赖于标题x和大纲中已生成的前k-1个词。本实施例采用Attention机制根据标题x和大纲中已生成的前k-1个词确定大纲z中第k个词的概率,从而获取大纲第 k个词的概率分布。在生成过程中将第k个词属于词典中概率最高的词作为第k个词。具体先使用Attention机制确定标题的概率分布和大纲前k-1个词各自的概率分布,然后使用Attention机制根据标题的概率分布和大纲前k-1个词各自的概率分布确定大纲第k个词的概率分布。
所述生成模型具体为:
其中,y<j=y1…yj-1表示故事y的前j-1个词,P(yj|x,z,y<j;γ) 表示根据标题x、大纲z和所述故事中已经生成的前j-1个词生成的故事y中第j个词的概率。
从中可以看出,生成模型生成故事y的第k个词依赖于标题x、大纲z和故事中已生成的前j-1个词。本实施例采用Attention机制根据标题x、大纲z和故事中已生成的前k-1个词确定故事y中第k个词的概率,从而获取故事第k个词的概率分布。具体先使用Attention机制确定标题的概率分布、大纲z的概率分布和故事中已生成的前k-1个词各自的概率分布,然后使用Attention机制根据标题的概率分布、大纲的概率分布和故事前k-1个词各自的概率分布确定故事第k个词的概率分布。
在上述实施例的基础上,本实施例中在基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲步骤之前还包括通过以下训练目标函数对所述隐变量模型进行训练:
其中,为目标函数,P(z|x,y;φ)为摘要模型,用于根据标题x和故事y生成大纲z,φ为所述摘要模型的参数集, Ez|x;θ[logP(y|x,z;γ)]表示生成模型的概率期望, KL(P(z|x,y;φ)||P(z|x;θ))表示规划模型的概率分布与摘要模型的概率分布之间的KL散度;
所述摘要模型具体为:
其中,z<k=z1…zk-1表示大纲z的前k-1个词,P(zk|x,y,z<k;φ) 表示根据标题x、故事y和所述大纲中已生成的前k-1个词生成的大纲 z中第k个词的概率。
具体地,本实施例使用变分推断对隐变量模型进行训练优化。从中可以看出,摘要模型生成大纲z的第k个词依赖于标题x、故事y和大纲中已生成的前j-1个词。本实施例采用Attention机制根据标题x、故事y和大纲中已生成的前k-1个词确定大纲z中第k个词的概率,从而获取大纲第k个词的概率分布。具体先使用Attention机制确定标题的概率分布、故事y的概率分布和大纲中已生成的前k-1个词各自的概率分布,然后使用Attention机制根据标题的概率分布、故事的概率分布和大纲前k-1个词各自的概率分布确定故事第k个词的概率分布。训练目标函数包含两项,即第一项是生成模型的一个概率期望;第二项是规划模型概率分布与摘要模型概率分布的KL散度,通过最大化该训练目标函数可以优化整个隐变量模型。KL散度是两个概率分布间差异的非对称性度量。
在上述实施例的基础上,本实施例中还包括通过以下公式对所述训练目标函数进行近似,使用近似后的所述训练目标函数对所述隐变量模型进行训练:
其中,z(m)和z(n)对应为基于蒙特卡洛方法从规划模型和摘要模型中采样出的大纲,M为从所述规划模型中采样出的大纲数量,N为从所述摘要模型中采样出的大纲数量。
具体地,由于规划模型和摘要模型中大纲的概率分布范围很广,计算量很大。为了减少运算,本实施例从规划模型和摘要模型中分别采样出概率大于预设阈值的部分大纲。
在上述实施例的基础上,本实施例中在通过训练目标函数对所述隐变量模型进行训练之前还包括通过以下预训练目标函数对所述隐变量模型进行预训练,获取所述规划模型、所述生成模型和所述摘要模型中优化后的参数集:
其中,θ0表示所述规划模型中优化后的参数集,γ0表示所述生成模型中优化后的参数集,φ0表示所述摘要模型中优化后的参数集,S 表示预训练数据的组数,每组所述预训练数据包括标题、故事和从故事中抽取的大纲,x(s)表示第s组预训练数据中的标题、y(s)表示第s 组预训练数据中的故事,表示第s组预训练数据中的大纲;将所述规划模型、所述生成模型和所述摘要模型中优化后的参数集作为训练时的初始参数集。
具体地,在对隐变量模型进行训练之前,先对隐变量模型进行预训练。首先构建预训练数据,每一组预数量数据包括标题、大纲和故事,每组原始训练数据包含其中的两项,标题和故事。使用抽取器从故事中抽取一个关键句作为大纲,最终得到的预训练数据为:
其中,S表示预训练数据的组数,x(s),y(s),分别表示标题、故事以及从故事中抽取出的大纲。然后根据预训练目标函数对隐变量模型进行预训练,将预训练后的隐变量模型的参数集合作为训练时隐变量模型的初始值,从而进一步提高训练的精度。
在上述实施例的基础上,本实施例中基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲的步骤具体包括:基于Beam Search方法通过以下公式根据故事的标题生成所述故事的大纲:
其中,为生成的所述故事的大纲,为训练好的隐变量模型中规划模型的参数集;相应地,基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事的步骤具体包括:基于 Beam Search方法通过以下公式根据所述大纲和所述标题生成所述故事:
其中,为生成的所述故事,为训练好的隐变量模型中的生成模型的参数集。
在上述实施例的基础上,本实施例中在通过训练目标函数对所述隐变量模型进行训练之前还包括:对用于训练的训练集进行预处理;其中,每组所述训练集包括标题和故事;预处理包括统一大小写、分词和构建词表。
具体地,本实施例对构建的所有数据集进行预处理。数据集包括用于训练的训练集,以及验证集和测试集。数据集由<标题,故事>对组成。预处理后的数据集用于后续的隐变量模型训练和测试。预处理包括对数据集进行统一大小写,分词Tokenization,以及构建词表操作。在生成故事之后进行后处理,后处理相应为反Tokenization、恢复大小写,以及去除冗余词语和句子。
在本发明的另一个实施例中提供一种基于隐变量模型的故事生成装置,该装置用于实现前述各实施例中的方法。因此,在前述基于隐变量模型的故事生成方法的各实施例中的描述和定义,可以用于本发明实施例中各个执行模块的理解。图2为本发明实施例提供的基于隐变量模型的故事生成装置整体结构示意图,该装置包括第一生成模块 201和第二生成模块202,其中:
第一生成模块201用于基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲;其中,所述隐变量模型中的隐变量为所述大纲;
其中,隐变量是指不可直接观测特征的变量。隐变量模型是指对隐变量进行处理的模型。本实施例将故事的大纲作为隐变量模型的隐变量。隐变量模型包括规划模型和生成模型。在使用隐变量模型生成故事之前先对隐变量模型进行训练,通过训练对隐变量模型中的参数集合进行优化,隐变量模型中的参数集合包括规划模型的参数集合和生成模型的参数集合。故事的标题为预先设定好的,第一生成模块201 使用训练好的隐变量模型中的规划模型根据故事的标题生成故事的大纲是指将预先设定好的标题作为参数集合优化后的规划模型的输入,获取故事的大纲。
第二生成模块202用于基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事。
在生成好故事的大纲后,第二生成模块202使用训练好的隐变量模型中的生成模型根据已生成的大纲和预先设定好的标题生成故事,即将已生成的大纲和预先设定好的标题作为参数集合优化后的参数模型的输入,生成故事。
本实施例通过将故事生成分成两步生成任务,并将中间产物故事大纲建模为隐变量构建隐变量模型,并对隐变量模型进行训练优化,先基于训练好的隐变量模型中的规划模型根据故事的标题生成故事的大纲,然后基于训练好的隐变量模型中的生成模型根据大纲和标题生成故事,从而模仿人类写故事的过程,利用故事大纲作为辅助指导信息使得生成的故事更加通顺、扣题;相较于直接用标题生成故事的方法,本实施例能够缩小故事生成中标题与故事之间的信息差,降低故事生成难度;相较于将其他分步故事生成方法,本实施例将故事大纲建模为隐变量,不限定其形式,使其能够蕴含更多的信息,并且隐变量是完全可学习的,具有很强的学习能力;本实施例还可以扩展成其他形式的文本生成,具有很好的实用性和通用性。
在上述实施例的基础上,本实施例中所述隐变量模型具体为:
P(y|x;θ,γ)=∑zP(z|x;θ)P(y|x,z;γ);
其中,P(y|x;θ,γ)为所述隐变量模型,P(z|x;θ)为规划模型,用于根据标题x生成大纲z,θ为所述规划模型的参数集,P(y|x,z;γ)为生成模型,用于根据标题x和大纲z生成故事y,γ为所述生成模型的参数集;
所述规划模型具体为:
其中,z<k=z1…zk-1表示大纲z的前k-1个词,P(zk|x,z<k;θ)表示根据标题x和所述大纲中已生成的前k-1个词生成的大纲z中第k个词的概率;
所述生成模型具体为:
其中,y<j=y1…yj-1表示故事y的前j-1个词,P(yj|x,z,y<j;γ) 表示根据标题x、大纲z和所述故事中已经生成的前j-1个词生成的故事y中第j个词的概率。
在上述实施例的基础上,本实施例中还包括训练模块,训练模块具体通过以下训练目标函数对所述隐变量模型进行训练:
其中,为目标函数,P(z|x,y;φ)为摘要模型,用于根据标题x和故事y生成大纲z,φ为所述摘要模型的参数集, Ez|x;θ[logP(y|x,z;γ)]表示生成模型的概率期望,KL(P(z|x,y;φ)||P(z|x;θ))表示规划模型的概率分布与摘要模型的概率分布之间的KL散度;
所述摘要模型具体为:
其中,P(zk|x,y,z<k;φ)表示根据标题x、故事y和所述大纲中已生成的前k-1个词生成的大纲z中第k个词的概率。
在上述实施例的基础上,本实施例中还包括近似模块,近似模块具体通过以下公式对所述训练目标函数进行近似,以供训练模块使用近似后的所述训练目标函数对所述隐变量模型进行训练:
其中,z(m)和z(n)对应为基于蒙特卡洛方法从规划模型和摘要模型中采样出的大纲,M为从所述规划模型中采样出的大纲数量,N为从所述摘要模型中采样出的大纲数量。
在上述实施例的基础上,本实施例中还包括预训练模块,预训练模块具体通过以下预训练目标函数对所述隐变量模型进行预训练,获取所述规划模型、所述生成模型和所述摘要模型中优化后的参数集:
其中,θ0表示所述规划模型中优化后的参数集,γ0表示所述生成模型中优化后的参数集,φ0表示所述摘要模型中优化后的参数集,S 表示预训练数据的组数,每组所述预训练数据包括标题、故事和从故事中抽取的大纲,x(s)表示第s组预训练数据中的标题、y(s)表示第s 组预训练数据中的故事,表示第s组预训练数据中的大纲;
将所述规划模型、所述生成模型和所述摘要模型中优化后的参数集作为训练时的初始参数集。
在上述实施例的基础上,本实施例中第一生成模块具体用于基于Beam Search方法通过以下公式根据故事的标题生成所述故事的大纲:
其中,为生成的所述故事的大纲,为训练好的隐变量模型中规划模型的参数集;
相应地,第二生成模块具体用于基于Beam Search方法通过以下公式根据所述大纲和所述标题生成所述故事:
其中,为生成的所述故事,为训练好的隐变量模型中的生成模型的参数集。
在上述实施例的基础上,本实施例中还包括预处理模块,用于对用于训练的训练集进行预处理;其中,每组所述训练集包括标题和故事;预处理包括统一大小写、分词和构建词表。
本实施例提供一种电子设备,图3为本发明实施例提供的电子设备整体结构示意图,该设备包括:至少一个处理器301、至少一个存储器302和总线303;其中,
处理器301和存储器302通过总线303完成相互间的通信;
存储器302存储有可被处理器301执行的程序指令,处理器调用程序指令能够执行上述各方法实施例所提供的方法,例如包括:基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲;其中,所述隐变量模型中的隐变量为所述大纲;基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事。
本实施例提供一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,计算机指令使计算机执行上述各方法实施例所提供的方法,例如包括:基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲;其中,所述隐变量模型中的隐变量为所述大纲;基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于隐变量模型的故事生成方法,其特征在于,包括:
基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲;其中,所述隐变量模型中的隐变量为所述大纲;
基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事。
2.根据权利要求1所述的基于隐变量模型的故事生成方法,其特征在于,所述隐变量模型具体为:
P(y|x;θ,γ)=∑zP(z|x;θ)P(y|x,z;γ);
其中,P(y|x;θ,γ)为所述隐变量模型,P(z|x;θ)为规划模型,用于根据标题x生成大纲z,θ为所述规划模型的参数集,P(y|x,z;γ)为生成模型,用于根据标题x和大纲z生成故事y,γ为所述生成模型的参数集;
所述规划模型具体为:
其中,z<k=z1…zk-1表示大纲z的前k-1个词,P(zk|x,z<k;θ)表示根据标题x和所述大纲中已生成的前k-1个词生成的大纲z中第k个词的概率;
所述生成模型具体为:
其中,y<j=y1…yj-1表示故事y的前j-1个词,P(yj|x,z,y<j;γ)表示根据标题x、大纲z和所述故事中已经生成的前j-1个词生成的故事y中第j个词的概率。
3.根据权利要求2所述的基于隐变量模型的故事生成方法,其特征在于,在基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲步骤之前还包括通过以下训练目标函数对所述隐变量模型进行训练:
其中,为目标函数,P(z|x,y;φ)为摘要模型,用于根据标题x和故事y生成大纲z,φ为所述摘要模型的参数集,Ez|x;θ[log P(y|x,z;γ)]表示生成模型的概率期望,KL(P(z|x,y;φ)||P(z|x;θ))表示规划模型的概率分布与摘要模型的概率分布之间的KL散度;
所述摘要模型具体为:
其中,P(zk|x,y,z<k;φ)表示根据标题x、故事y和所述大纲中已生成的前k-1个词生成的大纲z中第k个词的概率。
4.根据权利要求3所述的基于隐变量模型的故事生成方法,其特征在于,还包括通过以下公式对所述训练目标函数进行近似,使用近似后的所述训练目标函数对所述隐变量模型进行训练:
其中,z(m)和z(n)对应为基于蒙特卡洛方法从规划模型和摘要模型中采样出的大纲,M为从所述规划模型中采样出的大纲数量,N为从所述摘要模型中采样出的大纲数量。
5.根据权利要求3所述的基于隐变量模型的故事生成方法,其特征在于,在通过训练目标函数对所述隐变量模型进行训练之前还包括通过以下预训练目标函数对所述隐变量模型进行预训练,获取所述规划模型、所述生成模型和所述摘要模型中优化后的参数集:
其中,θ0表示所述规划模型中优化后的参数集,γ0表示所述生成模型中优化后的参数集,φ0表示所述摘要模型中优化后的参数集,S表示预训练数据的组数,每组所述预训练数据包括标题、故事和从故事中抽取的大纲,x(s)表示第s组预训练数据中的标题、y(s)表示第s组预训练数据中的故事,表示第s组预训练数据中的大纲;
将所述规划模型、所述生成模型和所述摘要模型中优化后的参数集作为训练时的初始参数集。
6.根据权利要求2所述的基于隐变量模型的故事生成方法,其特征在于,基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲的步骤具体包括:
基于Beam Search方法通过以下公式根据故事的标题生成所述故事的大纲:
其中,为生成的所述故事的大纲,为训练好的隐变量模型中规划模型的参数集;
相应地,基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事的步骤具体包括:
基于Beam Search方法通过以下公式根据所述大纲和所述标题生成所述故事:
其中,为生成的所述故事,为训练好的隐变量模型中的生成模型的参数集。
7.根据权利要求3所述的基于隐变量模型的故事生成方法,其特征在于,在通过训练目标函数对所述隐变量模型进行训练之前还包括:
对用于训练的训练集进行预处理;其中,每组所述训练集包括标题和故事;
预处理包括统一大小写、分词和构建词表。
8.一种基于隐变量模型的故事生成装置,其特征在于,包括:
第一生成模块,用于基于训练好的隐变量模型中的规划模型,根据故事的标题生成所述故事的大纲;其中,所述隐变量模型中的隐变量为所述大纲;
第二生成模块,用于基于所述训练好的隐变量模型中的生成模型,根据所述大纲和所述标题生成所述故事。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述基于隐变量模型的故事生成方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述基于隐变量模型的故事生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910450203.3A CN110287999B (zh) | 2019-05-28 | 2019-05-28 | 基于隐变量模型的故事生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910450203.3A CN110287999B (zh) | 2019-05-28 | 2019-05-28 | 基于隐变量模型的故事生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110287999A true CN110287999A (zh) | 2019-09-27 |
CN110287999B CN110287999B (zh) | 2021-05-28 |
Family
ID=68002562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910450203.3A Active CN110287999B (zh) | 2019-05-28 | 2019-05-28 | 基于隐变量模型的故事生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110287999B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111414737A (zh) * | 2020-03-23 | 2020-07-14 | 腾讯科技(深圳)有限公司 | 故事生成模型训练方法、装置、设备及存储介质 |
CN112395842A (zh) * | 2020-12-01 | 2021-02-23 | 中山大学 | 一种提高内容一致性的长文本故事生成方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150120254A1 (en) * | 2013-10-29 | 2015-04-30 | Nec Corporation | Model estimation device and model estimation method |
CN108280772A (zh) * | 2018-01-24 | 2018-07-13 | 北京航空航天大学 | 社交网络中基于事件关联的故事脉络生成方法 |
CN108764299A (zh) * | 2018-05-04 | 2018-11-06 | 北京物灵智能科技有限公司 | 故事模型训练及生成方法、系统、机器人及存储设备 |
CN108874785A (zh) * | 2018-06-01 | 2018-11-23 | 清华大学 | 一种翻译处理方法及系统 |
-
2019
- 2019-05-28 CN CN201910450203.3A patent/CN110287999B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150120254A1 (en) * | 2013-10-29 | 2015-04-30 | Nec Corporation | Model estimation device and model estimation method |
CN108280772A (zh) * | 2018-01-24 | 2018-07-13 | 北京航空航天大学 | 社交网络中基于事件关联的故事脉络生成方法 |
CN108764299A (zh) * | 2018-05-04 | 2018-11-06 | 北京物灵智能科技有限公司 | 故事模型训练及生成方法、系统、机器人及存储设备 |
CN108874785A (zh) * | 2018-06-01 | 2018-11-23 | 清华大学 | 一种翻译处理方法及系统 |
Non-Patent Citations (1)
Title |
---|
FAN,ET AL: ""Hierarchical Neural Story Generato"", 《RESEARCH GATE》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111414737A (zh) * | 2020-03-23 | 2020-07-14 | 腾讯科技(深圳)有限公司 | 故事生成模型训练方法、装置、设备及存储介质 |
CN111414737B (zh) * | 2020-03-23 | 2022-03-08 | 腾讯科技(深圳)有限公司 | 故事生成模型训练方法、装置、设备及存储介质 |
CN112395842A (zh) * | 2020-12-01 | 2021-02-23 | 中山大学 | 一种提高内容一致性的长文本故事生成方法及系统 |
CN112395842B (zh) * | 2020-12-01 | 2024-02-02 | 中山大学 | 一种提高内容一致性的长文本故事生成方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110287999B (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4174715A1 (en) | Method and apparatus for pre-training a language model, storage medium and program product | |
Choe et al. | A neural grammatical error correction system built on better pre-training and sequential transfer learning | |
CN107273355B (zh) | 一种基于字词联合训练的中文词向量生成方法 | |
US20210256390A1 (en) | Computationally efficient neural network architecture search | |
CN111143576A (zh) | 一种面向事件的动态知识图谱构建方法和装置 | |
Cuayáhuitl et al. | Evaluation of a hierarchical reinforcement learning spoken dialogue system | |
CN107408111A (zh) | 端对端语音识别 | |
CN112464676B (zh) | 机器翻译结果打分方法和装置 | |
US20120262461A1 (en) | System and Method for the Normalization of Text | |
CN111460833A (zh) | 文本生成方法、装置和设备 | |
CN110991195A (zh) | 机器翻译模型训练方法、装置及存储介质 | |
CN112349294B (zh) | 语音处理方法及装置、计算机可读介质、电子设备 | |
CN110287999B (zh) | 基于隐变量模型的故事生成方法及装置 | |
CN115357719A (zh) | 基于改进bert模型的电力审计文本分类方法及装置 | |
CN110414003A (zh) | 建立文本生成模型的方法、装置、介质和计算设备 | |
CN111027292A (zh) | 一种限定采样文本序列生成方法及其系统 | |
Tian et al. | Tod-da: Towards boosting the robustness of task-oriented dialogue modeling on spoken conversations | |
CN111832699A (zh) | 用于神经网络的计算高效富于表达的输出层 | |
Lee et al. | An unsupervised approach to user simulation: toward self-improving dialog systems | |
CN114822518A (zh) | 知识蒸馏方法、电子设备和存储介质 | |
CN117057414B (zh) | 一种面向文本生成的多步协作式提示学习的黑盒知识蒸馏方法及系统 | |
CN109299007A (zh) | 一种缺陷修复者自动推荐方法 | |
WO2024069978A1 (ja) | 生成装置、学習装置、生成方法、学習方法、及びプログラム | |
Han et al. | Lexicalized neural unsupervised dependency parsing | |
US20220108174A1 (en) | Training neural networks using auxiliary task update decomposition |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |