CN110110331B - 文本生成方法、装置、介质和计算设备 - Google Patents
文本生成方法、装置、介质和计算设备 Download PDFInfo
- Publication number
- CN110110331B CN110110331B CN201910362399.0A CN201910362399A CN110110331B CN 110110331 B CN110110331 B CN 110110331B CN 201910362399 A CN201910362399 A CN 201910362399A CN 110110331 B CN110110331 B CN 110110331B
- Authority
- CN
- China
- Prior art keywords
- subset
- input data
- text
- text block
- probability
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 132
- 239000013598 vector Substances 0.000 claims description 37
- 238000009826 distribution Methods 0.000 claims description 34
- 125000004122 cyclic group Chemical group 0.000 claims description 26
- 238000013528 artificial neural network Methods 0.000 claims description 23
- 238000012549 training Methods 0.000 claims description 22
- 230000000306 recurrent effect Effects 0.000 claims description 21
- 230000014509 gene expression Effects 0.000 claims description 20
- 238000005070 sampling Methods 0.000 claims description 13
- 230000002457 bidirectional effect Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 abstract description 11
- 241000282414 Homo sapiens Species 0.000 abstract description 6
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 239000007795 chemical reaction product Substances 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000002474 experimental method 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
- 230000003068 static effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/34—Browsing; Visualisation therefor
- G06F16/345—Summarisation for human users
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明的实施方式提供了一种文本生成方法。该方法包括:将文本生成任务规划为多个文本块生成子任务;重复执行以下文本块生成子任务直到所有子任务执行完毕:基于输入数据集合的子集组合序列中的当前子集以及在先子任务生成文本块。根据本发明的文本生成方法,在生成文本过程中模拟人类的写作过程,合理规划文章结构和各个部分的内容,能够使得长文本中的句子与前后文之前取得较高的一致性和流畅性,并且更加全面的覆盖输入数据集合。此外,本发明的实施方式提供了一种文本生成装置、介质和计算设备。
Description
技术领域
本发明的实施方式涉及自然语言处理领域,更具体地,本发明的实施 方式涉及一种文本生成方法、装置、介质和计算设备。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上 下文。此处的描述不因为包括在本部分中就承认是现有技术。
数据到文本生成是从结构化数据生成自然语言文本,其具有广泛的应 用(用于天气预报,比赛报告,产品描述,广告文档等)。现有的一些基 于神经网络的文本生成模型能够在某些应用中生成流畅且连贯的短文本。 然而,在需要生成(如产品描述)篇幅较长的文本时,现有方法无法保证 句子间表达的一致性,前后衔接的流畅性,以及对输入数据集合较高的覆 盖率,并且表达方式也不够多样化。
发明内容
为此,非常需要一种改进的文本生成方法,更加适合基于输入数据集 合生成篇幅较长的文本。
在本上下文中,本发明的实施方式期望提供一种文本生成方法、装置、 介质和计算设备。
在本发明实施方式的第一方面中,提供了一种文本生成方法,包括:
将文本生成任务规划为多个文本块生成子任务;
重复执行以下文本块生成子任务直到所有子任务执行完毕:
基于输入数据集合的子集组合序列中的当前子集以及在先子任务生 成文本块。
在本发明实施方式的第二方面中,提供了一种文本生成装置,包括:
任务规划模块,被配置为将文本生成任务规划为多个文本块生成子任 务;
任务执行模块,被配置为重复执行以下文本块生成子任务直到所有子 任务执行完毕:
基于输入数据集合的子集组合序列中的当前子集以及在先子任务生 成文本块。
在本发明实施方式的第三方面中,提供了一种计算机可读存储介质, 存储有程序代码,所述程序代码当被处理器执行时,实现如第一方面任一 实施例所述的方法。
在本发明实施方式的第四方面中,提供了一种计算设备,包括处理器 和存储有程序代码的存储介质,所述程序代码当被处理器执行时,实现如 第一方面任一实施例所述的方法。
根据本发明实施方式的文本生成方法、装置、介质和计算设备,可以 将长文本生成任务分解为多个依赖相应组和先前生成的文本块的文本块 生成子任务,然后再逐一执行子任务生成相应的文本块,最后拼接为长文 本。根据本发明的文本生成方法,在生成文本过程中模拟人类的写作过程, 合理规划文章结构和各个部分的内容,能够使得长文本中的句子与前后文 之前取得较高的一致性和流畅性,并且更加全面的覆盖输入数据集合。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以 及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制 性的方式示出了本发明的若干实施方式,其中:
图1示意性地示出了根据本发明各个实施方式的一种应用场景示意 图;
图2示意性地示出了根据本发明一实施方式的文本生成方法的流程示 意图;
图3示意性地示出了根据本发明各个实施方式的通过输入多个数据进 行广告文本生成的示意图
图4示意性地示出了根据本发明各个实施方式的又一应用场景示意 图;
图5示意性地示出了根据本发明各实施方式构建的模型的结构示意 图;
图6示意性地示出了根据本发明各个实施方式构建的模型与其他模型 针对于相同输入的实验结果;
图7示意性地示出了根据本发明一实施方式的文本生成装置的模块示 意图;
图8示意性地示出了根据本发明实施方式提供的一种计算机可读存储 介质的示意图;
图9示意性地示出了根据本发明实施方式提供的一种计算设备的示意 图;
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理 解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而 实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施 方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传 达给本领域的技术人员。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、 设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式, 即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者 硬件和软件结合的形式。
根据本发明的实施方式,提出了一种文本生成方法、介质、装置和计 算设备。
此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都 仅用于区分,而不具有任何限制含义。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精 神。
发明概述
本发明人发现,在撰写篇幅较长的文章时,人类作者总是先进行大纲 的撰写,安排每部分的内容和语句结构(即高级规划),然后逐个完成每 个部分的撰写(低级实现)。由此得到启示,发明人首先将输入数据集合 分割成一系列组,然后生成以相应组和先前生成的文本块为条件的文本块。 通过这种方式,本申请将长文本生成任务分解为多个依赖相应组和先前生 成的文本块的文本块生成子任务,然后再逐一执行子任务生成相应的文本块,最后拼接为长文本。
通过本方法生成的长文本,模拟人类的写作过程,合理规划文章结构 和各个部分的内容,能够使得长文本中的句子与前后文之前取得较高的一 致性,并且更加全面的覆盖输入数据集合。
另外,本发明的方法还通过在不同层级分别引入全局隐变量和局部隐 变量,使得生成的文本能够具有多样化的表达。
在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制 性实施方式。
应用场景总览
首先参考图1,图1是根据本发明实施方式的第一方面所提供的文本 生成方法的应用场景示意图,图中左侧部分为多个输入数据,图中右侧部 分为根据本发明所公开的方法对多个输入数据处理后得到长文本,其中, 所述方法的执行主体可以是本地计算设备,也可以是服务器、服务器集群 或虚拟服务器等,通过网络(局域网/互联网)向本地提供服务,使得本地 用户能够通过提供足够的输入数据以得到相应的长文本。
示例性方法
下面结合图1的应用场景,参考图2来描述根据本发明示例性实施方 式的用于文本生成的方法。需要注意的是,上述应用场景仅是为了便于理 解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。 相反,本发明的实施方式可以应用于适用的任何场景。
图2是本发明实施方式第一方面所述的一种文本生成方法的实施例的 流程示意图。虽然本发明提供了如下述实施例或附图所示的方法操作步骤 或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以 包括更多或者部分合并后更少的操作步骤或模块单元。在逻辑性上不存在 必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不 限于本发明实施例或附图所示的执行顺序或模块结构。所述的方法或模块 结构的在实际中的装置、服务器或终端产品应用时,可以按照实施例或者 附图所示的方法或模块结构进行顺序执行或者并行执行(例如并行处理器 或者多线程处理的环境、甚至包括分布式处理、服务器集群的实施环境)。
为了清楚起见,下述实施例以具体的一个用户通过输入多个数据进行 广告文本生成的实施场景进行说明(如图3所示)。但是,本领域技术人 员能够理解到,可以将本方案的实质精神应用到文本生成的其他实施场景 中,如参照图4,用户输入一篇文章后,根据本发明的规划思想,将所述 文章中的句子集合划分为多个子集,然后浓缩成一句话(摘要)(例如分 别基于每个子集选出用于生成摘要的关键字,最后基于各个关键字生成摘 要)。
具体的一种实施例如图2所示,本发明提供的一种文本生成方法的一 种实施例中,所述方法可以包括:
步骤S110,将文本生成任务规划为多个文本块生成子任务;
在本实施方式中,首先对文本生成任务进行规划,将其分解为一系列 从属的文本块生成子任务,在本实施方式的一个实施例中,将文本生成任 务规划为多个文本块生成子任务,包括:
基于所述输入数据集合生成一个包括所有输入数据的子集组合序列;
基于所述子集组合序列对应规划多个文本块生成子任务。
具体的,若所述输入数据集合x={d1,d2,d3,…,dn},那么所述输入数 据集合的子集有2n个,选取其中(非空真子集)的若干个适合的子集组成 子集组合序列(一个子集组合序列中可能存在具有相同元素的两个子集), 用以生成相应的文本块来完成文本生成任务(每一个子集中的数据均用于 对应生成相应的文本块),例如,生成的子集组合序列为g=g1g2g3…gT(gT 表示第T个子集),那么执行完所有文本块子任务后生成的文本为 y=s1s2s3…sT(sT表示第T个文本块)。
为了简化处理(学习)过程,在本实施方式的一个实施例中,所述输 入数据集合在输入之前被按照预设规则(例如在所述输入数据为键值对时, 定义属性之间的排序关系为其中一般属性在特定属性之前)排序后利用双 向循环神经网络排序后的输入数据集合编码,具体的,在每一所述输入数 据的格式为键值对(ai;vi)时,每一输入数据均被表示为di=[e(ai);e(vi)], 其中e将ai和vi分别一一映射为向量,然后,所述双向循环神经网络(BDRNN)为双向门控循环单元(还可以是双向LSTM),被配置为将前 向门控循环单元和后向门控循环单元的末隐状态拼接,作为输入数据集合 的编码表示:
将每个时刻的前向门控循环单元和后向门控循环单元的隐状态拼接, 作为相应时刻的输入数据的编码表示:
可以理解的是,在本实施方式的一个实施例中,将输入数据集合编码 的编码器不一定是循环神经网络RNN;采用其他神经网络的编码器或其他 编码方案也是可行的,例如多层感知器(MLP)和词袋(bag of words)。
考虑到语言表达的多样性,即采用相同的几个词语也可以进行相同或 不同语义的造句,即使语义相同的句子也可以有很多种不同的句式结构或 表达方式,在本实施方式的一个实施例中,为了使得生成的文本具有更加 多样化的表达,将文本生成任务规划为至少一个能够生成合理的语句结构 的文本的包括多个文本块生成子任务的任务组(不同的任务组能够产生不 同的文本),具体的,基于所述输入数据集合生成至少一个包括所有输入 数据的子集组合序列(即生成不同的子集组合序列);然后基于每一子集 组合序列对应规划每一包括多个文本块生成子任务的任务组。
在本实施方式的一个实施例中,引入全局隐变量(可以基于所述输入 数据集合的编码表示来得到,具体的,基于所述输入数据集合的编码表示 来构建的概率分布采样获得)控制文本的多样化表达,具体的,基于所述 全局隐变量将所述文本生成任务规划为至少一个包括多个文本块生成子 任务的任务组,例如,基于全局隐变量以及所述输入数据集合生成至少一 个包括所有输入数据的子集组合序列;基于每一子集组合序列对应规划每一包括多个文本块生成子任务的任务组。
在本实施方式的一个实施例中,可以获取给定条件(输入数据集合x和全 局隐变量zp)下,概率最大的子集组合序列作为被采用的子集组合序列g:
g=argmaxgP(g|x,zp);
公式中,g表示子集组合序列,x表示输入数据集合,zp表示全局隐变 量。
全局隐变量的不同采样结果可能导致不同的规划结果(子集组合序列) (生成不同的子集组合序列)。在本实施方式的一个实施例中,所述全局 隐变量在推断和训练阶段基于不同的概率分布获得,具体的,所述全局隐 变量可以在推断阶段从其先验分布采样获得, 在训练阶段从其近似后验分布 采样获取:
[μp;log(σp2)]=MLPθ(x)
[μp′;log(σp′2)]=MLPθ′(x,y)。
接下来,需要确定所述子集组合序列中的每一子集,具体的,所述子集 组合序列中的子集可以逐个确定,例如,所述子集组合序列中的子集由以下 确定:
其中,gt表示所述子集组合序列中的第t个子集,g<t表示gt之前的所 有子集。
在本实施例中,可以通过一个计划解码器(可以采用循环神经网络,例 如门控循环单元GRU)确定所述子集组合序列中的每一子集,也即通过计划 解码器求解上述公式来确定当前子集,具体的,可以通过确定当前子集中的 元素来确定当前子集,其中,子集组合序列中每一子集中所包括的元素由以 下确定:
确定输入数据集合中每一输入数据属于当前子集的概率;
选取概率大于第一预设阈值(例如0.5)的输入数据作为当前子集的元素。
在本实施方式的一个实施例中,可以通过以下确定输入数据集合中每一 输入数据属于当前子集的概率:
其中,di表示第i个输入数据,σ表示sigmoid函数,tanh表示双曲正切 函数,Wp、bp表示控制参数,hi为di编码后的向量表示,表示 计划解码器在时间步t产生的隐状态向量(包含如何选择子集的信息)。
也即在本实施方式的一个实施例中,在时间步t可以基于所述计划解码 器确定当前子集时产生的隐状态向量和输入数据的编码表示来确定所述输入 数据属于当前子集的概率。
在下一个时间步,将bow(gt)提供给所述计划解码器,以便明确输 入数据集合的采用情况。以上步骤将会持续进行(逐一确定各个子集中包括 的元素),直到下一个时间步的停止概率超过第二预设阈值(例如0.5),其 中,所述当前时间步的停止概率基于当前隐状态向量计算:
在基于以上步骤完成规划之后,接下来,执行步骤S120,重复执行以下 文本块生成子任务直到所有子任务执行完毕:基于输入数据集合的子集组 合序列中的当前子集以及在先子任务生成文本块。
根据以上步骤,一个任务组中的所有子任务被执行完毕时,生成的文 本为:
y=S1S2...ST;
其中,y表示文本,ST表示第T个文本块。
所述文本应该和规划结果(子集组合序列)g=g1g2…gT一致;
其中,g表示子集组合序列,gT表示第T个子集。
以上过程可通过下式表示:
c={x,zp}
y=argmaxyP(y|g,c)
在本实施方式的一个实施例中,可以通过计算
来逐一确定文本中的文本块(基于输入数据集合的子集组合序列中的 当前子集以及在先子任务生成文本块),其中,st表示第t个文本块,s<t 表示st之前的所有文本块,c={x,zP};
另外,在生成过程中,句子和单词分层生成,其中句子级生成拟合句子 间的一致性和流畅性,并交互式地控制进行句子实现的单词级别的生成/选择。
具体的,在本实施方式的一个实施例中,采用句子解码器以及字解码 器实现所述文本块,其中,句子解码器(GRU)执行句子级生成;对于要生 成的每个句子,它产生文本块的表达形式并引入局部隐变量来控制 句子实现。
其中,所述局部隐变量基于在先文本块、在先局部隐变量以及当前子 集得到,具体的,所述局部隐变量从其概率分布采样获得,所述概率分布基 于在先文本块、在先局部隐变量以及当前子集计算得到,局部隐变量的不 同采样结果可能导致不同的句子实现结果。在本实施方式的一个实施例中, 所述局部隐变量在推断和训练阶段基于不同的概率分布获得,具体的,所 述局部隐变量在推断阶段从其先验分布采样获得,在训练阶段从其近似后验分布 采样获取:
通过以上方式,本实施例在两个方面控制了的分布。首先,为了加 强与规划结果(子集组合序列)g的联系,本实施例中另外在gt上调整以使专注于gt。其次,为了拟合对S<t的依赖关系,我们通过将输 入到句子解码器来明确地模拟局部隐变量之间的依赖关系,以便以为条件,并且在长文本中模拟平滑过渡。
与此同时,所述字解码器基于所述表现形式生成所述文本块,具体的, 所述字解码器解码基于当前文本块的表达形式,当前局部隐变量以及当前子 集控制文本块中字或词的选择:
可选地,所述句子解码器和字解码器均采用循环神经网络,具体的, 在本实施方式的一个实施例中,其都采用门控循环单元。
另外,基于本实施方式的以上实施例,可以构建基于规划的分层变分 模型Planning-based Hierarchical Variational Model(PHVM)来处理数据到 文本的任务,所述PHVM的体系结构如图5所示,该模型使用全局隐变量 zp控制规划。计划解码器通过生成组序列g=g1g2...gT来进行规划,其 中gt是输入项的子集并指定要生成的句子st的内容。句子解码器用局部隐 变量控制st的实现;之间的依赖关系被明确建模,以更好地捕获句子 间的一致性。
本实施方式提供的文本生成方法,模拟人类的写作过程,合理规划文 章结构和各个部分的内容,能够使得长文本中的句子与前后文之前取得较 高的一致性,并且更加全面的覆盖输入数据集合。
另外,本发明的方法还通过在不同层级分别引入全局隐变量和局部隐 变量,使得生成的文本能够具有多样化的表达。
最后,以上计算过程中存在三项损失函数,依次为log(P(y|x))的变分 下界(ELBO)(可以通过最大化下界来优化P(y|x)):
第二项是计划解码器的学习的停止信号:
第三项是词袋的损失(bag-of-word loss)之和,由于此模型基于条件 变分自编码器Conditional Variational Auto-Encoder (CVAE),CVAE存在 KL崩塌的问题(KL散度为0),即模型忽略隐变量z,此处的bag-of-word loss使模型学习使用隐变量来避免出现上述问题。
为了验证本申请所提供的的文本生成方法的优异性,发明人进行了一 些实验,实验结果如图6所示,实验结果表明,在相同的输入条件下,大 多数方法/模型无法涵盖提供的所有数据并存在重复描述某些输入项的情 况。例如,Link-S2S输出的文本忽略属性值:七分袖,并描述圆领两次。 Checklist和CVAE也有类似的问题。由于Link-S2S和Checklist仅在条件 输出分布处注入变化,因此它们建模表达多样性的能力具有一定局限。尽 管Pointer-S2S覆盖了所有属性值并且没有冗余,但生成的第一句存在逻 辑上的不一致(圆领不应与细长的手臂有任何逻辑关系)。相比之下,我 们的模型生成的两个文本都涵盖了所有输入数据,并且按照从上到下的位 置顺序描述了衣服而没有冗余。
并且由于多样化的合理规划,它们采用了不同的语句结构:
第一个文本采用总分结构,而第二个文本采用并行结构。因此,本申 请的模型能够生成逻辑顺畅的长文本。本申请的模型生成的两个文本的差 异也表明我们的模型能够产生多样化的文本。
示例性装置
在介绍了本发明示例性实施方式的方法之后,接下来,参考图7对本 发明示例性实施方式的文本生成装置进行说明,所述装置包括:
任务规划模块710,被配置为将文本生成任务规划为多个文本块生成 子任务;
任务执行模块720,被配置为重复执行以下文本块生成子任务直到所 有子任务执行完毕:
基于输入数据集合的子集组合序列中的当前子集以及在先子任务生 成文本块。
本申请所提供的装置中提供的模块能够在使用时基于与上述的示例 性方法(相同的技术手段)根据输入数据(集合)生成目标文本,其在具 体运行时可以取得上述的示例性方法一样的技术效果,即与模拟人类的写 作过程,合理规划文章结构和各个部分的内容,使得长文本中的句子与前 后文之前取得较高的一致性,并且更加全面的覆盖输入数据集合以及在不 同层级分别引入全局隐变量和局部隐变量,使得生成的文本能够具有多样化的表达。
本实施方式中提供的装置的具体实施例能够覆盖上述的示例性方法 中提供的各个实施例,在此不做赘述。
示例性介质
在介绍了本发明示例性实施方式的方法、装置之后,接下来,参考图 8对本发明示例性实施方式的计算机可读存储介质进行说明,请参考图8, 其示出的计算机可读存储介质为光盘80,其上存储有计算机程序(即程序 产品),所述计算机程序在被处理器运行时,会实现上述方法实施方式中 所记载的各步骤,例如,将文本生成任务规划为多个文本块生成子任务; 重复执行以下文本块生成子任务直到所有子任务执行完毕:基于输入数据 集合的子集组合序列中的当前子集以及在先子任务生成文本块。各步骤的 具体实现方式在此不再重复说明。
需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限 于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦 除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质, 在此不再一一赘述。
示例性计算设备
在介绍了本发明示例性实施方式的方法、装置和介质之后,接下来, 参考图9对本发明示例性实施方式的计算设备进行说明,图9示出了适于 用来实现本发明实施方式的示例性计算设备90的框图,该计算设备90可 以是计算机系统或服务器。图9显示的计算设备90仅仅是一个示例,不 应对本发明实施例的功能和使用范围带来任何限制。
如图9所示,计算设备90的组件可以包括但不限于:一个或者多个 处理器或者处理单元901,系统存储器902,连接不同系统组件(包括系 统存储器902和处理单元901)的总线903。
计算设备90典型地包括多种计算机系统可读介质。这些介质可以是 任何能够被计算设备90访问的可用介质,包括易失性和非易失性介质, 可移动的和不可移动的介质。
系统存储器902可以包括易失性存储器形式的计算机系统可读介质, 例如随机存取存储器(RAM)9021和/或高速缓存存储器9022。计算设备 90可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统 存储介质。仅作为举例,ROM9023可以用于读写不可移动的、非易失性磁 介质(图9中未显示,通常称为“硬盘驱动器”)。尽管未在图9中示出, 可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器, 以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质) 读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数 据介质接口与总线903相连。系统存储器902中可以包括至少一个程序产 品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配 置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块9024的程序/实用工具9025,可以存 储在例如系统存储器902中,且这样的程序模块9024包括但不限于:操 作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例 中的每一个或某种组合中可能包括网络环境的实现。程序模块9024通常 执行本发明所描述的实施例中的功能和/或方法。
计算设备90也可以与一个或多个外部设备904(如键盘、指向设备、 显示器等)通信。这种通信可以通过输入/输出(I/O)接口905进行。并 且,计算设备90还可以通过网络适配器906与一个或者多个网络(例如 局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如 图9所示,网络适配器906通过总线903与计算设备90的其它模块(如 处理单元901等)通信。应当明白,尽管图9中未示出,可以结合计算设 备90使用其它硬件和/或软件模块。
处理单元901通过运行存储在系统存储器902中的程序,从而执行各 种功能应用以及数据处理,例如,将文本生成任务规划为多个文本块生成 子任务;重复执行以下文本块生成子任务直到所有子任务执行完毕:基于 输入数据集合的子集组合序列中的当前子集以及在先子任务生成文本块。 各步骤的具体实现方式在此不再重复说明。应当注意,尽管在上文详细描 述中提及了文本生成装置的若干单元/模块或子单元/子模块,但是这种划 分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文 描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。 反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单 元/模块来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这 并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全 部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤, 将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应 该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意 味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方 便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等 同布置。
通过上述的描述,本发明的实施例提供了以下的技术方案,但不限于 此:
1.一种文本生成方法,包括:
将文本生成任务规划为多个文本块生成子任务;
重复执行以下文本块生成子任务直到所有子任务执行完毕:
基于输入数据集合的子集组合序列中的当前子集以及在先子任务生 成文本块。
2.如技术方案1所述的方法,其中,所述输入数据集合中的数据在输 入之前被按照预设规则排序,然后利用双向循环神经网络对排序后的输入 数据集合进行编码。
3.如技术方案2所述的方法,其中在每一输入数据的格式为键值对 (ai;vi)时,每一输入数据均被表示为di=[e(ai);e(vi)],其中e(ai)和e(vi) 分别为ai和vi的向量表示。
4.如技术方案3所述的方法,其中,所述双向循环神经网络为双向门 控循环单元,被配置为将前向门控循环单元和后向门控循环单元的末隐状 态拼接,作为输入数据集合的编码表示;
将每个时刻的前向门控循环单元和后向门控循环单元的隐状态拼接, 作为相应时刻的输入数据的编码表示。
5.如技术方案1-4任一所述的方法,其中,将文本生成任务规划为多 个文本块生成子任务,包括:
将文本生成任务规划为至少一个能够生成合理的语句结构的文本的 包括多个文本块生成子任务的子任务组。
6.如技术方案5所述的方法,其中,将文本生成任务规划为至少一个 能够生成合理的语句结构的文本的包括多个文本块生成子任务的子任务 组,包括:
基于所述输入数据集合生成至少一个包括所有输入数据的子集组合 序列;
基于每一子集组合序列对应规划每一包括多个文本块生成子任务的 子任务组。
7.如技术方案6所述的方法,其中,一个任务组中的所有子任务被执 行完毕时,生成的文本为:
y=S1S2...ST;
其中,y表示文本,ST表示第T个文本块。
8.如技术方案7所述的方法,其中,基于所述输入数据集合生成的一 个包括所有输入数据的子集组合序列为:
g=g1g2...gT;
其中,g表示子集组合序列,gT表示第T个子集。
9.如技术方案6所述的方法,其中,将文本生成任务规划为至少一个 能够生成合理的语句结构的文本的包括多个文本块生成子任务的子任务 组,包括:
基于全局隐变量将所述文本生成任务规划为至少一个包括多个文本 块生成子任务的任务组,所述全局隐变量基于所述输入数据集合的编码表 示来得到。
10.如技术方案9所述的方法,其中,基于全局隐变量将所述文本生成 任务规划为至少一个包括多个文本块生成子任务的任务组,包括:
基于全局隐变量以及所述输入数据集合生成至少一个包括所有输入 数据的子集组合序列;
基于每一子集组合序列对应规划每一包括多个文本块生成子任务的 任务组。
11.如技术方案10所述的方法,其中,所述全局隐变量基于其概率分 布采样获得,所述概率分布基于所述输入数据集合的编码表示来构建。
12.如技术方案11所述的方法,其中,所述全局隐变量在推断和训练 阶段基于不同的概率分布获得。
13.如技术方案12所述的方法,其中,所述全局隐变量在推断阶段从 其先验分布采样获得,在训练阶段从其近似后验分布采样获取。
14.如技术方案10-13任一所述的方法,其中,基于全局隐变量以及所述 输入数据集合生成一个包括所有输入数据的子集组合序列,包括:
g=argmaxgP(g|x,zp);
其中,g表示子集组合序列,x表示输入数据集合,zp表示全局隐变量。
15.如技术方案14所述的方法,其中,所述子集组合序列中的子集由以下 确定:
其中,gt表示所述子集组合序列中的第t个子集,g<t表示gt之前的所 有子集。
16.如技术方案15所述的方法,其中,子集组合序列中每一子集中所包括 的元素由以下确定:
确定当输入数据集合中每一数据属于当前子集的概率;
选取概率大于第一预设阈值的数据作为当前子集的元素。
17.如技术方案16所述的方法,其中,采用计划解码器确定所述子集组合 序列中的每一子集。
18.如技术方案17所述的方法,其中,所述计划解码器采用循环神经网 络。
19.如技术方案18所述的方法,其中,基于所述计划解码器确定当前子集 时产生的隐状态向量和输入数据的编码表示确定所述输入数据属于当前子集 的概率。
20.如技术方案19所述的方法,其中,基于以下确定所述输入数据属于当 前子集的概率:
21.如技术方案17-20任一所述的方法,其中,若任一输入数据属于当前 子集的概率均不大于所述第一预设阈值,则选取概率最大的一个或多个当前 输入数据作为当前子集的元素。
22.如技术方案21所述的方法,其中,逐一确定各个子集中包括的元素, 直到下一个时间步的停止概率超过第二预设阈值。
23.如技术方案22所述的方法,其中,所述当前时间步的停止概率基于当 前隐状态向量计算。
24.如技术方案23所述的方法,其中,时间步t的停止概率为
25.如技术方案14-24任一所述的方法,其中,基于输入数据集合的子集 组合序列中的当前子集以及在先子任备生成文本块,包括:
其中,st表示第t个文本块,s<t表示st之前的所有文本块, c={x,zp}。
26.如技术方案25所述的方法,其中,基于输入数据集合的子集序列中 的当前子集以及在先子任务生成文本块,包括:
基于局部隐变量以及输入数据集合的子集序列中的当前子集和在先 子任务生成文本块,所述局部隐变量基于在先文本块、在先局部隐变量以 及当前子集得到。
27.如技术方案26所述的方法,其中,所述局部隐变量基于其概率分 布采样获得,所述概率分布基于在先文本块、在先局部隐变量以及当前子 集构建。
28.如技术方案26或27所述的方法,其中,所述局部隐变量在推断和 训练阶段基于不同的概率分布获得。
29.如技术方案28所述的方法,其中,所述局部隐变量在推断阶段从 其先验分布采样获得,在训练阶段从其近似后验分布采样获取。
30.如技术方案26-29所述的方法,其中,所述局部隐变量控制所述文 本块的实现。
31.如技术方案30所述的方法,其中,采用句子解码器以及字解码器 实现所述文本块。
32.如技术方案31所述的方法,其中,所述句子解码器控制所述文本 块的表达形式。
33.如技术方案32所述的方法,其中,所述字解码器基于所述表现形 式生成所述文本块。
34.如技术方案33所述的方法,其中,所述句子解码器和字解码器均 为循环神经网络。
35.如技术方案34所述的方法,其中,所述文本块的表达形式基于以 下实现:
36.如技术方案35所述的方法,其中,所述字解码器解码基于当前文 本块的表达形式,当前局部隐变量以及当前子集控制文本块中字或词的选择。
37.如技术方案36所述的方法,其中,所述字或词基于以下采样:
38.一种文本生成装置,包括:
任务规划模块,被配置为将文本生成任务规划为多个文本块生成子任 务;
任务执行模块,被配置为重复执行以下文本块生成子任务直到所有子 任务执行完毕:
基于输入数据集合的子集组合序列中的当前子集以及在先子任务生 成文本块。
39.如技术方案38所述的装置,其中,所述输入数据集合中的数据在 输入之前被按照预设规则排序,然后利用双向循环神经网络对排序后的输 入数据集合进行编码。
40.如技术方案39所述的装置,其中在每一所述输入数据的格式为键 值对(ai;vi)时,每一输入数据均被表示为di=[e(ai);e(vi)],其中e(ai)和 e(vi)分别为ai和vi的向量表示。
41.如技术方案40所述的装置,其中,所述双向循环神经网络为双向 门控循环单元,被配置为将前向门控循环单元和后向门控循环单元的末隐 状态拼接,作为输入数据集合的编码表示;
将每个时刻的前向门控循环单元和后向门控循环单元的隐状态拼接, 作为相应时刻的输入数据的编码表示。
42.如技术方案38-41任一所述的装置,其中,所述任务规划模块还被 配置为将文本生成任务规划为至少一个能够生成合理的语句结构的文本 的包括多个文本块生成子任务的子任务组。
43.如技术方案42所述的装置,其中,所述任务规划模块包括:
组序列规划单元,被配置为基于所述输入数据集合生成至少一个包括 所有输入数据的子集组合序列;
任务组规划单元,被配置为基于每一子集组合序列对应规划每一包括 多个文本块生成子任务的子任务组。
44.如技术方案43所述的装置,其中,一个任务组中的所有子任务被 执行完毕时,生成的文本为:
y=S1S2...ST;
其中,y表示文本,ST表示第T个文本块。
45.如技术方案44所述的装置,其中,所述组序列规划单元生成的子 集组合序列为:
g=g1g2...gT;
其中,g表示子集组合序列,gT表示第T个子集。
46.如技术方案43所述的装置,其中,所述任务规划模块还被配置为:
基于全局隐变量将所述文本生成任务规划为至少一个包括多个文本 块生成子任务的任务组,所述全局隐变量基于所述输入数据集合的编码表 示来得到。
47.如技术方案46所述的装置,其中,所述组序列规划单元还被配置 为基于全局隐变量以及所述输入数据集合生成至少一个包括所有输入数 据的子集组合序列。
48.如技术方案47所述的装置,其中,所述全局隐变量基于其概率分 布采样获得,所述概率分布基于所述输入数据集合的编码表示来构建。
49.如技术方案48所述的装置,其中,所述全局隐变量在推断和训练 阶段基于不同的概率分布获得。
50.如技术方案49所述的装置,其中,所述全局隐变量在推断阶段从 其先验分布采样获得,在训练阶段从其近似后验分布采样获取。
51.如技术方案47-50任一所述的装置,其中,所述组序列规划单元基于 以下划分子集组合序列:
g=argmaxgP(g|x,zp);
其中,x表示输入数据集合,zP表示全局隐变量。
52.如技术方案50所述的装置,其中,所述任务规划模块还包括子集规 划单元,所述子集规划单元被配置为基于以下确定子集组合序列中的子集:
其中,gt表示所述子集组合序列中的第t个子集,g<t表示gt之前的所 有子集。
53.如技术方案52所述的装置,其中,所述任务规划模块还包括元素规 划单元,所述元素规划单元,被配置为基于以下确定所述子集组合序列中 每一子集中所包括的元素:
概率确定子单元,被配置为确定输入数据集合中每一输入数据属于当前 子集的概率;
元素选取子单元,被配置为选取概率大于第一预设阈值的输入数据作为 当前子集的元素。
54.如技术方案53所述的装置,其中,所述子集规划单元采用计划解码器 确定所述子集组合序列中的每一子集。
55.如技术方案54所述的装置,其中,所述计划解码器采用循环神经网 络。
56.如技术方案55所述的装置,其中,所述概率确定子单元还被配置为基 于所述计划解码器确定当前子集时产生的隐状态向量和输入数据的编码表示 确定所述输入数据属于当前子集的概率。
57.如技术方案56所述的装置,其中,所述概率确定子单元还被配置为基 于以下确定所述输入数据属于当前子集的概率:
58.如技术方案54-57任一所述的装置,其中,所述元素选取子单元还被 配置为若任一输入数据属于当前子集的概率均不大于所述第一预设阈值,则 选取概率最大的一个或多个输入数据作为当前子集的元素。
59.如技术方案58所述的装置,其中,逐一确定各个子集中包括的元素, 直到下一个时间步的停止概率超过第二预设阈值。
60.如技术方案59所述的装置,其中,所述元素选取子单元还被配置为基 于当前隐状态向量计算所述当前时间步的停止概率。
61.如技术方案60所述的装置,其中,时间步t的停止概率为
62.如技术方案51-61任一所述的装置,其中,所述任务执行模块执行一 个子任务时被配置为基于以下生成文本块:
其中,st表示第t个文本块,s<t表示st之前的所有文本块,c={x,zp}。
63.如技术方案62所述的装置,其中,所述任务执行模块执行一个子任务 时还被配置为:
基于局部隐变量以及输入数据集合的子集序列中的当前子集和在先 子任务生成文本块,所述局部隐变量基于在先文本块、在先局部隐变量以 及当前子集得到。
64.如技术方案63所述的装置,其中,所述局部隐变量基于其概率分 布采样获得,所述概率分布基于在先文本块、在先局部隐变量以及当前子 集构建。
65.如技术方案64所述的装置,其中,所述局部隐变量在推断和训练 阶段基于不同的概率分布获得。
66.如技术方案65所述的装置,其中,所述局部隐变量在推断阶段从 其先验分布采样获得,在训练阶段从其近似后验分布采样获取。
67.如技术方案63-66所述的装置,其中,所述局部隐变量控制所述文 本块的实现。
68.如技术方案67所述的装置,其中,采用句子解码器以及字解码器 实现所述文本块。
69.如技术方案68所述的装置,其中,所述句子解码器控制所述文本 块的表达形式。
70.如技术方案69所述的装置,其中,所述字解码器基于所述表现形 式生成所述文本块。
71.如技术方案70所述的装置,其中,所述句子解码器和字解码器均 为循环神经网络。
72.如技术方案71所述的装置,其中,所述文本块的表达形式基于以 下实现:
73.如技术方案72所述的装置,其中,所述字解码器解码基于当前文 本块的表达形式,当前局部隐变量以及当前子集控制文本块中字或词的选择。
74.如技术方案73所述的装置,其中,所述字或词基于以下采样:
75.一种计算机可读存储介质,存储有程序代码,所述程序代码当被处 理器执行时,实现如技术方案1-37之一所述的方法。
76.一种计算设备,包括处理器和存储有程序代码的存储介质,所述程 序代码当被处理器执行时,实现如技术方案1-37之一所述的方法。
Claims (66)
1.一种文本生成方法,包括:
将文本生成任务规划为多个文本块生成子任务;
重复执行以下文本块生成子任务直到所有子任务执行完毕:
基于输入数据集合的子集组合序列中的当前子集以及在先子任务生成文本块;
其中将文本生成任务规划为多个文本块生成子任务进一步配置为将文本生成任务规划为至少一个能够生成合理的语句结构的文本的包括多个文本块生成子任务的子任务组:
基于全局隐变量将所述文本生成任务规划为至少一个包括多个文本块生成子任务的任务组,所述全局隐变量基于所述输入数据集合的编码表示来得到;
基于全局隐变量以及所述输入数据集合生成一个包括所有输入数据的子集组合序列:
g=argmaxgP(g|x,zp);
其中,g表示子集组合序列,x表示输入数据集合,zp表示全局隐变量,argmaxg表示概率最大的子集组合序列,P表示概率。
2.如权利要求1所述的方法,其中,所述输入数据集合中的数据在输入之前被按照预设规则排序,然后利用双向循环神经网络对排序后的输入数据集合进行编码。
3.如权利要求2所述的方法,其中在每一输入数据的格式为键值对(ai;vi)时,每一输入数据均被表示为di=[e(ai);e(vi)],其中e(ai)和e(vi)分别为ai和vi的向量表示。
4.如权利要求3所述的方法,其中,所述双向循环神经网络为双向门控循环单元,被配置为将前向门控循环单元和后向门控循环单元的末隐状态拼接,作为输入数据集合的编码表示;
将每个时刻的前向门控循环单元和后向门控循环单元的隐状态拼接,作为相应时刻的输入数据的编码表示。
5.如权利要求1所述的方法,其中,一个任务组中的所有子任务被执行完毕时,生成的文本为:
y=s1s2...sT;
其中,y表示文本,sT表示时间步t=T处的文本块。
6.如权利要求5所述的方法,其中,基于所述输入数据集合生成的一个包括所有输入数据的子集组合序列为:
g=g1g2…gT;
其中,g表示子集组合序列,gT表示时间步t=T处的子集。
7.如权利要求1所述的方法,其中,所述全局隐变量基于其概率分布采样获得,所述概率分布基于所述输入数据集合的编码表示来构建。
8.如权利要求7所述的方法,其中,所述全局隐变量在推断和训练阶段基于不同的概率分布获得。
9.如权利要求8所述的方法,其中,所述全局隐变量在推断阶段从其先验分布采样获得,在训练阶段从其近似后验分布采样获取。
11.如权利要求10所述的方法,其中,子集组合序列中每一子集中所包括的元素由以下确定:
确定输入数据集合中每一数据属于当前子集的概率;
选取概率大于第一预设阈值的数据作为当前子集的元素。
12.如权利要求11所述的方法,其中,采用计划解码器确定所述子集组合序列中的每一子集。
13.如权利要求12所述的方法,其中,所述计划解码器采用循环神经网络。
14.如权利要求13所述的方法,其中,基于所述计划解码器确定当前子集时产生的隐状态向量和输入数据的编码表示确定所述输入数据属于当前子集的概率。
16.如权利要求12-15任一所述的方法,其中,若任一输入数据属于当前子集的概率均不大于所述第一预设阈值,则选取概率最大的一个或多个当前输入数据作为当前子集的元素。
17.如权利要求16所述的方法,其中,逐一确定各个子集中包括的元素,直到下一个时间步的停止概率超过第二预设阈值。
18.如权利要求17所述的方法,其中,所述当前时间步的停止概率基于当前隐状态向量计算。
21.如权利要求20所述的方法,其中,基于输入数据集合的子集序列中的当前子集以及在先子任务生成文本块,包括:
基于局部隐变量以及输入数据集合的子集序列中的当前子集和在先子任务生成文本块,所述局部隐变量基于在先文本块、在先局部隐变量以及当前子集得到。
22.如权利要求21所述的方法,其中,所述局部隐变量基于其概率分布采样获得,所述概率分布基于在先文本块、在先局部隐变量以及当前子集构建。
23.如权利要求22所述的方法,其中,所述局部隐变量在推断和训练阶段基于不同的概率分布获得。
24.如权利要求23所述的方法,其中,所述局部隐变量在推断阶段从其先验分布采样获得,在训练阶段从其近似后验分布采样获取。
25.如权利要求21-24任一所述的方法,其中,所述局部隐变量控制所述文本块的实现。
26.如权利要求25所述的方法,其中,采用句子解码器以及字解码器实现所述文本块。
27.如权利要求26所述的方法,其中,所述句子解码器控制所述文本块的表达形式。
28.如权利要求27所述的方法,其中,所述字解码器基于所述表达形式生成所述文本块。
29.如权利要求28所述的方法,其中,所述句子解码器和字解码器均为循环神经网络。
31.如权利要求30所述的方法,其中,所述字解码器解码基于当前文本块的表达形式,当前局部隐变量以及当前子集控制文本块中字或词的选择。
33.一种文本生成装置,包括:
任务规划模块,被配置为将文本生成任务规划为多个文本块生成子任务;
任务执行模块,被配置为重复执行以下文本块生成子任务直到所有子任务执行完毕:
基于输入数据集合的子集组合序列中的当前子集以及在先子任务生成文本块;
其中,所述任务规划模块还被配置为将文本生成任务规划为至少一个能够生成合理的语句结构的文本的包括多个文本块生成子任务的子任务组:
基于全局隐变量将所述文本生成任务规划为至少一个包括多个文本块生成子任务的任务组,所述全局隐变量基于所述输入数据集合的编码表示来得到;
所述任务规划模块包括:组序列规划单元,被配置为基于所述输入数据集合生成至少一个包括所有输入数据的子集组合序列,所述组序列规划单元基于以下划分子集组合序列:
g=argmaxgP(g|x,zp);
其中,g表示子集组合序列,x表示输入数据集合,zp表示全局隐变量,argmaxg表示概率最大的子集组合序列,P表示概率。
34.如权利要求33所述的装置,其中,所述输入数据集合中的数据在输入之前被按照预设规则排序,然后利用双向循环神经网络对排序后的输入数据集合进行编码。
35.如权利要求34所述的装置,其中在每一所述输入数据的格式为键值对(ai;vi)时,每一输入数据均被表示为di=[e(ai);e(vi)],其中e(ai)和e(vi)分别为ai和vi的向量表示。
36.如权利要求35所述的装置,其中,所述双向循环神经网络为双向门控循环单元,被配置为将前向门控循环单元和后向门控循环单元的末隐状态拼接,作为输入数据集合的编码表示;
将每个时刻的前向门控循环单元和后向门控循环单元的隐状态拼接,作为相应时刻的输入数据的编码表示。
37.如权利要求33所述的装置,其中,一个任务组中的所有子任务被执行完毕时,生成的文本为:
y=s1s2...sT;
其中,y表示文本,sT表示时间步t=T处的文本块。
38.如权利要求37所述的装置,其中,所述组序列规划单元生成的子集组合序列为:
g=g1g2…gT;
其中,g表示子集组合序列,gT表示时间步t=T处的子集。
39.如权利要求33所述的装置,其中,所述全局隐变量基于其概率分布采样获得,所述概率分布基于所述输入数据集合的编码表示来构建。
40.如权利要求39所述的装置,其中,所述全局隐变量在推断和训练阶段基于不同的概率分布获得。
41.如权利要求40所述的装置,其中,所述全局隐变量在推断阶段从其先验分布采样获得,在训练阶段从其近似后验分布采样获取。
43.如权利要求42所述的装置,其中,所述任务规划模块还包括元素规划单元,所述元素规划单元,被配置为基于以下确定所述子集组合序列中每一子集中所包括的元素:
概率确定子单元,被配置为确定输入数据集合中每一输入数据属于当前子集的概率;
元素选取子单元,被配置为选取概率大于第一预设阈值的输入数据作为当前子集的元素。
44.如权利要求43所述的装置,其中,所述子集规划单元采用计划解码器确定所述子集组合序列中的每一子集。
45.如权利要求44所述的装置,其中,所述计划解码器采用循环神经网络。
46.如权利要求45所述的装置,其中,所述概率确定子单元还被配置为基于所述计划解码器确定当前子集时产生的隐状态向量和输入数据的编码表示确定所述输入数据属于当前子集的概率。
48.如权利要求44-47任一所述的装置,其中,所述元素选取子单元还被配置为若任一输入数据属于当前子集的概率均不大于所述第一预设阈值,则选取概率最大的一个或多个输入数据作为当前子集的元素。
49.如权利要求48所述的装置,其中,逐一确定各个子集中包括的元素,直到下一个时间步的停止概率超过第二预设阈值。
50.如权利要求49所述的装置,其中,所述元素选取子单元还被配置为基于当前隐状态向量计算所述当前时间步的停止概率。
53.如权利要求52所述的装置,其中,所述任务执行模块执行一个子任务时还被配置为:
基于局部隐变量以及输入数据集合的子集序列中的当前子集和在先子任务生成文本块,所述局部隐变量基于在先文本块、在先局部隐变量以及当前子集得到。
54.如权利要求53所述的装置,其中,所述局部隐变量基于其概率分布采样获得,所述概率分布基于在先文本块、在先局部隐变量以及当前子集构建。
55.如权利要求54所述的装置,其中,所述局部隐变量在推断和训练阶段基于不同的概率分布获得。
56.如权利要求55所述的装置,其中,所述局部隐变量在推断阶段从其先验分布采样获得,在训练阶段从其近似后验分布采样获取。
57.如权利要求53-56任一所述的装置,其中,所述局部隐变量控制所述文本块的实现。
58.如权利要求57所述的装置,其中,采用句子解码器以及字解码器实现所述文本块。
59.如权利要求58所述的装置,其中,所述句子解码器控制所述文本块的表达形式。
60.如权利要求59所述的装置,其中,所述字解码器基于所述表达形式生成所述文本块。
61.如权利要求60所述的装置,其中,所述句子解码器和字解码器均为循环神经网络。
63.如权利要求62所述的装置,其中,所述字解码器解码基于当前文本块的表达形式,当前局部隐变量以及当前子集控制文本块中字或词的选择。
65.一种计算机可读存储介质,存储有程序代码,所述程序代码当被处理器执行时,实现如权利要求1-32任一所述的方法。
66.一种计算设备,包括处理器和存储有程序代码的存储介质,所述程序代码当被处理器执行时,实现如权利要求1-32任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910362399.0A CN110110331B (zh) | 2019-04-30 | 2019-04-30 | 文本生成方法、装置、介质和计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910362399.0A CN110110331B (zh) | 2019-04-30 | 2019-04-30 | 文本生成方法、装置、介质和计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110110331A CN110110331A (zh) | 2019-08-09 |
CN110110331B true CN110110331B (zh) | 2021-02-26 |
Family
ID=67487928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910362399.0A Active CN110110331B (zh) | 2019-04-30 | 2019-04-30 | 文本生成方法、装置、介质和计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110110331B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112541348A (zh) * | 2020-12-10 | 2021-03-23 | 平安科技(深圳)有限公司 | 长文本生成方法、装置、设备及存储介质 |
CN112949302A (zh) * | 2021-02-25 | 2021-06-11 | 平安国际智慧城市科技股份有限公司 | 长文本生成方法、装置、终端及存储介质 |
CN113065336B (zh) * | 2021-05-06 | 2022-11-25 | 清华大学深圳国际研究生院 | 一种基于深度学习和内容规划的文本自动生成方法及装置 |
CN113345575B (zh) * | 2021-05-28 | 2022-07-15 | 浙江连信科技有限公司 | 信息生成方法及装置 |
CN114021527A (zh) * | 2021-11-04 | 2022-02-08 | 北京香侬慧语科技有限责任公司 | 长文本生成方法、系统、介质及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998008168A1 (fr) * | 1996-08-16 | 1998-02-26 | Pfu Limited | Dispositif pour generer un texte original et son support de memoire programme |
CN106776540A (zh) * | 2016-11-23 | 2017-05-31 | 清华大学 | 一种自由化文本生成方法 |
CN107491417A (zh) * | 2017-07-06 | 2017-12-19 | 复旦大学 | 一种基于特定划分的主题模型下的文档生成方法 |
CN108108342A (zh) * | 2017-11-07 | 2018-06-01 | 汉王科技股份有限公司 | 结构化文本的生成方法、检索方法及装置 |
CN109635282A (zh) * | 2018-11-22 | 2019-04-16 | 清华大学 | 用于多方对话的篇章解析方法、装置、介质及计算设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3614648B2 (ja) * | 1998-03-13 | 2005-01-26 | 富士通株式会社 | 文書理解支援装置、要約文生成方法、並びに文書理解支援プログラムを記録したコンピュータ読み取り可能な記録媒体 |
US8781989B2 (en) * | 2008-01-14 | 2014-07-15 | Aptima, Inc. | Method and system to predict a data value |
CN107193792B (zh) * | 2017-05-18 | 2020-10-02 | 北京百度网讯科技有限公司 | 基于人工智能的生成文章的方法和装置 |
CN107832310A (zh) * | 2017-11-27 | 2018-03-23 | 首都师范大学 | 基于seq2seq模型的结构化论点生成方法及系统 |
CN108197294B (zh) * | 2018-01-22 | 2021-10-22 | 桂林电子科技大学 | 一种基于深度学习的文本自动生成方法 |
CN109582945B (zh) * | 2018-12-17 | 2022-06-03 | 北京百度网讯科技有限公司 | 文章生成方法、装置及存储介质 |
CN109670158B (zh) * | 2018-12-27 | 2023-09-29 | 北京及客科技有限公司 | 一种用于根据资讯数据生成文本内容的方法与设备 |
-
2019
- 2019-04-30 CN CN201910362399.0A patent/CN110110331B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998008168A1 (fr) * | 1996-08-16 | 1998-02-26 | Pfu Limited | Dispositif pour generer un texte original et son support de memoire programme |
CN106776540A (zh) * | 2016-11-23 | 2017-05-31 | 清华大学 | 一种自由化文本生成方法 |
CN107491417A (zh) * | 2017-07-06 | 2017-12-19 | 复旦大学 | 一种基于特定划分的主题模型下的文档生成方法 |
CN108108342A (zh) * | 2017-11-07 | 2018-06-01 | 汉王科技股份有限公司 | 结构化文本的生成方法、检索方法及装置 |
CN109635282A (zh) * | 2018-11-22 | 2019-04-16 | 清华大学 | 用于多方对话的篇章解析方法、装置、介质及计算设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110110331A (zh) | 2019-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110110331B (zh) | 文本生成方法、装置、介质和计算设备 | |
Ghosh et al. | Synthesis of compositional animations from textual descriptions | |
Raschka et al. | Machine Learning with PyTorch and Scikit-Learn: Develop machine learning and deep learning models with Python | |
CN110196894B (zh) | 语言模型的训练方法和预测方法 | |
Firoozi et al. | Foundation models in robotics: Applications, challenges, and the future | |
CN110427605B (zh) | 面向短文本理解的省略恢复方法 | |
Gupta | Mode Estimation of Model-based Programs: Monitoring Systems with Complex Behavior. | |
CN110612537A (zh) | 用于批归一化的循环高速路网络的系统和方法 | |
CN110210032A (zh) | 文本处理方法及装置 | |
JP7342971B2 (ja) | 対話処理装置、学習装置、対話処理方法、学習方法及びプログラム | |
WO2019235103A1 (ja) | 質問生成装置、質問生成方法及びプログラム | |
CN110287333A (zh) | 一种基于知识库进行释义生成的方法及系统 | |
CN110807335A (zh) | 基于机器学习的翻译方法、装置、设备及存储介质 | |
CN112163596A (zh) | 复杂场景文本识别方法、系统、计算机设备及存储介质 | |
Dai et al. | A survey on dialog management: Recent advances and challenges | |
CN117541668A (zh) | 虚拟角色的生成方法、装置、设备及存储介质 | |
Fei et al. | Uncertainty-aware image captioning | |
Qian et al. | Breaking the limits of text-conditioned 3d motion synthesis with elaborative descriptions | |
Chen et al. | Neural task planning with and–or graph representations | |
Park et al. | Natural language generation using dependency tree decoding for spoken dialog systems | |
CN112364659B (zh) | 一种无监督的语义表示自动识别方法及装置 | |
Jing et al. | Amd: Anatomical motion diffusion with interpretable motion decomposition and fusion | |
Poulakos et al. | Towards an accessible interface for story world building | |
Shoulson et al. | Paste: A platform for adaptive storytelling with events | |
CN116485962A (zh) | 一种基于对比学习的动画生成方法及系统 |
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 |