首页> 中国专利> 一种细粒度人物、动作及情感可控的故事生成方法

一种细粒度人物、动作及情感可控的故事生成方法

摘要

一种细粒度人物、动作及情感可控的故事生成方法。步骤1,将故事的上文以及人工指定的人物、动作及情感条件输入至故事生成模型中,通过所设计的针对细粒度控制的特殊提示符微调方法进行学习。步骤2,故事生成模型通过所设计的针对人物和动作控制的注意力拷贝机制对输入的条件信息进行复制,提升输入条件中人物和动作的可控性。步骤3,故事生成模型通过所设计的针对情感控制的人物级情感损失,使输出句子能够体现输入条件中不同人物的情感。步骤4,故事生成模型输出得到最终的输出句子,即生成的所述故事语句。步骤5,使用迭代,将生成的故事语句与故事上文拼接起来作为新的输入上文,重复迭代以上步骤,直到达到人工设定的理想故事长度。

著录项

  • 公开/公告号CN115617982A

    专利类型发明专利

  • 公开/公告日2023-01-17

    原文格式PDF

  • 申请/专利权人 同济大学;

    申请/专利号CN202211158010.9

  • 发明设计人 卫志华;王新鹏;蒋涵;

    申请日2022-09-22

  • 分类号G06F16/34(2019.01);G06F16/383(2019.01);

  • 代理机构上海科律专利代理事务所(特殊普通合伙) 31290;

  • 代理人叶凤

  • 地址 200092 上海市杨浦区四平路1239号

  • 入库时间 2023-06-19 18:21:03

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-02-10

    实质审查的生效 IPC(主分类):G06F16/34 专利申请号:2022111580109 申请日:20220922

    实质审查的生效

  • 2023-01-17

    公开

    发明专利申请公布

说明书

技术领域

本发明属于计算机人工智能领域,主要涉及自然语言处理中自然语言生成方面的应用,具体地说,涉及一种细粒度人物、动作及情感可控的故事生成方法。

背景技术

自然语言处理是备受人工智能领域广泛关注的研究方向,旨在让机器能够理解并创造出类人的自然语言。其中,自然语言生成致力于打造机器的创造性,主要包括机器翻译,对话系统,自动摘要生成等方面的应用。

故事生成是自然语言生成任务当中一个重要分支,相较于机器翻译和自动摘要生成来说更加需要模型的创造性,它也可以作为验证人工智能水平的一个高难度测试。故事生成任务通常是以故事的开头作为输入,生成接下来的故事作为输出。由于只受到故事开头信息的引导,后续生成的内容往往无法妥善受控,存在缺乏逻辑或应用价值等问题。该任务对于人类来说需要较高的逻辑思维能力以及语言组织能力,因此对于机器会更加困难。通常来说,故事生成面临以下挑战:上下文连贯性、主题一致性、内容多样性、可控性等。

大多数传统的故事生成方法关注于解决故事生成的连贯性,例如通过引入关键词、故事大纲、常识知识等外部信息来增加输入内容,从而提升故事的连贯性。然而这些工作在可控性方面较为欠缺。另外还有一些方法被提出可以控制故事整体的情感、风格以及主题等,但是这些方法只能进行粗粒度的控制,无法控制故事生成的细节。因此,当下亟待发明一种细粒度可控的故事生成方法能够进行多方面控制以满足人们的使用需求。

发明内容

本发明的目的在于克服现有技术的不足,公开一种细粒度人物、动作及情感可控的故事生成方法,其特征在于,搭建FCG故事生成模型,用于生成故事。

为了满足细粒度可控故事生成的需要,本发明提出一种细粒度人物、动作及情感可控的故事生成方法,所设计模型称做FCG(Fine-Grained Controllable StoryGeneration),可以根据自定义的故事人物、人物的动作以及人物的情感来生成内容更加丰富可控的故事。人物是故事的核心,人物的行为动作驱动着故事的发展,人物的情感使得故事更加生动有趣。因此,FCG模型可以将故事的人物、动作及情感作为输入的可控条件来指导更加细粒度的故事生成。

FCG模型主要基于自然语言生成模型中流行的BART预训练模型作为故事生成主体框架,该框架是一种基于Transformer搭建的Encoder-Decoder架构的模型,可以生成较高质量的文本内容。为了能够让模型方便接收人类自然语言形式的控制方式以及人物、动作和情感不同方面的控制,设计了一种针对细粒度控制的特殊提示符,即通过多种不同的特殊提示字符可以将多种可控信息组织成能够输入到模型中的序列,经过模型微调训练后可以很好的识别不同的输入信息。此外针对不同方面的控制,设计了一种针对人物和动作控制的注意力拷贝机制,可以对输入信息进行复制,提供了对人物和动作的可控性;并且设计了一种针对情感控制的人物级情感损失,利用多任务学习的方法来让模型能够区分并生成出故事中不同人物的情感。

FCG模型相比于现有的故事生成方法,首次考虑将故事的人物、动作以及情感作为输入条件,并且可以生成内容更加丰富、可控粒度更细且更加实用的故事。

有益效果

本发明针对故事生成任务中可控性方面这一挑战,设计了一种可以人工指定条件的细粒度人物、动作及情感可控的故事生成方法。通过设计一种针对细粒度控制的特殊提示符,可以同时控制人物、动作及情感多种条件的控制;通过设计一种针对人物和动作控制的注意力拷贝机制,可以对输入信息进行复制,从而提升人物和动作的控制效果。通过设计一种针对情感控制的人物级情感损失,并加入多个情感分类头,可以更好的识别输入当中不同人物的情感并生成具有相应准确情感的故事句子。通过使用迭代生成的方法,可以不断的生成后续故事句子,直到达到人工设定的理想故事长度。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1FCG故事生成模型整体框架图

图2FCG故事生成模型输入形式示意图

具体实施方式

一种细粒度人物、动作及情感可控的故事生成方法,其特征在于,搭建FCG故事生成模型,用于生成故事。

所述FCG故事生成模型的构造:

主体为BART预训练语言模型,包括BART编码器、BART解码器、情感分类头、情感标签、线性层、Softmax函数、门控软开关p

所述BART预训练语言模型通过针对细粒度控制的特殊提示符微调方法进行学习,达到多条件细粒度可控的目的;在BART解码器后接入k个情感分类头,通过情感标签对损失进行反向传播,来控制模型准确生成出具有多人物情感的故事句子;在FCG 故事生成模型输入单词时,最终输出的单词概率分布一部分来自BART解码器经过线性层及Softmax函数输出的概率分布,一部分来自BART编码器对输入条件Chae的注意力分布,并由一个门控软开关p

所述生成故事过程为:

步骤1,将所述故事的上文Context={x

步骤2,所述FCG模型通过针对人物和动作控制的注意力拷贝机制对输入的条件信息进行复制,提升输入条件中人物和动作的可控性;

步骤3,所述FCG模型通过针对情感控制的人物级情感损失,使输出句子能够体现输入条件中不同人物的情感;

步骤4,所述FCG模型输出得到最终的输出句子Y={y

步骤5,使用迭代生成的方法,将生成的所述故事语句与所述故事上文拼接到一起作为新的输入上文Context,并重复以上步骤不断迭代生成新的故事语句,直到达到人工设定的理想故事长度;

x

其中,所述步骤1中的所述人工指定的人物、动作及情感条件Chae表示一个对接下来要生成句子的细粒度控制的序列;所述Chae包括k个可由人工指定的条件,其中每个条件由一个故事人物名称Char

其中,所述针对细粒度控制的特殊提示符包括,,,,,,分别表示条件开始字符、人物名称开始字符、动作开始字符、情感开始字符、单个动作开始字符以及无动作字符。

其中,所述步骤2中的所述针对人物和动作控制的注意力拷贝机制包括如下步骤:

将预训练语言模型解码器中交叉注意力块h个头的平均注意力分布

其中,所述步骤3中的所述针对情感控制的人物级情感损失步骤如下:

将k个情感分类头添加到预训练语言模型解码器的输出层中,标签对应为输入条件 Chae中不同人物的情感,k等于输入条件Chae的数量。

以下将配合附图及实施例来详细说明本发明的实施方式,藉此对本发明如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。

本发明公开了一种细粒度人物、动作及情感可控的故事生成方法,所设计模型称做 FCG(Fine-Grained Controllable Story Generation),可以根据自定义的故事人物、人物的动作以及人物的情感来生成内容更加丰富可控的故事。图1为本发明FCG模型整体框架。

下面给出FCG模型的形式化定义。该模型输入包含两个部分。其中一个部分为故事的上文Context,表示为Context=(x

以下将分三个部分具体介绍FCG模型技术部分,其中第一部分为故事生成模型主体框架,第二部分为针对细粒度控制的特殊提示符微调,第三部分为针对人物和动作控制的注意力拷贝机制,第四部分为针对情感控制的人物级情感损失。

第一部分、FCG故事生成模型主体框架

在故事生成模型主体框架方面,正如上文所述,FCG模型依据自回归思想采用了一种迭代生成策略,一方面,迭代更新的输入条件Chae可以在细节方面更好的控制故事内容;另一方面,这种方式可以不断让模型看到已经生成的故事上文情况。然而这种迭代生成的方式会导致输入上文不断增加,给对上文编码带来一定挑战。

针对这一问题,FCG模型采用预训练模型BART来搭建。BART是一种基于Transformer的序列到序列预训练模型,它拥有类似BERT的双向编码器,以及一个类似GPT的自回归解码器,在自然语言生成任务方面具有很好的性能。在故事生成任务中,GPT-2也被广泛使用,它是一种由Transformer解码器搭建的自回归模型,可以很好的适用于故事生成这种根据开头来逐步生成下文的应用。然而根据FCG模型的特点,需要对较长上文编码进行编码,本发明选择BART来搭建FCG模型。主体框架BART 将接收两方面的输入,即输入上文Context以及输入条件Chae。首选将Context和Chae的词向量进行拼接成一个长序列,通过BART的双向编码器进行编码,得到编码后的中间隐层表示,然后通过BART自回顾解码器进行逐个单词的生成,从而得到接下来的句子。BART处理故事生成过程公式如下所示:

P

h

h

上述公式中e

根据BART搭建的故事生成主体框架,可以很好地理解长文本输入并生成接下来连贯的句子。

第二部分、针对细粒度控制的特殊提示符微调

本发明首次考虑将人物、动作及情感作为故事生成的输入条件,并且可以通过人工指定条件使模型可以生成具有所期待内容的故事。该任务存在两个挑战:1)如何处理人物、动作和情感输入条件使得可以输入到模型中进行生成;2)如何使模型能够识别输入的条件分别对应人物、动作和情感中的哪一个从而可以更好的控制生成内容。

针对以上挑战本发明设计了一种针对细粒度控制的特殊提示符,如图2本发明FCG模型输入形式示意图中虚线框所示。设计一些特殊提示符将人物、动作及情感拼接成为一个长序列,称为Chae输入条件,表示一个对接下来要生成句子的细粒度控制的条件序列。该序列包括k个细粒度可控条件子序列,其中每个条件子序列用来控制一个人物及其动作和情感。通过在人物、动作及情感之间添加这些特殊提示字符,可以使得控制条件如同文本序列一样进行处理并可被模型接收,此外将控制条件序列送入模型中并微调训练之后,模型可以很好地学习到这些特殊字符所表示的含义以及特殊字符后的条件与输出文本的对应关系,于是可以很好地指导模型生成带有相应人物、动作以及情感的故事句子。关于特殊提示字符的介绍详见下表。

其中每个人物的名称和情感是唯一的,人物的动作可以包含多个动作序列 Act

第三部分、针对人物、动作和情感的细粒度控制

为了进一步提高细粒度人物、动作以及情感条件的可控性,除了所设计的输入条件 Chae,针对不同条件设计了不同的针对性控制方法。

3.1针对人物和动作控制的注意力拷贝机制

拷贝机制最早出现于自动摘要生成系统,可以对输入文档进行局部信息的复制从而输出到摘要结果中,此外拷贝机制也可以通过复制来生成一些词表之外的词,一定程度上改善了OOV(Out of Vocabulary)问题。基于摘要系统中的拷贝机制,对于本发明任务中人物和动作的控制,考虑到由于它们被期待出现在生成的内容当中,于是设计了一种针对人物和动作控制的注意力拷贝机制,可以实现对期待输入内容的复制。FCG模型将BART解码器中交叉注意力块h个头的平均注意力分布

上述公式中

3.2针对情感控制的人物级情感损失

情感分类是一自然语言理解任务中常见的一类分类任务,情感分类模型可以识别出输入的句子是输入众多情感标签中的哪一个。多任务学习是一种可以使得模型学到多种特定任务的学习方法,对于本发明任务中人物情感控制,考虑将故事生成任务与情感分类任务结合,基于多任务学习的思想,设计一种针对情感控制的人物级情感损失,该损失可以帮助模型在生成故事句子的同时朝着情感标签的方向进行生成,从而达到情感可控的目的。其中存在的困难是在本发明任务中,输入条件包括多个人物及其对应的情感,每个人物的情感也不相同,为了精准控制每一个人的情感,于是将与输入可控条件子序列数量相同的k个情感分类头添加到BART解码器的输出层后,这样便可识别并使输出句子能够体现出输入条件中不同人物的情感,公式如下所示:

L

P

上述公式中W

第四部分、FCG故事生成模型目标函数

最终该任务的目标函数是负对数似然损失和人物级情感损失的加和,前者可以为模型提供句子连贯性方面的指导,后者可以使模型能够准确生成出包含不同人物所对应情感的句子。公式如下所示:

L=L

其中γ表示超参数,用来控制人物级情感损失的占总目标的权重。γ越大,生成的句子情感越丰富准确,但同时会对句子连贯性有一定影响;γ越小,生成的句子较为连贯,但情感表达不够准确。在本发明方法中γ默认设定为1,以保证生成句子连贯的同时又能有带有丰富准确的情感。

第五部分实验、结论

实验1

根据本发明FCG模型的特点,需要对较长上文编码进行编码,具有双向编码器的BART相较于自回归的GPT-2模型可以更好的处理较长输入,故最终选择BART来搭建FCG模型。为了验证这一想法,在故事生成实验中,也对BART和GPT-2进行了比较,发现将BART应用到FCG模型中在Perplexity、BLEU以及Distinct指标上明显优于GPT-2,实验结果如下表所示:

实验2

本发明通过与现有模型的故事生成结果进行实验对比,表明FCG模型可以根据人工指定的细粒度信息生成内容连贯且可控的故事。通过指定不同输入条件Chae的故事生成实验,结果表明FCG可以根据指定不同的条件生成相应的内容,反映了模型一定的可控性。结果如下:

本发明模型与现有模型生成故事结果对比表:

不同输入条件Chae下的故事生成示例:

第六部分应用

本发明设计了一个细粒度可控的故事生成模型FCG,可以根据指定的人物以及对应的动作和情感创造出具有更加细粒度条件内容的故事,更便于实际应用,比如可以应用到小说、剧本等体裁的创作中去,可以为作家、编剧等文学作品创作者提供灵感,在未来甚至可以完全承担创作任务。

上述说明展示并描述了本发明的若干优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

创新点小结

创新点一:针对细粒度控制的特殊提示符微调可控模型

传统的可控故事生成方法或是考虑指定故事的情感发展趋势,亦或是考虑指定故事的关键词或大纲来生成故事,但这些方法只能在一些较为粗粒度的方面进行故事生成控制。本发明首次考虑将人物、动作及情感作为故事生成的输入条件,并且可以通过人工指定条件使模型可以生成具有所期待内容的故事。为了能够让模型很好的识别人工指定的人物、动作及情感多种输入条件,本发明设计了一种针对细粒度控制的特殊提示符微调可控模型,采用BART预训练语言模型作为主体框架,通过分别在不同的条件前加入不同的特殊提示字符,并经过模型微调训练之后便可以很好的识别输入的条件信息,并实现对输出内容控制的作用。模型依据自回归的思想采用一种迭代生成的方式来生成故事,一方面,迭代更新的输入条件Chae可以在细节方面更好的控制故事内容;另一方面,该方式可以不断让模型看到已经生成的故事上文情况。

创新点二:针对人物、动作和情感的细粒度控制方法

为了进一步提高细粒度人物、动作以及情感条件的可控性,除了所设计的针对细粒度控制的特殊提示符微调方法,针对不同控制条件也设计了不同的针对性控制方法。对于人物和动作的控制,设计了一种针对人物和动作控制的注意力拷贝机制,可以实现对输入内容的复制,提高人物和动作的可控性。对于人物情感控制,基于多任务学习的思想,设计了一种针对情感控制的人物级情感损失,通过添加与输入人物信息数量相等的情感分类头,可以识别并使输出句子能够体现出输入条件中不同人物的情感。本发明的目的是创造一个每句话都能符合输入的人物、动作以及情感条件的故事,从而提高生成内容的质量以及满足人们可控的需求。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号