故事模型训练及生成方法、系统、机器人及存储设备
技术领域
本申请涉及,尤其涉及一种故事模型训练及生成方法、系统、机器人及存储设备。
背景技术
图1为计算机组成结构框图,其中示出了计算机的主要部件。图1中,处理器110、内部存储器105、总线桥120以及网络接口115接入系统总线140,总线桥120用于桥接系统总线140和I/O总线145,I/O接口接入I/O总线145,USB接口以及外部存储器与I/O接口连接。图1中,处理器110可以为一个或多个处理器,每个处理可以具有一个或者多个处理器内核;内部存储器105为易失性存储器,例如寄存器、缓存器、各种类型的随机存取存储器等;在计算机开机运行的时候,内部存储器105中的数据包括操作系统和应用程序;网络接口115可以为以太网接口、光纤接口等;系统总线140可以用来传送数据信息、地址信息、以及控制信息;总线桥120可以用来进行协议转换,将系统总线协议转换为I/O协议或者将I/O协议转换为系统总线协议以实现数据传输;I/O总线145用来数据信息和控制信息,还可以总线终结电阻或电路来降低信号反射干扰;I/O接口130主要与各种外部设备连接,例如键盘、鼠标、传感器等等,闪存可以通过USB接口接入I/O总线,外部存储器为非易失性存储器,例如硬盘、光盘等。在计算机开机之后,处理器可以将存储于外部存储其中的数据读取到内部存储器中,并对内部存储其中的计算机指令进行处理,完成操作系统以及应用程序的功能。该示例计算机可以为台式机、笔记本电脑、平板电脑、智能手机、绘本阅读机器人等。
绘本故事是与绘本图片对应的故事,目前需要人工预先设计,然后将绘本图片与故事描述对应起来,供绘本阅读机器人向用户展示。人工处理需要的工作量大,有必要通过设计新的方案自动生成故事描述。
目前标注算法是可以从一张图片中自动生成一段描述性文字的算法,其通过编码器-解码器(Encoder-Decoder)架构来实现,即首先利用卷积神经网络(CNN)提取图像特征,作为循环神经网络(RNN)的输入;然后利用循环神经网络解码得到描述性文字。在实现编码器-解码器模型时,收集一定数量的图像和文字描述对作为训练样本,根据训练样本,将图像作为输入、对应的文字描述作为输出,训练得到编码器-解码器模型。对于新的图片,将其作为模型输入,模型输出即为该图片对应的文字描述。图像标注算法主要用于对一张图片生成描述,而绘本是由一系列前后相互关联的图片组成,已有的图片标注算法难以直接用于对绘本生成故事描述。
发明内容
本申请实施例提供一种故事模型训练及生成方法、系统、机器人及存储设备,用以解决自动生成绘本故事的问题。
本申请提供了一种故事模型训练方法,包括:
利用第一编码器将训练集中的故事描述转换为向量表示,其中训练集包括绘本Ii及其对应的故事描述Oi,Ii={Ii1,Ii2,…,Iim},Oi={Oi1,Oi2,…,Oim};Iij为绘本Ii第j页的图片,Oij为绘本Ii第j页的故事描述,故事描述Oi转换为向量表示Vi={Vi1,Vi2,…,Vim},Vij为Oij对应的向量表示;1≤j≤m,m为绘本Ii的总页数,1≤i≤k,k为训练集中绘本的总数量;
根据Vi以及Oi训练第一解码器;
利用第二编码器提取Ii的特征Fi,Fi={Fi1,Fi2,…,Fim},Fij为绘本Ii第j页的图片的特征;
根据该Fi以及Vi训练第三编解码器;
根据第二编码器、第三编解码器、以及第一解码器组成故事模型。
可选地,所述第一编码器为句子向量编码器。
可选地,所述第一解码器为基于循环神经网络、长短期记忆网络或门控循环单元神经网络的解码器。
可选地,所述第二编码器为基于卷积神经网络的编码器。
可选地,第三编解码器包括第三编码器和第三解码器,其中第三编码器的输出作为第三解码器的输入;
所述第三编码器为基于循环神经网络、长短期记忆网络或门控循环单元神经网络的编码器,所述第三解码器为基于循环神经网络、长短期记忆网络或门控循环单元神经网络的解码器。
可选地,所述根据第二编码器、第三编解码器、以及第一解码器组成故事模型包括:
将所述第二编码器、第三编解码器、以及第一解码器依次连接组成故事模型。
本申请提供了一种故事生成方法,包括:
将新的绘本图片输入所述的方法得到的故事模型;
所述故事模型输出与所述新的绘本图片对应的故事描述。
本申请提供了一种故事模型训练系统,该系统包括存储设备和处理器;
所述存储设备,用于存储程序;
所述处理器,用于执行所述程序以实现故事模型训练方法或者故事生成方法。
本申请提供了一种绘本阅读机器人,该机器人包括所述的系统。
本身请提供了一种存储设备,其上存储有程序,所述程序用于被处理器执行时实现故事模型训练方法或者故事生成方法。
本申请可以根据绘本自动生成故事描述,提高了绘本故事制作的效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请提供的计算机组成结构框图;
图2为本申请提供的故事模型训练方法流程图;
图3为故事模型示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图2为本申请提供的故事模型训练方法流程图,具体包括:
步骤205,将训练集中绘本的故事描述转换为矢量表示。训练集是用来训练故事模型的样本,包括绘本图片以及绘本图片对应的故事描述。例如,训练集包括绘本Ii及其对应的故事描述Oi,Ii={Ii1,Ii2,…,Iim},Oi={Oi1,Oi2,…,Oim};Iij为绘本Ii第j页的图片,Oij为绘本Ii第j页的故事描述,故事描述Oi转换为向量表示Vi={Vi1,Vi2,…,Vim},Vij为Oij对应的向量表示;1≤j≤m,m为绘本Ii的总页数,1≤i≤k,k为训练集中绘本的总数量。为了提高故事模型的准确度,可以在训练集中包含大量的绘本及绘本对应的故事描述,一般绘本中每页图片可以存在对应的故事描述。第一编码器可以是基于skip-thought vector方法的为句子向量(Sentence2Vec)编码器,其可以将Oij转换为向量表示Vij={Vij1,Vij2,…,Vijn},n为向量的维度,则第i个绘本的故事描述可以表示为Vi={Vi1,Vi2,…,Vim}。
步骤210,训练第一解码器。第一解码器可以是基于基于循环神经网络、长短期记忆网络或门控循环单元神经网络的解码器,例如采用长短期记忆网络lstm、门控循环单元神经网络gru等模型。该解码器以一段故事描述Oij的向量表示Vij={Vij1,Vij2,…,Vijn}为输入,以Oij为输出,进行训练。
步骤215,利用第二编码器提取绘本图片的特征。利用基于卷积神经网络(可采用残差网络resnet、移动视觉网络mobi leNet等模型)的第二编码器对训练集中的绘本图片提取特征,假设对Iij提取的特征为Fij,则第i个绘本可表示为Fi={Fi1,Fi2,…,Fim}。
步骤220,训练第三编码器和第三解码器。使用特征Fi为输入,Vi为输出训练第三编码器和第三解码器。第三编码器和第三解码器构成编码器-解码器模型。第三编码器和第三解码器可以是基于基于循环神经网络、长短期记忆网络或门控循环单元神经网络(例如可采用lstm、gru等模型)的编码器和解码器。第三编码器以绘本图片的特征Fi为输入,并输出中间结果Ti。第三解码器为基于循环神经网络的编码器,以Ti为输入,以绘本故事描述的向量表示Vi为输出。
步骤225,将第二编码器、第三编码器、第三解码器、第一解码器组成故事模型,如图3所示。
本申请提供了一种绘本故事生成的方法,该方法包括:
将新绘本的图片输入故事模型;
故事模型输出新绘本的图片对应的故事描述。
通过上述的方法,可以根据绘本自动生成故事。
本申请提供了一种故事模型训练系统,该系统包括存储设备和处理器;
所述存储设备,用于存储程序;
所述处理器,用于执行所述程序以实现故事模型训练方法或者故事生成方法。
本申请提供了一种绘本阅读机器人,该机器人包括所述的系统。
本身请提供了一种存储设备,其上存储有程序,所述程序用于被处理器执行时实现故事模型训练方法或者故事生成方法。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。