首页> 中国专利> 基于情感的诗句生成方法及装置、电子设备和存储介质

基于情感的诗句生成方法及装置、电子设备和存储介质

摘要

本公开是关于一种基于情感的诗句生成方法及装置、电子设备以及计算机可读存储介质,涉及人工智能技术领域,可以应用于生成情感可控的目标诗句的场景。该方法包括:获取待标注诗句数据集,并获取预先构建的诗句情感分类模型;将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签,并根据各诗句以及各诗句的情感标签生成情感标注诗句集;采用情感标注诗句集对初始诗句生成模型进行训练,以生成情感诗句生成模型;获取目标情感,将目标情感输入至情感诗句生成模型,以生成与目标情感对应的目标诗句。本公开可以根据预先确定的情感信息,基于情感信息生成目标诗句。

著录项

  • 公开/公告号CN112199502A

    专利类型发明专利

  • 公开/公告日2021-01-08

    原文格式PDF

  • 申请/专利权人 网易(杭州)网络有限公司;

    申请/专利号CN202011155029.9

  • 发明设计人 欧文杰;林悦;

    申请日2020-10-26

  • 分类号G06F16/35(20190101);G06F16/33(20190101);G06F40/30(20200101);

  • 代理机构11438 北京律智知识产权代理有限公司;

  • 代理人王辉;阚梓瑄

  • 地址 310052 浙江省杭州市滨江区网商路599号网易大厦

  • 入库时间 2023-06-19 09:30:39

说明书

技术领域

本公开涉及人工智能技术领域,具体而言,涉及一种基于情感的诗句生成方法、基于情感的诗句生成装置、电子设备以及计算机可读存储介质。

背景技术

中国古诗是传统中国文化的瑰宝,古诗的优美精简的句子,整洁对仗的句式让人们赏心悦目。近几年来,随着人工智能与自然语言处理相关技术研究的不断深入,越来越多的深度学习技术不断地被实践和落地。人们开始将人工智能技术运用在诗歌生成中,例如,在一些游戏场景中,可以根据资料片、某些主题等为用户个性化地生成对应的古诗,提升玩家的新鲜感和互动感;而在一些市场营销的场景里,根据用户需求自定义地生成古诗,有利于用户自发地推广,使得营销推广的成本降低的同时,大大提高了推广地效率。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

本公开的目的在于提供一种基于情感的诗句生成方法、基于情感的诗句生成装置、电子设备以及计算机可读存储介质,进而至少在一定程度上克服目前在生成前后诗句的过程中,无法以情感为变量控制所生成诗句的情感相关性的问题。

本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。

根据本公开的第一方面,提供一种基于情感的诗句生成方法,包括:获取待标注诗句数据集,并获取预先构建的诗句情感分类模型;将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签,并根据各诗句以及各诗句的情感标签生成情感标注诗句集;采用情感标注诗句集对初始诗句生成模型进行训练,以生成情感诗句生成模型;获取目标情感,将目标情感输入至情感诗句生成模型,以生成与目标情感对应的目标诗句。

可选的,在获取预先构建的诗句情感分类模型之前,上述方法还包括:获取初始诗句数据集,并获取初始分类模型;将初始诗句数据集输入至初始分类模型,获取由初始分类模型输出的诗句情感向量,并确定诗句情感向量中各情感标签的概率分布;根据各情感标签和各情感标签的概率分布确定损失函数;根据损失函数优化初始情感分类模型,以得到诗句情感分类模型。

可选的,将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签,包括:从待标注诗句数据集获取一待标注诗句;将待标注诗句输入至诗句情感分类模型的编码器,由编码器输出与待标注诗句对应的隐状态向量;将隐状态向量输入至全连接层,由全连接层输出与待标注诗句对应的目标情感向量;根据目标情感向量确定待标注诗句的情感标签。

可选的,将目标情感输入至情感诗句生成模型,以生成与目标情感对应的目标诗句,包括:由情感诗句生成模型执行下述步骤,直至生成目标诗句:确定当前时刻,并确定当前时刻的输入向量;其中,输入向量包括目标情感;获取已生成的历史信息向量,并根据当前时刻的输入向量和历史信息向量生成当前信息向量;根据当前信息向量确定候选生成字的概率分布,以根据概率分布确定目标生成字。

可选的,确定当前时刻的输入向量,包括:确定与当前时刻对应的上文诗句以及上文诗句的上文语义信息;获取历史生成的历史最新生成字,并确定由注意力模型生成的上下文关联信息;将历史最新生成字、历史信息向量、上文语义信息、上下文关联信息和目标情感作为当前时刻的输入向量。

可选的,上下文关联信息包括上文诗句中每个字的加权平均值,确定由注意力模型生成的上下文关联信息,包括:根据历史信息向量与上文语义信息确定上文诗句中每个字的字权重;根据各字权重确定上文诗句中每个字的加权平均值。

可选的,根据概率分布确定目标生成字,包括:获取预先配置的字数阈值;其中,字数阈值用于确定目标候选字的候选数量;根据概率分布对所有初始候选字进行排序,并根据字数阈值确定候选数量个目标候选字;获取预先配置的累计概率阈值,根据累计概率阈值从目标候选字确定目标生成字。

根据本公开的第二方面,提供一种基于情感的诗句生成装置,包括:获取模块,用于获取待标注诗句数据集,并获取预先构建的诗句情感分类模型;标注诗句集生成模块,用于将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签,并根据各诗句以及各诗句的情感标签生成情感标注诗句集;诗句模型生成模块,用于采用情感标注诗句集对初始诗句生成模型进行训练,以生成情感诗句生成模型;诗句生成模块,用于获取目标情感,将目标情感输入至情感诗句生成模型,以生成与目标情感对应的目标诗句。

可选的,基于情感的诗句生成装置还包括模型生成模块,用于获取初始诗句数据集,并获取初始分类模型;将初始诗句数据集输入至初始分类模型,获取由初始分类模型输出的诗句情感向量,并确定诗句情感向量中各情感标签的概率分布;根据各情感标签和各情感标签的概率分布确定损失函数;根据损失函数优化初始情感分类模型,以得到诗句情感分类模型。

可选的,标注诗句集生成模块包括情感标签确定单元,用于从待标注诗句数据集获取一待标注诗句;将待标注诗句输入至诗句情感分类模型的编码器,由编码器输出与待标注诗句对应的隐状态向量;将隐状态向量输入至全连接层,由全连接层输出与待标注诗句对应的目标情感向量;根据目标情感向量确定待标注诗句的情感标签。

可选的,诗句生成模块包括生成字生成子模块,用于由情感诗句生成模型执行下述步骤,直至生成目标诗句:确定当前时刻,并确定当前时刻的输入向量;其中,输入向量包括目标情感;获取已生成的历史信息向量,并根据当前时刻的输入向量和历史信息向量生成当前信息向量;根据当前信息向量确定候选生成字的概率分布,以根据概率分布确定目标生成字。

可选的,生成字生成子模块包括输入向量确定单元,用于确定与当前时刻对应的上文诗句以及上文诗句的上文语义信息;获取历史生成的历史最新生成字,并确定由注意力模型生成的上下文关联信息;将历史最新生成字、历史信息向量、上文语义信息、上下文关联信息和目标情感作为当前时刻的输入向量。

可选的,输入向量确定单元包括平均值确定子单元,用于根据历史信息向量与上文语义信息确定上文诗句中每个字的字权重;根据各字权重确定上文诗句中每个字的加权平均值。

可选的,生成字生成子模块包括生成字生成单元,用于获取预先配置的字数阈值;其中,字数阈值用于确定目标候选字的候选数量;根据概率分布对所有初始候选字进行排序,并根据字数阈值确定候选数量个目标候选字;获取预先配置的累计概率阈值,根据累计概率阈值从目标候选字确定目标生成字。

根据本公开的第三方面,提供一种电子设备,包括:处理器;以及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现根据上述任意一项所述的基于情感的诗句生成方法。

根据本公开的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据上述任意一项所述的基于情感的诗句生成方法。

本公开提供的技术方案可以包括以下有益效果:

本公开的示例性实施例中的基于情感的诗句生成方法,获取初始诗句数据集,根据初始诗句数据集对初始分类模型进行训练,以得到诗句情感分类模型;获取待标注诗句数据集,将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签,并根据各诗句以及各诗句的情感标签生成情感标注诗句集;采用情感标注诗句集对初始诗句生成模型进行训练,以生成情感诗句生成模型;获取目标情感,将目标情感输入至情感诗句生成模型,以生成与目标情感对应的目标诗句。通过本公开的基于情感的诗句生成方法,一方面,采用初始诗句数据集可以训练得到诗句情感分类模型,通过诗句情感分类模型对待标注诗句数据集进行标注,可以得到带有情感标签的情感标注诗句集。另一方面,采用带有情感标签的情感标注诗句集生成情感诗句生成模型,使得所生成的模型的可解释性和可干预性更高。又一方面,将目标情感作为诗句生成一个影响因素,可以生成符合目标情感的目标诗句,生成的目标诗句具有情感可控性,从而提高用户的互动性。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1示意性示出了根据本公开的示例性实施方式的基于情感的诗句生成方法的流程图;

图2示意性示出了根据本公开的示例性实施方式的训练诗句情感分类模型和情感诗句生成模型的流程图;

图3示意性示出了根据本公开的示例性实施方式的通过诗句情感分类模型得到诗句的情感标签的模型结构图;

图4示意性示出了根据本公开的示例性实施方式的采用情感诗句生成模型生成目标诗句的模型结构图;

图5示意性示出了根据本公开的示例性实施方式的基于情感的诗句生成装置的方框图;

图6示意性示出了根据本公开一示例性实施例的电子设备的框图;

图7示意性示出了根据本公开一示例性实施例的计算机可读存储介质的示意图。

具体实施方式

现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。

此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现、材料或者操作以避免模糊本公开的各方面。

附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个软件硬化的模块中实现这些功能实体或功能实体的一部分,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

近年来,人们开始将人工智能技术运用在诗歌生成过程中,例如,在一些游戏场景中,可以采用自然语言处理(Natural Language Processing,NLP)技术,并根据资料片、某些主题等为用户个性化地生成对应的古诗,提升玩家的新鲜感和互动感;而在一些市场营销的场景里,根据用户需求自定义地生成古诗,有利于用户自发地推广,使得营销推广的成本降低的同时,大大提高了推广地效率。

现有的一些可控的文本生成技术,是通过变分自编码器(variationalautoencoder,VAE)建模隐式地建模情感信息,从而可以在生成的时候实现情感可控。然而这种方法尚未应用在古诗生成领域,具体原因在于:尚未存在每一句诗句都带有情感标签的完整古诗数据集;同时,隐式地建模容易过度依赖情感信息的分类目标,从而带来情感信息建模的不准确。

在古诗生成的技术领域,一般是通过序列到序列(Seq2Seq)模型来建模,Seq2Seq模型生成的诗句比较通顺,但是这种模型往往无法生成包含情感信息的诗句。目前信息可控的古诗生成领域,有基于主题的古诗生成模型,但是尚且没有基于情感可控的古诗生成模型。

基于此,在本示例实施例中,首先提供了一种基于情感的诗句生成方法,可以利用服务器来实现本公开的用基于情感的诗句生成方法,也可以利用终端设备来实现本公开所述的方法,其中,本公开中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、可穿戴设备、智能手环等移动终端,以及诸如台式计算机等固定终端。图1示意性示出了根据本公开的一些实施例的基于情感的诗句生成方法流程的示意图。参考图1,该基于情感的诗句生成方法可以包括以下步骤:

步骤S110,获取待标注诗句数据集,并获取预先构建的诗句情感分类模型。

步骤S120,将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签,并根据各诗句以及各诗句的情感标签生成情感标注诗句集。

步骤S130,采用情感标注诗句集对初始诗句生成模型进行训练,以生成情感诗句生成模型。

步骤S140,获取目标情感,将目标情感输入至情感诗句生成模型,以生成与目标情感对应的目标诗句。

根据本示例实施例中的基于情感的诗句生成方法,一方面,采用初始诗句数据集可以训练得到诗句情感分类模型,通过诗句情感分类模型对待标注诗句数据集进行标注,可以得到带有情感标签的情感标注诗句集。另一方面,采用带有情感标签的情感标注诗句集生成情感诗句生成模型,使得所生成的模型的可解释性和可干预性更高。又一方面,将目标情感作为诗句生成一个影响因素,可以生成符合目标情感的目标诗句,生成的目标诗句具有情感可控性,从而提高用户的互动性。

下面,将对本示例实施例中的基于情感的诗句生成方法进行进一步的说明。

在步骤S110中,获取待标注诗句数据集,并获取预先构建的诗句情感分类模型。

在本公开的一些示例性实施方式中,待标注诗句数据集可以是没有情感标注的诗句组成的数据集。诗句情感分类模型可以是接收输入的诗句并输出对应的情感标签的分类模型。

由于目前并未存在大规模的带有情感标注的诗句数据集,可以先获取待标注诗句数据集,并获取预先构建的诗句情感分类模型,以采用预先构建的诗句情感分类模型对待标注诗句数据集中的各个诗句标注对应的情感标签。

根据本公开的一些示例性实施例,获取初始诗句数据集,并获取初始分类模型;将初始诗句数据集输入至初始分类模型,获取由初始分类模型输出的诗句情感向量,并确定诗句情感向量中各情感标签的概率分布;根据各情感标签和各情感标签的概率分布确定损失函数;根据损失函数优化初始情感分类模型,以得到诗句情感分类模型。

初始诗句数据集可以是一定数量(数量较少)的带有情感标签的诗句组成的数据集,初始诗句数据集中的诗句带有对应的情感标签。初始分类模型可以是预先构建的分类模型,通过初始诗句数据集对初始分类模型进行训练,可以得到诗句情感分类模型。诗句情感向量可以是将初始诗句数据集输入至初始分类模型,由初始分类模型输出的与初始诗句数据集中各诗句对应的情感标签的得分组成的向量。情感标签可以是用于表示诗句情感程度的标签,即初始诗句数据集中各诗句所有可能的情感值,举例而言,情感标签可以包括表示情感程度的5种情感类别,其中,1表示非常消极、2表示一般消极、3表示中性情感、4表示一般积极、5表示非常积极。概率分布可以是目标情感向量中各情感标签的概率值的分布情况。损失函数将情感标签的概率取值映射为非负实数以表示某一诗句对应的情感标签的损失函数。

获取初始诗句数据集,即小规模数量的带有情感标注的诗句情感数据集;并获取初始分类模型,将初始诗句数据集输入至初始分类模型进行训练,可以得到诗句情感分类模型。具体过程如下:将初始诗句数据集输入至初始分类模型,获取由初始分类模型输出初始诗句数据集中各诗句分别对应的目标情感向量;确定目标情感向量中各情感标签的概率分布,例如,目标情感向量可以是s=(s1,s2,s3,s4,s5),表示该诗句对应的不同情感的得分,通过归一化指数函数(softmax函数)进行计算处理,可以得到不同情感的概率分布p=(p1,p2,p3,p4,p5)。在得到情感标签的概率分布后,可以根据各情感标签和各情感标签的概率分布确定损失函数,例如,损失函数可以是交叉熵损失分数(Cross-Entropy Loss,CELoss)。根据损失函数可以对初始分类模型进行优化,以得到诗句情感分类模型;例如,可以采用梯度下降的方法对初始分类模型进行优化。

本领域技术人员容易理解的是,可以根据具体需求确定对应的损失函数和模型优化方法,本公开对此不作任何特殊限定。

举例而言,对初始分类模型进行训练,得到诗句情感分类模型的过程如下:获取初始诗句数据集,初始诗句数据集中包括20000句带有情感标签的诗句。根据初始诗句数据集可以构造输入为输入为单句诗句,输出为情感标签的训练数据,初始诗句数据集中包含了17356句七言诗句和2644句五言诗句,按照9:1的比例划分训练集和验证集。采用训练集对初始分类模型进行训练,并通过验证集验证训练后的初始分类模型的输出结果,以对模型进行优化得到诗句情感分类模型。

在步骤S120中,将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签,并根据各诗句以及各诗句的情感标签生成情感标注诗句集。

在本公开的一些示例性实施方式中,待标注诗句数据集中各诗句可以是待标注诗句数据集中包含的所有诗句。各诗句的情感标签可以是与各诗句分别对应的情感标签。情感标注诗句集可以是各诗句以及与其对应的情感标签组成的数据集。

由于目前存在的故事数据集通常包括小规模的带情感标注的情感标注数据和大规模的无标注古诗数据集。对大规模的古诗数据集进行人工标注情感存在以下的难点:(1)人力成本高。通过人工对诗句标注情感标签通常需要耗费大量的时间和资源。(2)标注的准确性低。对于主观型情感标注,通常没有明确的界限,而且诗句本身就晦涩难懂,人工难以达到可用的标注准确性。因此,本公开中采用小规模的诗句情感标注数据集(即初始数据集)训练得到一个基于神经网络的诗句情感分类模型,从而通过诗句情感分类模型对大规模的古诗数据集进行机器标注,通过置信度阈值的方法判断去掉判断模糊的部分数据。低成本且高准确性地构造了一个大规模的带情感标注的古诗数据集。

在获取到待标注诗句数据集后,可以将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签。另外,为了生成有效的情感标注诗句,本公开可以设定一个概率阈值,对于诗句情感分类模型预测情感的概率高于概率阈值的诗句进行保留,其余的诗句则可以认为难以判断对应的情感标签且由于引入噪声从而去掉。通过标注和清洗后,将经过清洗后得到的所有诗句以及各诗句的情感标签组成情感标注诗句集。

参考图2,图2示意性示出了根据本公开的示例性实施方式的训练诗句情感分类模型和情感诗句生成模型的流程图。将待标注诗句数据集输入至初始分类模型中,可以得到诗句情感分类模型,并由诗句情感分类模型确定待标注诗句对应的情感标签。

根据本公开的一些示例性实施例,从待标注诗句数据集获取一待标注诗句;将待标注诗句输入至诗句情感分类模型的编码器,由编码器输出与待标注诗句对应的隐状态向量;将隐状态向量输入至全连接层,由全连接层输出与待标注诗句对应的目标情感向量;根据目标情感向量确定待标注诗句的情感标签。待标注诗句可以是从待标注诗句数据集获取的一个未标注情感标签的诗句。编码器可以是将待标注诗句进行编码处理的编码网络。隐状态向量可以是由编码器对待标注诗句进行编码处理后生成的一组固定维度的向量。目标情感向量可以是与待标注诗句对应的情感向量。

从待标注诗句数据集中获取一待标注诗句,并将待标注诗句输入至诗句情感分类模型,由诗句情感分类模型输出该待标注诗句对应的情感标签。确定待标注诗句的情感标签的具体过程可以参考图3,图3示意性示出了根据本公开的示例性实施方式的通过诗句情感分类模型得到诗句的情感标签的模型结构图。本公开可以采用一个双向长短时记忆(bi-directional long short-term memory,BiLSTM)网络来作为编码器,将句子长度为T的诗句转换成一组固定维度隐状态向量h=(h

在步骤S130中,采用情感标注诗句集对初始诗句生成模型进行训练,以生成情感诗句生成模型。

在本公开的一些示例性实施方式中,初始诗句生成模型可以是未采用情感标注诗句集进行训练的诗句生成模型。情感诗句生成模型可以是可以基于情感标签生成对应的目标诗句的诗句生成模型。

在得到情感标注诗句集后,可以采用情感标注诗句集对初始诗句生成模型进行训练,生成情感诗句生成模型,情感诗句生成模型可以根据输入的情感标签生成对应的诗句。参考图2,采用情感标注诗句集可以对初始诗句生成模型进行训练,并生成情感诗句生成模型。

在步骤S140中,获取目标情感,将目标情感输入至情感诗句生成模型,以生成与目标情感对应的目标诗句。

在本公开的一些示例性实施方式中,目标情感可以是待生成诗句所对应的情感值,例如,目标情感可以是“积极”、“消极”等。情感诗句生成模型可以是根据目标情感生成对应诗句的诗句生成模型,情感诗句生成模型的输入可以包括目标情感,输出可以是情感基调为目标情感的诗句。目标诗句可以是由情感诗句生成模型基于目标情感生成的诗句。

当获取到目标情感后,可以将目标情感输入至情感诗句生成模型中,另外,还可以将对应的古诗主题作为情感诗句生成模型的输入,由情感诗句生成模型根据目标情感和古诗主题生成目标诗句。

根据本公开的一些示例性实施例,由情感诗句生成模型执行下述步骤,直至生成目标诗句:确定当前时刻,并确定当前时刻的输入向量;其中,输入向量包括目标情感;获取已生成的历史信息向量,并根据当前时刻的输入向量和历史信息向量生成当前信息向量;根据当前信息向量确定候选生成字的概率分布,以根据概率分布确定目标生成字。当前时刻可以是在生成目标诗句的过程中当前状态对应的时刻。输入向量可以是确定出的在当前时刻输入至情感诗句生成模型的解码器中的向量。历史信息向量可以是由情感诗句生成模型中记忆单元确定出相对于当前时刻的信息向量。当前信息向量可以是由当前时刻的输入向量和历史信息向量组成的信息向量。候选生成字可以是待生成的下一个输出字的候选字。目标生成字可以是情感诗句生成模型根据当前时刻的所有信息所生成的字。

在利用情感诗句生成模型生成目标诗句时,是逐字生成目标生成字,最终生成目标诗句。具体过程如下:确定当前时刻t,获取当前时刻的输入向量。参考图4,图4示意性示出了根据本公开的示例性实施方式的采用情感诗句生成模型生成目标诗句的模型结构图。情感诗句生成模型可以包括四个部分:编码器(encoder)410、解码器(decoder)420、注意力头(attention head)430、情感头(sentiment head)440。情感诗句生成模型中的解码器420由第一全连接层421、记忆单元422以及第二全连接层423构成;其中,第一全连接层421可以是一个负责汇总输入信息全连接层+非线性激活层(Full Connection Network,FC1),记忆单元422可以是一个负责信息记忆的LSTM单元,第二全连接层423可以是一个负责输出下一个字概率的全连接层网络FC2。

对于当前时刻t,可以通过FC1汇总得到当前时刻t的输入向量x

由于情感诗句生成模型将目标情感这一个变量作为生成目标诗句的一部分输入,使其生成的目标诗句跟目标情感密切相关的同时,也可以通过人工控制不同的情感输入,以生成不同情感对应的诗句。另外,本方法在生成完整古诗的时候,将首先判断古诗标题的情感,根据标题的情感约束诗句的情感进行对应,可以避免出现输入是消极的标题,生成积极的目标诗句的情况,因此,有效避免了以往古诗生成模型中的情感不连贯的问题。

根据本公开的一些示例性实施例,确定与当前时刻对应的上文诗句以及上文诗句的上文语义信息;获取历史生成的历史最新生成字,并确定由注意力模型生成的上下文关联信息;将历史最新生成字、历史信息向量、上文语义信息、上下文关联信息和目标情感作为当前时刻的输入向量。上文诗句可以是在当前时刻已经生成的诗句,例如,在生成首句诗句时,上文诗句可以是待生成古诗的题目;在生成首句诗句后,上文诗句可以是古诗题目和以生成的诗句。上文语义信息可以是上文诗句对应的语义信息,可以用context表示上文语义信息,简写为ctx。历史最新生成字可以是所有已经生成的字中,生成时间距离当前时刻最近的生成字,即上一时刻的生成字。上下文关联信息可以由情感诗句生成模型中的注意力头对上文诗句进行注意力计算得到的信息。

参考图4,情感诗句生成模型中的编码器可以采用使用了BiLSTM来对上文诗句序列进行内容编码,得到上文的内容隐向量ctx,以表示上文诗句的语义信息。情感头可以将五种不同的情感标签分别映射到五个同样维度的嵌入向量(embedding),分别表示五种不同情感的信息,这些嵌入向量在模型训练过程中不断学习优化。解码器用于逐字生成目标诗句,对于生成诗句的当前时刻,首先,可以获取解码器的输入信息,包括上一时刻的生成字y

根据本公开的一些示例性实施例,根据历史信息向量与上文语义信息确定上文诗句中每个字的字权重;根据各字权重确定上文诗句中每个字的加权平均值。字权重可以是以生成的诗句中所有生成字的权重,加权平均值可以是对根据字权重确定的每个字的加权平均值。

情感诗句生成模型中的注意力头可以通过接收解码器中历史信息向量h

其中,e

由注意力头输出历史信息中的每个单词隐向量表示的加权平均值,即

根据本公开的一些示例性实施例,获取预先配置的字数阈值;其中,字数阈值用于确定目标候选字的候选数量;根据概率分布对所有初始候选字进行排序,并根据字数阈值确定候选数量个目标候选字;获取预先配置的累计概率阈值,根据累计概率阈值从目标候选字确定目标生成字。字数阈值可以是预先配置的用于确定目标候选字的候选数量所采用的阈值。候选数量可以是确定出的目标候选字的数量。初始候选字可以是当前时刻所生成的字所对应的候选字。目标候选字可以是概率分布中概率值最高的候选数量个候选字。累积概率阈值可以是概率值最高的目标候选字的累积概率值。

在模型预测生成诗句的阶段的每一个时刻,都可以采用概率采样的方式来生成目标生成字(即当前时刻的字),串行地生成每一句诗。例如,可以采用剪枝策略运用在生成目标生成字的概率采样方案中,具体的,可以设定两个阈值对每一时刻生成的字概率进行剪枝:(1)字数阈值,用于确定目标候选字的候选数量,即可以从初始候选字中选取概率分布中概率值最高的初始候选字作为目标候选字进行采样,这样可以限制选取到的目标候选字是相关的,例如,可以将字数阈值设置为5、6、8等。(2)累积概率阈值,例如本方案设为0.95,可以表示目标候选字的概率分布大小进行排序后,取前面概率高的字且累积概率不超过0.95的字作为目标候选字,通过累计概率阈值可以约束某一些模型确切的输出。

由上述两个阈值共同约束下得到目标候选字,通过随机采样的方式去生成诗句中当前时刻最终的字,即目标生成字。由于目标生成字是通过随机采样的方式生成的,所以可以确保每一次生成的诗句都是独一无二的。

综上所述,获取初始诗句数据集,根据初始诗句数据集对初始分类模型进行训练,以得到诗句情感分类模型;获取待标注诗句数据集,将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签,并根据各诗句以及各诗句的情感标签生成情感标注诗句集;采用情感标注诗句集对初始诗句生成模型进行训练,以生成情感诗句生成模型;获取目标情感,将目标情感输入至情感诗句生成模型,以生成与目标情感对应的目标诗句。通过本公开的基于情感的诗句生成方法,一方面,采用初始诗句数据集可以训练得到诗句情感分类模型,通过诗句情感分类模型对待标注诗句数据集进行标注,可以得到带有情感标签的情感标注诗句集。另一方面,采用带有情感标签的情感标注诗句集生成情感诗句生成模型,使得所生成的模型的可解释性和可干预性更高。又一方面,将目标情感作为诗句生成一个影响因素,可以生成符合目标情感的目标诗句,生成的目标诗句具有情感可控性,从而提高用户的互动性。再一方面,通过概率采样的方案生成连贯的目标诗句,使得在根据自定义的目标情感生成目标诗句的同时,所生成的诗句均是独一无二的。

需要说明的是,尽管在附图中以特定顺序描述了本发明中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。

此外,在本示例实施例中,还提供了一种基于情感的诗句生成装置。参考图5,该基于情感的诗句生成装置500可以包括:获取模块510、标注诗句集生成模块520、诗句模型生成模块530以及诗句生成模块540。

具体的,获取模块510用于获取待标注诗句数据集,并获取预先构建的诗句情感分类模型;标注诗句集生成模块520用于将待标注诗句数据集输入至诗句情感分类模型,得到待标注诗句数据集中各诗句的情感标签,并根据各诗句以及各诗句的情感标签生成情感标注诗句集;诗句模型生成模块530用于采用情感标注诗句集对初始诗句生成模型进行训练,以生成情感诗句生成模型;诗句生成模块540用于获取目标情感,将目标情感输入至情感诗句生成模型,以生成与目标情感对应的目标诗句。

基于情感的诗句生成装置500可以将待标注诗句数据集输入至诗句情感分类模型中,得到待标注诗句数据集中各诗句的情感标签,并基于各诗句和情感标签生成情感标注诗句集,根据情感标注诗句集对初始诗句生成模型进行模型训练,可以生成情感可控的目标诗句。

在本公开的一种示例性实施方案中,基于情感的诗句生成装置还包括模型生成模块,用于获取初始诗句数据集,并获取初始分类模型;将初始诗句数据集输入至初始分类模型,获取由初始分类模型输出的诗句情感向量,并确定诗句情感向量中各情感标签的概率分布;根据各情感标签和各情感标签的概率分布确定损失函数;根据损失函数优化初始情感分类模型,以得到诗句情感分类模型。

在本公开的一种示例性实施方案中,标注诗句集生成模块包括情感标签确定单元,用于从待标注诗句数据集获取一待标注诗句;将待标注诗句输入至诗句情感分类模型的编码器,由编码器输出与待标注诗句对应的隐状态向量;将隐状态向量输入至全连接层,由全连接层输出与待标注诗句对应的目标情感向量;根据目标情感向量确定待标注诗句的情感标签。

在本公开的一种示例性实施方案中,诗句生成模块包括生成字生成子模块,用于由情感诗句生成模型执行下述步骤,直至生成目标诗句:确定当前时刻,并确定当前时刻的输入向量;其中,输入向量包括目标情感;获取已生成的历史信息向量,并根据当前时刻的输入向量和历史信息向量生成当前信息向量;根据当前信息向量确定候选生成字的概率分布,以根据概率分布确定目标生成字。

在本公开的一种示例性实施方案中,生成字生成子模块包括输入向量确定单元,用于确定与当前时刻对应的上文诗句以及上文诗句的上文语义信息;获取历史生成的历史最新生成字,并确定由注意力模型生成的上下文关联信息;将历史最新生成字、历史信息向量、上文语义信息、上下文关联信息和目标情感作为当前时刻的输入向量。

在本公开的一种示例性实施方案中,输入向量确定单元包括平均值确定子单元,用于根据历史信息向量与上文语义信息确定上文诗句中每个字的字权重;根据各字权重确定上文诗句中每个字的加权平均值。

在本公开的一种示例性实施方案中,生成字生成子模块包括生成字生成单元,用于获取预先配置的字数阈值;其中,字数阈值用于确定目标候选字的候选数量;根据概率分布对所有初始候选字进行排序,并根据字数阈值确定候选数量个目标候选字;获取预先配置的累计概率阈值,根据累计概率阈值从目标候选字确定目标生成字。

上述中各基于情感的诗句生成装置的虚拟模块的具体细节已经在对应的基于情感的诗句生成方法中进行了详细的描述,因此此处不再赘述。

应当注意,尽管在上文详细描述中提及了基于情感的诗句生成装置的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

此外,在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。

所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“系统”。

下面参考图6来描述根据本发明的这种实施例的电子设备600。图6显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图6所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:上述至少一个处理单元610、上述至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640。

其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。

存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)621和/或高速缓存存储单元622,还可以进一步包括只读存储单元(ROM)623。

存储单元620可以包括具有一组(至少一个)程序模块625的程序/实用工具624,这样的程序模块625包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

总线630可以表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。

电子设备600也可以与一个或多个外部设备670(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器660通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。

通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。

在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。

参考图7所示,描述了根据本发明的实施例的用于实现上述方法的程序产品700,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。

计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号