CN109582952B - 诗歌生成方法、装置、计算机设备和介质 - Google Patents

诗歌生成方法、装置、计算机设备和介质 Download PDF

Info

Publication number
CN109582952B
CN109582952B CN201811284565.1A CN201811284565A CN109582952B CN 109582952 B CN109582952 B CN 109582952B CN 201811284565 A CN201811284565 A CN 201811284565A CN 109582952 B CN109582952 B CN 109582952B
Authority
CN
China
Prior art keywords
poetry
vector
description text
obtaining
determining
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
Application number
CN201811284565.1A
Other languages
English (en)
Other versions
CN109582952A (zh
Inventor
李俊涛
宋彦
张海松
史树明
严睿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University
Tencent Technology Shenzhen Co Ltd
Original Assignee
Peking University
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Peking University, Tencent Technology Shenzhen Co Ltd filed Critical Peking University
Priority to CN201811284565.1A priority Critical patent/CN109582952B/zh
Publication of CN109582952A publication Critical patent/CN109582952A/zh
Application granted granted Critical
Publication of CN109582952B publication Critical patent/CN109582952B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请属于计算机技术领域,公开了诗歌生成方法、装置、计算机设备和介质,本申请公开的诗歌生成方法包括,通过诗歌生成模型对诗歌描述文本进行解析获得文本特征向量,并至少根据诗歌描述文本的文本特征向量获得第一诗句;根据诗歌描述文本的文本特征向量以及第一诗句的诗句特征向量确定上下文向量;根据上下文向量获得先验分布并获得诗句隐变量向量;根据诗句隐变量向量和上下文向量生成第二诗句,从而获得诗歌。其中,诗歌生成模型是采用CVAE‑D以及诗歌描述文本样本训练获得的。CVAE使得生成的诗歌的各诗句具有多样性,辨别器使得生成的诗歌的各诗句的主题能够保持一致,这样,保证了诗歌的各诗句的多样性和主题一致性。

Description

诗歌生成方法、装置、计算机设备和介质
技术领域
本申请涉及计算机技术领域,尤其涉及诗歌生成方法、装置、计算机设备和介质。
背景技术
诗歌是中国传统文化的重要遗产之一,以其优雅简洁的语言,富有美感的韵律,代表了人类使用语言的极高水平。诗歌主要以各种形式的格律诗为主,如唐诗宋词,所包含的内容有五言诗、七言诗、绝句、律诗、词以及曲等。
诗歌创作不仅需要符合一定的规则,还要有流畅的语言和清晰的主旨。随着计算机技术的发展,在自然语言处理领域,传统诗歌生成被看作一个机器解析问题。研究机器如何更好的创作诗歌可以为一系列带有约束的文本生成任务带来极大帮助。
发明内容
本申请实施例提供一种诗歌的生成方法、装置、计算机设备和介质,用以在根据文本生成诗歌时,保证诗歌中各诗句的多样性以及主旨一致性。
一方面,提供一种诗歌生成方法,包括:
对诗歌描述文本进行解析,获得文本特征向量;
至少根据诗歌描述文本的文本特征向量获得第一诗句,以及获得第一诗句的诗句特征向量;
根据诗歌描述文本的文本特征向量以及第一诗句的诗句特征向量,确定上下文向量;
根据上下文向量获得先验分布,获得诗句隐变量向量;
根据诗句隐变量向量和上下文向量,生成第二诗句。
一方面,一种诗歌生成模型的训练方法,包括:
通过CVAE对诗歌描述文本样本进行解析,获得文本特征向量;
至少根据诗歌描述文本样本的文本特征向量获得初始诗句,以及获得初始诗句的诗句特征向量;
根据诗歌描述文本样本的文本特征向量和初始诗句的诗句特征向量获得上下文向量,以及根据上下文向量获得诗句隐变量向量;
至少根据诗句隐变量向量以及上下文向量,确定结果诗句;
根据诗歌描述文本样本,目标诗句和结果诗句对诗歌生成模型进行模型优化。
一方面,提供一种诗歌生成装置,包括:
解析单元,用于对诗歌描述文本进行解析,获得文本特征向量;
第一获取单元,用于至少根据诗歌描述文本的文本特征向量获得第一诗句,以及获得第一诗句的诗句特征向量;
确定单元,用于根据诗歌描述文本的文本特征向量以及第一诗句的诗句特征向量,确定上下文向量;
第二获取单元,用于根据上下文向量获得先验分布,获得诗句隐变量向量;
生成单元,用于根据诗句隐变量向量和上下文向量,生成第二诗句。
一方面,提供一种诗歌生成模型的训练装置,包括:
解析单元,用于通过CVAE对诗歌描述文本样本进行解析,获得文本特征向量;
第一获得单元,用于至少根据诗歌描述文本样本的文本特征向量获得初始诗句,以及获得初始诗句的诗句特征向量;
第二获得单元,用于根据诗歌描述文本样本的文本特征向量和初始诗句的诗句特征向量获得上下文向量,以及根据上下文向量获得诗句隐变量向量;
确定单元,用于至少根据诗句隐变量向量以及上下文向量,确定结果诗句;
优化单元,用于根据诗歌描述文本样本,目标诗句和结果诗句对诗歌生成模型进行模型优化。
一方面,提供一种计算机设备,包括至少一个处理单元、以及至少一个存储单元,其中,存储单元存储有计算机程序,当程序被处理单元执行时,使得处理单元执行上述任意一种诗歌生成方法或诗歌生成模型的训练方法的步骤。
一方面,提供一种计算机可读介质,其存储有可由终端设备执行的计算机程序,当程序在终端设备上运行时,使得终端设备执行上述任意一种诗歌生成方法或诗歌生成模型的训练方法的步骤。
本申请实施例提供的一种诗歌生成方法、装置、计算机设备和介质中,通过诗歌生成模型对诗歌描述文本进行解析,获得文本特征向量,并至少根据诗歌描述文本的文本特征向量获得第一诗句;根据诗歌描述文本的文本特征向量以及第一诗句的诗句特征向量确定上下文向量;根据上下文向量获得先验分布获得诗句隐变量向量;根据诗句隐变量向量和上下文向量,生成第二诗句。这样,通过诗歌生成模型生成诗歌的各诗句,诗歌中每一诗句都是根据前一诗句以及诗歌描述文本获得的,既可以保证各诗句的多样性,还可以保证各诗句之间的主旨的一致性。
进一步地,诗歌生成模型是基于CVAE-D以及诗歌描述文本样本训练获得的。CVAE使得生成的诗歌的各诗句具有多样性,辨别器使得生成的诗歌的各诗句的主题能够保持一致,这样,通过CVAE-D保证了诗歌的各诗句的多样性和主题一致性。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1a为本申请实施方式中提供的一种CVAE-D的执行逻辑结构示意图;
图1b为本申请实施方式中提供的一种CVAE的执行逻辑结构示意图;
图1c为本申请实施方式中提供的一种辨别器的执行逻辑结构示意图;
图2为本申请实施方式中一种诗歌生成方法的实施流程图;
图3a为本申请实施方式中提供的一种诗歌生成系统的执行逻辑结构示意图;
图3b为本申请实施方式中提供的一种生成的诗歌的效果图;
图4为本申请实施方式中一种诗歌生成模型训练的实施流程图;
图5a为本申请实施方式中一种诗歌主题一致性示意图;
图5b为本申请实施方式中另一种诗歌主题一致性示意图;
图6a为本申请实施方式中一种诗歌生成装置的结构示意图;
图6b为本申请实施方式中一种诗歌生成模型的训练装置的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
首先,对本申请实施例中涉及的部分用语进行说明,以便于本领域技术人员理解。
解码评价:表征诗句与目标诗句之间的差异性,用于对诗歌生成模型进行优化。
解析评价:是根据诗句和目标诗句分别与诗歌描述文本之间相似性获得的,表征诗句与主题之间的差异性,用于对诗歌生成模型进行优化。
在将诗歌描述文本解析成诗歌时,通常采用以下方式:根据诗歌描述文本获得多个关键词,并分别将每一关键词作为一个子主题,生成相应的诗句。但是,由于各关键词是离散的,没有从连续语义空间去考虑,因此,会存在主题不一致的问题。进一步地,通过关键词生成诗句,使得句子之前的前后关系不是很紧密,容易生成重复的词,使得生成的诗歌不够新颖。
可以理解的是,本方案中的诗歌,不限于古诗词、现代诗歌等等具有固定格式要求的文体。
综上所述,为保证生成的诗歌的主题的一致性和新颖性,本申请提供了一种诗歌生成的技术方案。
本申请实施例提供的一种诗歌生成方法以及诗歌生成模型训练方法,可应用于服务器或终端设备中,该终端设备可以为手机、平板电脑、PDA(Personal DigitalAssistant,掌上电脑)等。可选的,服务器或终端设备可以直接获取用户输入的诗歌描述文本,进而生成诗歌,服务器也可以接收终端设备发送诗歌解析请求,并将生成的诗歌返回至终端设备。本申请实施例中,预先基于各诗歌描述文本样本组成的训练集,对条件变分自编码器和辨别器(Conditional Variational auto-encoder-Discrimination,CVAE-D)进行模型训练,获得诗歌生成模型。
其中,CVAE-D是一种深度神经网络生成模型,其包括CVAE和辨别器。在诗歌生成模型的训练过程中,一方面,采用CVAE根据诗歌描述文本样本生成诗句,并根据诗句和目标诗句之间的距离和重构损失确定解码评价,以及根据解码评价进行模型优化;另一方面,通过辨别器根据诗句和目标诗句分别与诗歌描述文本样本之间的相似性确定解析评价,对诗歌生成模型进行再次优化。CVAE使得诗歌生成模型生成的诗歌的各诗句具有多样性,辨别器使得各诗句的主题能够保持一致,这样,保证了生成的诗歌的各诗句的多样性和主题一致性,使得生成的诗歌尽可以可能的接近真实的诗歌。
进一步地,在获得训练的诗歌生成模型之后,根据诗歌生成模型将用户输入的诗歌描述文本解析为诗歌。具体的,当根据诗歌生成模型将用户输入的诗歌描述文本解析得到其中一个诗句后,根据解析得到的诗句特征向量以及诗歌描述文本的文本特征向量获得上下文向量,并采用多维度高斯分布算法,对该上下文向量进行处理,获得先验分布,以及对先验分布进行采样处理,获得诗句隐变量向量,进一步地,根据诗句隐变量向量和上下文向量生成后一诗句。这样,分别根据每一前一诗句和诗歌描述文本生成后一诗句,进一步使得诗歌的各诗句前后联系紧密并且主题一致,避免了通过关键词生成诗句带来的主题不一致以及句子前后不连续的问题。
参阅图1a所示,为一种CVAE-D执行逻辑结构示意图。CVAE-D包括CVAE和辨别器。在对诗歌生成模型进行训练时,通过各诗歌描述文本样本对CVAE-D进行模型训练,获得诗歌生成模型。而在应用诗歌生成模型生成诗句时,仅采用CVAE对诗歌描述文本进行解析,获得诗歌。也就是说,在本实施例中,辨别器仅用于模型训练,而不用于模型应用。
CVAE用于根据诗歌描述文本以及第一诗句(Li-1),生成第二诗句(Li),这样,可以依次输出每一条诗句,即L1,L2……Ln;还用于根据诗句Li与目标诗句之间的差异性确定解码评价,并根据解码评价进行模型优化。其中,Li表示第i条诗句,n为诗歌的诗句的总数量。第一诗句可以是诗歌中的任一诗句,且第一诗句为第二诗句的前一诗句。在本实施例中,CVAE还用于根据辨别器输出的解析评价进行模型优化。
辨别器用于根据诗歌描述文本分别与Li诗句和目标诗句之间的相似性,确定解析评价。解析评价表征诗句与诗歌描述文本样本之间的差异性,用于对诗歌生成模型进行优化。
参阅图1b所示,为一种CVAE的执行逻辑结构示意图。CVAE包括共享编码器和解码器。共享编码器包括第一编码模块和第二编码模块。
第一编码模块用于根据第一诗句生成诗句特征向量,根据诗歌描述文本生成文本特征向量,并将诗句特征向量和文本特征向量进行整合,获得上下文向量c,采用多维度高斯分布对上下文向量c进行处理,获得先验分布,以及对先验分布进行采样处理生成诗句隐变量向量。
可选的,确定先验分布时,可以采用以下公式:
pθ(z|c)=(u′,σ′2I)
Figure BDA0001848740730000071
其中,pθ(z|c)为先验分布,θ为先验分布的参数,z为诗句隐变量向量,c为上下文向量,u′为均值,σ′2为均方差,I为单位矩阵,MLP为多层感知机(Multi-Layer Perceptron,MLP)函数。
这样,就可以将输入的第一诗句和诗歌描述文本获得的多维度向量进行降维,即通过多维度高斯分布,将输入的第一诗句和诗歌描述文本映射到诗句隐变量向量。
第二编码模块用于根据第二诗句对应的目标诗句,生成目标特征向量,并采用多维度高斯分布对上下文向量和目标特征向量进行处理,获得后验分布,以及对后验分布进行采样处理获得目标隐变量向量。其中,第二编码模块仅用于模型训练过程中,用于进行模型学习以及优化,目标诗句为针对第二诗句设置的优选诗句。
可选的,确定后验分布时,可以采用以下公式:
qφ(z|x,c)=(u,σ2I);
Figure BDA0001848740730000072
其中,qφ(z|x,c)为后验分布,φ为后验分布的参数,z为目标隐变量向量,x为目标特征向量,c为上下文向量,u为均值,σ2为均方差,I为单位矩阵,Wq和bq为系数。
例如,目标诗句为“庭户……寄思”,对目标诗句进行分词,获得各词向量ei1,ei2,……eij eim。m为目标诗句的字数,i为目标诗句序号,j为目标诗句中第j个字。
本实施例中,在对诗歌生成模型进行训练时,第二编码模块通过设置的目标诗句,对诗歌生成模型进行模型调整,使得生成的诗句逐渐逼近真实的诗句。
解码器用于根据获得的目标隐变量向量以及诗句隐变量向量和上下文向量,获得诗句的第一个字的隐状态向量,并根据第一个字的隐状态向量,获得诗句中的第一个字。对于该诗句中的其它每一个字,都是根据其上一个字以及上一个隐状态向量获得的。
例如,解码器根据获得的目标隐变量向量,诗句隐变量向量和上下文向量,获得第一个字的隐状态向量s1,并根据s1获得第一个字“庭”,根据“庭”和s1获得s2,根据s2获得第二个字“户”,后续依次根据上一个字和上一个隐状态向量获得下一个字,即可以获得各隐状态向量s1,s2,s3,……sm和sm+1,并获得诗句“庭户风光寄所思”,其中,m为诗句的字数。
本申请实施例中,设定先验分布和后验分布均是一个具有对角协方差结构的多维度高斯分布。而多维度高斯分布的均值和方差可以通过公式
Figure BDA0001848740730000081
Figure BDA0001848740730000082
获得。其中,将上下文向量作为条件变量,以监督诗句的生成过程。
本实施例中,CVAE获得诗句后,根据诗句以及目标诗句确定表征解码效果的解码评价。其中,确定解码评价的过程可以包括以下步骤:
确定先验分布和后验分布的信息增益(Kullback–Leibler,KL)散度,以及在该后验分布条件下该先验分布的重构损失,并根据确定出的KL散度和重构损失,确定该诗句的解码评价,进而根据解码评价对诗歌生成模型进行优化。其中,解码评价表示生成的诗句与目标诗句之间的差异以及重构损失,反映了解码的效果。
可选的,确定解码评价时,可以采用以下公式:
L(θ,φ;x,c)=-KL(qφ(z|x,c)||pθ(z|c))+Eqφ(z|x,c)[log(pθ(x|z,c))];
其中,L(θ,φ;x,c)为解码评价,θ为先验分布的参数,φ为后验分布的参数,KL为散度函数,E表示重构损失,能够反映解码效果,pθ(z|c)为先验分布,qφ(z|x,c)为后验分布。pθ(x|z,c)是解码器通过神经网络进行拟合获得的,对应诗句生成过程。
其中,KL散度是一种量化两种概率分布之间差异的方式,又叫相对熵。在概率学和统计学上,我们经常会使用一种更简单的、近似的分布来替代观察数据或太复杂的分布。KL散度能帮助我们度量使用一个分布来近似另一个分布时所损失的信息。因此,在本实施例中,KL可以使得qφ(z|x,c)与pθ(z|c)接近。重构损失E为诗句与目标诗句之间的损失,用于使得生成的诗句尽可能与真实的诗句一致。
这样,在使用大数据集和边缘似然难以被积分的情况下,将先验分布去模拟后验分布。在模型学习和模型训练的过程中,通过模型优化,可以使得对数似然log(pθ(x|z,c))最大化。
参阅图1c所示,为一种辨别器的执行逻辑结构示意图。本申请实施例中,通过辨别器评价生成的诗句与诗歌描述文本之间的关联性,并将获得的解析评价反向传播至CVAE中的解码器中,以优化模型。
具体的,确定解析评价可以采用以下步骤:
S1、确定诗歌描述文本样本与诗句之间的第一相似性;
S2、确定诗歌描述文本样本与该诗句对应的目标诗句之间的第二相似性;
S3、根据第一相似性和第二相似性,确定该诗句的解析评价。其中,解析评价是根据诗句和目标诗句分别与诗歌描述文本样本之间相似性获得的,用于对诗歌生成模型进行优化。
具体的,确定第一相似性时,可以采用以下步骤:
S11,对诗歌描述文本样本进行分词,获得各词向量(e1,e2,e3,……和eN),并获取解码器输出的诗句的各隐状态向量(s1,s2,s3,……sm-1和sm),以及分别将诗句的每一隐状态向量进行线性转换处理,获得线性转换后的隐状态向量。
其中,之所以对隐状态向量进行线性转换,是为了使得隐状态向量的维度与根据诗歌描述文本样本获得的各词向量的维度相同,以便于后续的矩阵运算。可选的,线性转换时可以采用线性整流函数(Rectified Linear Unit,ReLU)函数。ReLU又称修正线性单元,是一种人工神经网络中常用的激活函数。N为词向量的个数。
S13,根据诗句转换后的各隐状态向量组成的矩阵,与各词向量组成的矩阵之间的点积,获得解析矩阵。
S15,采用卷积神经网络对解析矩阵进行特征提取,进而根据提取的特征确定第一相似性。可选的,可以采用MLP函数确定相似性。其中,在特征提取的过程中,通过最大池化获得最突出的特征信息。
具体的,确定第二相似性时,可以采用以下步骤:
S21,基于与确定诗句的线性转换后的各隐状态向量相同的原理,根据目标隐变量向量获取解码器输出的目标诗句的各隐状态向量,以及将各目标诗句的各隐状态向量进行线性转换处理,获得线性转换后的隐状态向量。
S23,根据目标诗句转换后的各词向量组成的矩阵,与各诗歌描述文本样本的词向量组成的矩阵之间的点积,获得目标矩阵。
S25,采用卷积神经网络对解析矩阵进行特征提取以及池化,以及根据提取的特征确定第二相似性。
可选的,根据第一相似性和第二相似性,确定该诗句的解析评价时,可以采用以下公式:
LD=log(mg)+log(1-mt);
其中,LD为解析评价,mg为第一相似性,mt为第二相似性。
这样,获得诗句和目标诗句分别与诗歌描述文本样本之间的相似性,以确定诗句与主题之间的关联性。而且,可以通过辨别器获得解析评价并反向传播至解码器,使得解码器根据获得的解析评价进行模型优化,以提高生成的诗歌与主题的一致性。
参阅图2所示,为本申请提供的一种诗歌的生成方法的实施流程图。参阅图3a所示,为一种诗歌生成系统的执行逻辑结构示意图,诗歌生成系统包括第一编码模块和解码器。在下文介绍中,结合图3a所示的执行逻辑示意图进行介绍,该方法的具体实施流程如下:
步骤200:服务器获取诗歌描述文本。
具体的,服务器直接获取用户输入、指定或选取的诗歌描述文本,或者接收其它终端设备发送的诗歌描述文本。诗歌描述文本是待处理的对象,在本申请各实施例中,对诗歌描述文本的处理可以为获得相应的文本特征向量,或将诗歌描述文本进行分词,获得各词向量。诗歌描述文本可以为一段话、一句话或一个词,等等。
例如,用户通过终端设备网页的解析输入框输入“春天的桃花开了”,服务器接收终端设备发送的包含“春天的桃花开了”的诗歌生成请求。
步骤201:服务器对诗歌描述文本进行解析,获得文本特征向量。
具体的,服务器通过第一编码模块将诗歌描述文本进行分词,获得文本特征向量,可选的,文本特征向量还可以是通过神经网络对诗歌描述文本进行特征提取获得的,用于表示诗歌描述文本的特征分布。
这样,就可以将诗歌描述文本转换为特征向量,以便后续进行数据处理。
步骤202:服务器根据对诗歌描述文本进行解析得到的文本特征向量,获得第一条诗句。
具体的,第一编码模块根据文本特征向量获得上下文向量c,并通过多变量高斯分布获得上下文向量的先验分布,以及对先验分布进行采样处理,获得诗句隐变量向量。
解码器根据上下文向量和诗句隐变量向量,获得第一个隐状态向量s1,并根据该隐状态向量s1获得第一条诗句的第一个字。接着,解码器依次根据上一个字和上一个隐状态向量,获得下一个字,直至获得设定字数的第一条诗句。其中,获得各隐状态向量s1,s2,s3,……sm和sm+1的过程,其详细步骤参阅上述实施例中解码器的具体步骤。
步骤203:服务器根据第一条诗句和诗歌描述文本,获得第二条诗句。
具体的,第一编码模块获得第一条诗句的诗句特征向量。其中,第一条诗句为第二条诗句的前一诗句。
第一编码模块根据诗歌描述文本的文本特征向量以及第一条诗句的诗句特征向量获得上下文向量,并采用多维度高斯分布对该上下文向量进行处理,获得先验分布以及对该先验分布进行采样处理,获得该条诗句的诗句隐变量向量。
解码器根据获得的诗句隐变量向量和上下文向量,获得诗句的第一个字的隐状态向量,并根据第一个字的隐状态向量获得诗句中的第一个字,对于该诗句中的其它每一个字,都是根据上一个字以及上一个隐状态向量获得。
本实施例中,针对待生成的诗歌中除了第一条诗句之外的每一诗句,都可以采用步骤203获得,进而能够通过诗歌生成模型对诗歌描述文本进行解析获得诗歌。
例如,参阅图3b所示,为一种生成的诗歌的效果图。服务器通过诗歌生成模型对“书窗碧桃”进行处理,生成的诗歌为:书窗碧桃,庭户风光寄所思,伊人重过惜残枝。窗前花开不知味,唯有落红入我诗。
在上述实施例中,通过基于CVAE-D生成的诗歌生成模型,对诗歌描述文本进行解析,获得诗歌。CVAE-D中的CVAE保证了各诗句的多样性,CVAE-D中的辨别器使得诗歌生成模型生成的诗句与诗歌描述文本的主题可以保持一致。
参阅图4所示,为一种诗歌生成模型训练的实施流程图。下文介绍中,结合上述图1a-1c进行说明,诗歌生成模型训练的方法的具体流程如下:
步骤400:第一编码模块至少根据诗歌描述文本样本获得初始诗句。
具体的,若初始诗句为诗歌的首句,则第一编码模块根据诗歌描述文本样本和设置的相应目标诗句获得初始诗句;否则,第一编码模块根据诗歌描述文本样本、设置的相应目标诗句,以及初始诗句的前一诗句获得初始诗句。
步骤401:第一编码模块根据初始诗句和诗歌描述文本,获得上下文向量。
具体的,第一编码模块将初始诗句的诗句特征向量,以及诗歌描述文本的文本特征向量进行整合,获得上下文向量。
步骤402:共享编码器根据上下文向量,获得诗句隐变量向量和目标隐变量向量。
具体的,共享编码器中的第一编码模块采用多维度高斯分布对上下文向量进行处理,获得先验分布,以及对先验分布进行采样处理生成诗句隐变量向量;以及,
共享编码器中的第二编码模块根据设置的相应的目标诗句生成目标特征向量,并将采用多维度高斯分布对上下文向量和目标特征向量进行处理获得后验分布,以及对后验分布进行采样处理获得目标隐变量向量。
步骤403:解码器根据目标隐变量向量、诗句隐变量向量以及上下文向量,获得结果诗句。
具体的,解码器根据获得的目标隐变量向量,诗句隐变量向量和上下文向量,获得结果诗句的第一个字的隐状态向量,并根据第一个字的隐状态向量获得第二诗句中的第一个字,对于第二诗句中的其它每一个字,都是根据其上一个字以及上一个隐状态向量获得的。
步骤404:CVAE-D分别确定解码评价,以及解析评价。
具体的,CVAE确定解码评价时,可以采用以下步骤:
根据先验分布和后验分布确定KL散度以及重构损失,并根据确定出的KL散度和重构损失,确定诗句的解码评价。具体步骤参阅上述CVAE的具体执行步骤。
辨别器确定解析评价时,可以采用以下步骤:
确定诗歌描述文本样本与诗句之间的第一相似性,并确定诗歌描述文本样本与该诗句对应的目标诗句之间的第二相似性,以及根据第一相似性和第二相似性,确定该诗句的解析评价。具体步骤参阅辨别器的具体执行步骤。
步骤405:CVAE通过解码评价和解析评价,对诗歌生成模型进行优化,获得优化后的诗歌生成模型。
参阅图5a和5b所示,图5a为一种诗歌主题一致性示意图,图5b为另一种诗歌主题一致性示意图。参阅图5a所示,仅采用CVAE对诗歌生成模型进行训练获得诗歌生成模型,并采用诗歌生成模型对“书窗碧桃”进行处理,获得的诗句为:龙蛇起蛰手中擎,玉立无人已上都。参阅图5b所示,采用CVAE-D获得诗歌生成模型后,根据诗歌生成模型对“书窗碧桃”进行处理,获得的诗句为:庭户风光寄所思,伊人重过惜残枝。图5a和图5b中竖轴为诗歌描述文本,横轴为生成的诗句,颜色越暗,表示诗句与主题之间的一致性越高,显然,图5b明显比图5a更优,即通过本申请实施例中辨别器对诗歌生成模型进行优化,可以提高主题与诗句之间的一致性。
本实施例中,采用训练后的诗歌生成模型对诗歌描述文本进行解析应用时,仅采用CVAE中的第一编码模块以及解码器获得诗歌,CVAE中的第二编码模块,以及辨别器仅应用于诗歌生成训练中。
下面采用一个具体的应用场景对诗歌的生成方法进行进一步说明:
终端向服务器发送包含诗歌描述文本的诗歌生成请求,服务器根据诗歌生成模型对接收的诗歌描述文本进行处理生成诗歌,并将诗歌返回至终端。
本申请实施例中,在模型训练过程中,通过获取的解码评价和解析评价对诗歌生成模型进行不断优化,使得生成的诗歌更加贴近主题,有效的改善了诗歌与主题不一致的问题。在通过诗歌生成模型生成诗句时,采用CVAE方法,没有引入额外的关键词数据,也没有大幅度提高模型复杂度,解决了诗句中各词的多样性和新颖性,提高了用户体验。进一步地,由于仅在模型训练过程中采用辨别器,因此,诗歌生成模型的效率较高。
基于同一发明构思,本申请实施例中还提供了一种诗歌生成装置,由于上述装置及设备解决问题的原理与一种诗歌生成方法相似,因此,上述装置的实施可以参见方法的实施,重复之处不再赘述。
如图6a示,其为本申请实施例提供的一种诗歌的生成装置的结构示意图。所述诗歌生成装置包括:
解析单元610,用于对诗歌描述文本进行解析,获得文本特征向量;
第一获取单元611,用于至少根据诗歌描述文本的文本特征向量获得第一诗句,以及获得第一诗句的诗句特征向量;
确定单元612,用于根据诗歌描述文本的文本特征向量以及第一诗句的诗句特征向量,确定上下文向量;
第二获取单元613,用于根据上下文向量获得先验分布,获得诗句隐变量向量;
生成单元614,用于根据诗句隐变量向量和上下文向量,生成第二诗句。
较佳的,解析单元610还用于:
通过CVAE,对诗歌描述文本样本进行解析获得诗句以及解码评价,解码评价表征诗句与目标诗句之间的差异性;
通过辨别器确定解析评价,解析评价表征诗句与诗歌描述文本样本之间的差异性;
根据解码评价和解析评价对诗歌生成模型进行优化。
较佳的,解析单元610还用于:
根据诗歌描述文本样本获得初始诗句,并根据诗歌描述文本样本和初始诗句获得上下文向量,以及根据上下文向量获得诗句隐变量向量;
根据设置的目标诗句和上下文向量获得目标隐变量向量;
根据诗句隐变量向量、目标隐变量向量以及上下文向量,获得结果诗句。
较佳的,解码评价是按照以下步骤确定的:
获取根据上下文向量确定的先验分布,以及根据目标诗句和上下文向量获得的后验分布;
确定先验分布和后验分布之间的KL散度;
确定在后验分布条件下先验分布的重构损失;
根据KL散度和重构损失,确定解码评价。
较佳的,解析评价是按照以下步骤确定的:
确定诗歌描述文本样本与结果诗句之间的第一相似性;
确定诗歌描述文本样本与目标诗句之间的第二相似性;
根据第一相似性和第二相似性,确定解析评价。
较佳的,解析单元610还用于:
对诗歌描述文本样本进行分词,获得各词向量;
根据诗句隐变量向量、目标隐变量向量以及上下文向量,获得结果诗句的各隐状态向量;
根据各词向量和第二诗句的各隐状态向量,获得解析矩阵;
对解析矩阵进行特征提取,并根据提取的特征确定第一相似性。
较佳的,解析单元610还用于:
对诗歌描述文本样本进行分词,获得各词向量;
根据目标隐变量向量,获得目标诗句的各隐状态向量;
根据各词向量和目标诗句的各隐状态向量,获得目标矩阵;
对目标矩阵进行特征提取,并根据提取的特征确定第二相似性。
较佳的,解析单元610还用于:
确定第一相似性的对数,获得第一对数;
确定指定值与第二相似性的差值的对数,获得第二对数;
根据第一对数和第二对数的加和,获得解析评价。
如图6b示,其为本申请实施例提供的诗歌生成模型的训练装置的结构示意图。所述诗歌生成模型的训练装置包括:
解析单元620,用于通过条件变分自编码器(CVAE)对诗歌描述文本样本进行解析,获得文本特征向量;
第一获得单元621,用于至少根据诗歌描述文本样本的文本特征向量获得初始诗句,以及获得初始诗句的诗句特征向量;
第二获得单元622,用于根据诗歌描述文本样本的文本特征向量和初始诗句的诗句特征向量获得上下文向量,以及根据上下文向量获得诗句隐变量向量;
确定单元623,用于至少根据诗句隐变量向量以及上下文向量,确定结果诗句;
优化单元624,用于根据诗歌描述文本样本,目标诗句和结果诗句对诗歌生成模型进行模型优化。
较佳的,优化单元624用于:
根据诗歌描述文本样本,目标诗句,以及结果诗句,确定解码评价和解析评价,并根据解码评价和解析评价对诗歌生成模型进行模型优化;
其中,解码评价表征生成的诗句与目标诗句之间的差异性;解析评价表征诗句与诗歌描述文本样本之间的差异性。
较佳的,优化单元624用于:
获取根据上下文向量确定的先验分布,以及根据目标诗句和上下文向量获得的后验分布,并根据先验分布和后验分布,确定解码评价;
根据诗歌描述文本样本分词获得的各词向量与结果诗句转换获得的各隐状态向量确定第一相似性,并根据各词向量与目标诗句转换获得的各隐状态向量确定第二相似性,以及根据第一相似性和第二相似性,确定解析评价。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存有计算机程序,计算机程序被处理器执行时,使得处理器执行上述诗歌生成方法或诗歌生成模型的训练方法的步骤,此处诗歌生成方法或诗歌生成模型的训练方法的步骤可以是上述任意各个实施例中诗歌生成方法或诗歌生成模型的训练方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储器存有计算机程序,计算机程序被处理器执行时,使得处理器执行上述诗歌生成方法或诗歌生成模型的训练方法的步骤,此处诗歌生成方法或诗歌生成模型的训练方法的步骤可以是上述任意各个实施例中诗歌生成方法或诗歌生成模型的训练方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (9)

1.一种诗歌生成方法,其特征在于,包括:
通过条件变分自编码器CVAE,对诗歌描述文本样本进行解析获得结果诗句以及解码评价,所述解码评价表征结果诗句与设置的目标诗句之间的差异性;
通过辨别器确定所述诗歌描述文本样本与所述结果诗句之间的第一相似性,以及确定所述诗歌描述文本样本与所述目标诗句之间的第二相似性,并根据所述第一相似性和所述第二相似性,确定解析评价,所述解析评价表征诗句与诗歌描述文本样本之间的差异性;
根据所述解码评价和所述解析评价对诗歌生成模型进行优化,获得已训练的诗歌生成模型;
采用所述已训练的诗歌生成模型,执行如下过程以生成相应的诗歌:
对诗歌描述文本进行解析,获得文本特征向量;
至少根据所述诗歌描述文本的文本特征向量获得第一诗句,以及获得第一诗句的诗句特征向量;
根据所述诗歌描述文本的文本特征向量以及所述第一诗句的诗句特征向量,确定上下文向量;
根据所述上下文向量获得先验分布,获得诗句隐变量向量;
根据所述诗句隐变量向量和所述上下文向量,生成第二诗句。
2.如权利要求1所述的方法,其特征在于,对诗歌描述文本样本进行解析获得结果诗句,包括:
根据所述诗歌描述文本样本获得初始诗句,并根据所述诗歌描述文本样本和所述初始诗句获得上下文向量,以及根据所述上下文向量获得诗句隐变量向量;
根据所述目标诗句和所述上下文向量获得目标隐变量向量;
根据所述诗句隐变量向量、所述目标隐变量向量以及所述上下文向量,获得结果诗句。
3.如权利要求2所述的方法,其特征在于,确定所述解码评价包括:
获取根据所述上下文向量确定的先验分布,以及根据所述目标诗句和所述上下文向量获得的后验分布;
确定所述先验分布和所述后验分布之间的信息增益KL散度;
确定在所述后验分布条件下所述先验分布的重构损失;
根据所述KL散度和所述重构损失,确定解码评价。
4.如权利要求1所述的方法,其特征在于,确定所述诗歌描述文本样本与所述第二诗句之间的第一相似性,包括:
对所述诗歌描述文本样本进行分词,获得各词向量;
根据所述诗句隐变量向量、所述目标隐变量向量以及所述上下文向量,获得所述结果诗句的各隐状态向量;
根据各词向量和所述第二诗句的各隐状态向量,获得解析矩阵;
对所述解析矩阵进行特征提取,并根据提取的特征确定第一相似性。
5.如权利要求1所述的方法,其特征在于,确定所述诗歌描述文本样本与所述目标诗句之间的第二相似性,包括:
对所述诗歌描述文本样本进行分词,获得各词向量;
根据所述目标隐变量向量,获得所述目标诗句的各隐状态向量;
根据各词向量和所述目标诗句的各隐状态向量,获得目标矩阵;
对所述目标矩阵进行特征提取,并根据提取的特征确定第二相似性。
6.如权利要求1所述的方法,其特征在于,根据所述第一相似性和所述第二相似性,确定解析评价,包括:
确定所述第一相似性的对数,获得第一对数;
确定指定值与所述第二相似性的差值的对数,获得第二对数;
根据所述第一对数和所述第二对数的加和,获得解析评价。
7.一种诗歌生成装置,其特征在于,包括:
解析单元,用于通过条件变分自编码器CVAE,对诗歌描述文本样本进行解析获得结果诗句以及解码评价,所述解码评价表征结果诗句与设置的目标诗句之间的差异性;通过辨别器确定所述诗歌描述文本样本与所述结果诗句之间的第一相似性,以及确定所述诗歌描述文本样本与所述目标诗句之间的第二相似性,并根据所述第一相似性和所述第二相似性,确定解析评价,所述解析评价表征诗句与诗歌描述文本样本之间的差异性;根据所述解码评价和所述解析评价对诗歌生成模型进行优化,获得已训练的诗歌生成模型;并通过所述已训练的诗歌生成模型对诗歌描述文本进行解析,获得文本特征向量;
第一获取单元,用于通过所述已训练的诗歌生成模型,至少诗歌根据所述诗歌描述文本的文本特征向量获得第一诗句,以及获得第一诗句的诗句特征向量;
确定单元,用于通过所述已训练的诗歌生成模型,根据所述诗歌描述文本的文本特征向量以及所述第一诗句的诗句特征向量,确定上下文向量;
第二获取单元,用于通过所述已训练的诗歌生成模型,根据所述上下文向量获得先验分布,获得诗句隐变量向量;
生成单元,用于通过所述已训练的诗歌生成模型,根据所述诗句隐变量向量和所述上下文向量,生成第二诗句。
8.一种计算机设备,其特征在于,包括至少一个处理单元、以及至少一个存储单元,其中,所述存储单元存储有计算机程序,当所述程序被所述处理单元执行时,使得所述处理单元执行权利要求1~6任一所述方法的步骤。
9.一种计算机可读介质,其特征在于,其存储有可由终端设备执行的计算机程序,当所述程序在终端设备上运行时,使得所述终端设备执行权利要求1~6任一所述方法的步骤。
CN201811284565.1A 2018-10-31 2018-10-31 诗歌生成方法、装置、计算机设备和介质 Active CN109582952B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811284565.1A CN109582952B (zh) 2018-10-31 2018-10-31 诗歌生成方法、装置、计算机设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811284565.1A CN109582952B (zh) 2018-10-31 2018-10-31 诗歌生成方法、装置、计算机设备和介质

Publications (2)

Publication Number Publication Date
CN109582952A CN109582952A (zh) 2019-04-05
CN109582952B true CN109582952B (zh) 2022-09-02

Family

ID=65921378

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811284565.1A Active CN109582952B (zh) 2018-10-31 2018-10-31 诗歌生成方法、装置、计算机设备和介质

Country Status (1)

Country Link
CN (1) CN109582952B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110134968B (zh) * 2019-05-22 2023-11-24 网易(杭州)网络有限公司 基于深度学习的诗歌生成方法、装置、设备及存储介质
CN110414001B (zh) * 2019-07-18 2023-09-26 腾讯科技(深圳)有限公司 语句生成方法和装置、存储介质及电子装置
CN110852086B (zh) * 2019-09-18 2022-02-08 平安科技(深圳)有限公司 基于人工智能的古诗词生成方法、装置、设备及存储介质
CN111221958B (zh) * 2020-01-08 2024-03-15 北京小米松果电子有限公司 一种训练藏字诗生成模型的方法、藏字诗生成方法及装置
CN111241789A (zh) * 2020-01-14 2020-06-05 平安科技(深圳)有限公司 一种文本生成的方法及装置
CN111553152B (zh) * 2020-04-03 2023-05-12 华为技术有限公司 问题生成方法和装置及问题-文本对的生成方法和装置
CN112115718B (zh) * 2020-09-29 2024-07-16 腾讯科技(深圳)有限公司 内容文本生成方法和装置、音乐评论文本生成方法
CN112989812B (zh) * 2021-03-04 2023-05-02 中山大学 一种基于云数据中心分布式诗歌生成方法
CN114021545A (zh) * 2022-01-05 2022-02-08 北京智源悟道科技有限公司 自动作诗语言模型训练方法、装置、自动作诗方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001033409A2 (en) * 1999-11-01 2001-05-10 Kurzweil Cyberart Technologies, Inc. Computer generated poetry system
JP2013084205A (ja) * 2011-10-12 2013-05-09 Kddi Corp 俳句公開サーバ、端末装置、コミュニケーションシステム、季語推薦方法、付け句生成方法、プログラム
CN105955964A (zh) * 2016-06-13 2016-09-21 北京百度网讯科技有限公司 一种自动生成诗歌的方法和装置
CN106776517A (zh) * 2016-12-20 2017-05-31 科大讯飞股份有限公司 自动作诗方法和装置及系统
CN107832292A (zh) * 2017-11-02 2018-03-23 合肥工业大学 一种基于神经网络模型的图像到汉语古诗的转换方法
CN108415893A (zh) * 2018-03-15 2018-08-17 平安科技(深圳)有限公司 诗歌自动生成方法、装置、计算机设备及存储介质
CN108427771A (zh) * 2018-04-09 2018-08-21 腾讯科技(深圳)有限公司 摘要文本生成方法、装置和计算机设备
CN108563622A (zh) * 2018-05-04 2018-09-21 清华大学 一种具有风格多样性的绝句生成方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001033409A2 (en) * 1999-11-01 2001-05-10 Kurzweil Cyberart Technologies, Inc. Computer generated poetry system
JP2013084205A (ja) * 2011-10-12 2013-05-09 Kddi Corp 俳句公開サーバ、端末装置、コミュニケーションシステム、季語推薦方法、付け句生成方法、プログラム
CN105955964A (zh) * 2016-06-13 2016-09-21 北京百度网讯科技有限公司 一种自动生成诗歌的方法和装置
CN106776517A (zh) * 2016-12-20 2017-05-31 科大讯飞股份有限公司 自动作诗方法和装置及系统
CN107832292A (zh) * 2017-11-02 2018-03-23 合肥工业大学 一种基于神经网络模型的图像到汉语古诗的转换方法
CN108415893A (zh) * 2018-03-15 2018-08-17 平安科技(深圳)有限公司 诗歌自动生成方法、装置、计算机设备及存储介质
CN108427771A (zh) * 2018-04-09 2018-08-21 腾讯科技(深圳)有限公司 摘要文本生成方法、装置和计算机设备
CN108563622A (zh) * 2018-05-04 2018-09-21 清华大学 一种具有风格多样性的绝句生成方法及装置

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Generating Thematic Chinese Poetry using Conditional Variational Autoencoders with Hybrid Decoders;Yang, Xiaopeng;《27th International Joint Conference on Artificial Intelligence (IJCAI)》;20180719;全文 *
利用RNN模型生成中国古典诗歌;冯思齐等;《通讯世界》;20180225(第02期);全文 *
基于主题模型和统计机器翻译方法的中文格律诗自动生成;蒋锐滢等;《计算机学报》;20151231(第12期);全文 *
基于统计的汉语格律诗生成研究;何晶等;《中文信息学报》;20100315(第02期);全文 *
基于递归神经网络的散文诗自动生成方法;姜力等;《计算机系统应用》;20180815(第08期);全文 *

Also Published As

Publication number Publication date
CN109582952A (zh) 2019-04-05

Similar Documents

Publication Publication Date Title
CN109582952B (zh) 诗歌生成方法、装置、计算机设备和介质
CN109840287A (zh) 一种基于神经网络的跨模态信息检索方法和装置
CN110428820B (zh) 一种中英文混合语音识别方法及装置
CN113239700A (zh) 改进bert的文本语义匹配设备、系统、方法及存储介质
CN110852086A (zh) 基于人工智能的古诗词生成方法、装置、设备及存储介质
CN111161740A (zh) 意图识别模型训练方法、意图识别方法以及相关装置
CN112528637B (zh) 文本处理模型训练方法、装置、计算机设备和存储介质
CN112712813B (zh) 语音处理方法、装置、设备及存储介质
CN110475129A (zh) 视频处理方法、介质及服务器
CN112883193A (zh) 一种文本分类模型的训练方法、装置、设备以及可读介质
CN112380319A (zh) 一种模型训练的方法及相关装置
CN108363685B (zh) 基于递归变分自编码模型的自媒体数据文本表示方法
CN116560513B (zh) 基于情绪识别的ai数字人交互方法、装置及系统
CN110852066B (zh) 一种基于对抗训练机制的多语言实体关系抽取方法及系统
CN114550703A (zh) 语音识别系统的训练方法和装置、语音识别方法和装置
CN116628186B (zh) 文本摘要生成方法及系统
CN113705315A (zh) 视频处理方法、装置、设备及存储介质
CN115759119A (zh) 一种金融文本情感分析方法、系统、介质和设备
CN115730590A (zh) 意图识别方法以及相关设备
CN113688955B (zh) 文本识别方法、装置、设备及介质
CN111241843B (zh) 基于复合神经网络的语义关系推断系统和方法
CN117932066A (zh) 一种基于预训练的“提取-生成”式答案生成模型及方法
CN117494815A (zh) 面向档案的可信大语言模型训练、推理方法和装置
CN110633468B (zh) 一种关于对象特征提取的信息处理方法及装置
CN116932686A (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