一种文本信息生成方法、装置以及计算设备与流程

文档序号:20919587发布日期:2020-05-29 13:58阅读:144来源:国知局
一种文本信息生成方法、装置以及计算设备与流程

本发明涉及自然语言处理领域,具体涉及一种文本信息生成方法、装置以及计算设备。



背景技术:

目前电商在内容化的过程中,商品的描述信息需要人工/达人去手动书写,文本生成效率极低。因此希望对商品描述进行自动生成,来解放人工的双手,提高文本的生成效率。



技术实现要素:

鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的文本生成方法、装置以及计算设备。

根据本发明的一个方面,提供了一种文本信息生成方法,包括:

获取商品的标题信息;

将所述标题信息输入到文本生成模型,以生成针对所述商品的多个描述文本;

获取所述多个描述文本的点击信息;

至少根据所获取的点击信息对所述文本生成模型进行训练,以调整所述文本生成模型的网络参数。

可选地,在根据本发明的文本信息生成方法中,所述文本生成模型包括标题编码器和标题解码器,所述标题编码器适于将标题信息编码为针对标题信息的语义向量,所述标题解码器适于至少根据所述语义向量,生成描述文本的每个位置的词分布向量,并根据所述词分布向量生成针对所述商品的多个描述文本。

可选地,根据本发明的文本信息生成方法,还包括:获取与商品关联的属性信息;根据所述属性信息生成注意力向量;将所述注意力向量输入到所述标题解码器,以使所述标题解码器根据所述语义向量和所述注意力向量生成所述词分布向量。

可选地,在根据本发明的文本信息生成方法中,所述与商品关联的属性信息包括商品的品牌、颜色、尺寸、价格中的至少一个。

可选地,在根据本发明的文本信息生成方法中,所述至少根据所获取的点击信息对所述文本生成模型进行训练,以调整所述文本生成模型的网络参数,包括:获取所述标题信息的目标描述文本;计算所述词分布向量与所述目标描述文本的第一交叉熵损失;计算所述多个描述文本中预定数目个点击率最高的描述文本、与所述标题信息的第二交叉熵损失;以所述第一交叉熵损失与第二交叉熵损失之和作为损失函数值,调整文本生成模型的网络参数。

可选地,在根据本发明的文本信息生成方法中,所述根据所述词分布向量生成针对所述商品的多个描述文本,包括:采用集束搜索算法对每个位置的词分布向量进行搜索,从而生成所述商品的多个描述文本。

可选地,在根据本发明的文本信息生成方法中,所述标题编码器和标题解码器采用循环神经网络rnn、门控循环单元gru或者长短时记忆网络lstm中的至少一个。

可选地,根据本发明的文本信息生成方法,还包括:将所述描述文本发送至客户端显示。

根据本发明的另一方面,还提供一种文本信息生成装置,包括:

第一获取模块,适于获取商品的标题信息;

文本生成模块,适于将所述标题信息输入到文本生成模型,以生成针对所述商品的多个描述文本;

第二获取模块,适于获取所述多个描述文本的点击信息;

参数调整模块,适于根据所获取的点击信息对所述文本生成模型进行训练,以调整所述文本生成模型的网络参数。

根据本发明的又一方面,还提供一种计算设备,包括:

一个或多个处理器;

存储器;以及

一个或多个程序,其中所述一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据上述的方法中的任一方法的指令。

本发明首先在文本生成模型生成多个版本的描述文本的基础上,将各个版本的描述文本投放到线上,然后获取到线上版本的用户行为(用户对描述文本的点击情况),将用户行为加入到文本生成模型的损失函数中继续进行训练,从而能够提升文本生成模型的性能指标。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了根据本发明一个实施例的文本信息生成系统100的示意图;

图2示出了根据本发明一个实施例的计算设备200的示意图;

图3示出了根据本发明一个实施例的文本信息生成方法300的流程图;

图4示出了根据本发明一个实施例的文本信息生成装置400的示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

图1示出了根据本发明一个实施例的文本信息生成系统100的示意图。如图1所示,文本信息生成系统100包括用户终端110和计算设备200。

用户终端110即用户所使用的终端设备,其具体可以是桌面电脑、笔记本电脑等个人计算机,也可以是手机、平板电脑、多媒体设备、智能可穿戴设备等,但不限于此。计算设备200用于向用户终端110提供服务,其可以实现为服务器,例如应用服务器、web服务器等;也可以实现为桌面电脑、笔记本电脑、处理器芯片、平板电脑等,但不限于此。

根据一种实施例,计算设备200可以执行商品信息查询,终端设备110可以经由互联网与计算设备200建立连接,从而使得用户可以经由终端设备110进行商品信息查询。例如,用户在终端设备110上打开浏览器或者购物类应用(app),在搜索框中输入查询短语(query),即向计算设备200发起查询请求。计算设备200接收到查询请求后,根据用户输入的查询短语来查询商品信息,并将查询结果返回至终端设备110,查询结果可以包括商品的标题信息以及针对该商品的描述文本。终端设备110在界面中展示商品的标题信息和商品描述文本,用户可以对感兴趣的商品描述文本进行点击,从而进入商品详情页。同时,计算设备200会记录用户针对商品描述文本的点击行为。其中,商品描述文本由计算设备200基于商品的标题信息,利用文本生成工具(文本生成模型)自动生成。

在一个实施例中,文本信息生成系统100还包括数据存储装置120。数据存储装置120可以是关系型数据库例如mysql、access等,也可以是非关系型数据库例如nosql等;可以是驻留于计算设备200中的本地数据库,也可以作为分布式数据库例如hbase等设置于多个地理位置处,总之,数据存储装置120用于存储数据,本发明对数据存储装置120的具体部署、配置情况不做限制。计算设备200可以与数据存储装置120连接,并获取数据存储装置120中所存储的数据。例如,计算设备200可以直接读取数据存储装置120中的数据(在数据存储装置120为计算设备200的本地数据库时),也可以通过有线或无线的方式接入互联网,并通过数据接口来获取数据存储装置120中的数据。

在本发明的实施例中,数据存储装置120适于存储商品信息,例如,商品的标题信息,与商品关联的属性信息,商品的详细描述,针对商品的描述文本,以及,用户针对商品的点击数据(包括用户对描述文本的点击行为)。其中,针对商品的描述文本由文本生成模型基于商品的标题信息和用户针对商品的点击数据生成。为了对文本生成模型进行训练,数据存储装置中还可以存储训练数据集,训练数据集的每个训练样本包括标题信息以及关联的目标描述文本,目标描述文本可以由人工基于标题信息手动生成,即人工通过阅读商品标题信息、商品的相关属性和详细描述,来书写针对该商品的描述文本,作为目标描述文本。

本发明的文本信息生成方法可以在计算设备中执行。图2示出了根据本发明一个实施例的计算设备200的结构图。如图2所示,在基本的配置202中,计算设备200典型地包括系统存储器206和一个或者多个处理器204。存储器总线208可以用于在处理器204和系统存储器206之间的通信。

取决于期望的配置,处理器204可以是任何类型的处理,包括但不限于:微处理器(μp)、微控制器(μc)、数字信息处理器(dsp)或者它们的任何组合。处理器204可以包括诸如一级高速缓存210和二级高速缓存212之类的一个或者多个级别的高速缓存、处理器核心214和寄存器216。示例的处理器核心214可以包括运算逻辑单元(alu)、浮点数单元(fpu)、数字信号处理核心(dsp核心)或者它们的任何组合。示例的存储器控制器218可以与处理器204一起使用,或者在一些实现中,存储器控制器218可以是处理器204的一个内部部分。

取决于期望的配置,系统存储器206可以是任意类型的存储器,包括但不限于:易失性存储器(诸如ram)、非易失性存储器(诸如rom、闪存等)或者它们的任何组合。系统存储器106可以包括操作系统220、一个或者多个应用222以及程序数据224。应用222实际上是多条程序指令,其用于指示处理器204执行相应的操作。在一些实施方式中,应用222可以布置为在操作系统上使得处理器204利用程序数据224进行操作。

计算设备200还可以包括有助于从各种接口设备(例如,输出设备242、外设接口244和通信设备246)到基本配置202经由总线/接口控制器230的通信的接口总线240。示例的输出设备242包括图形处理单元248和音频处理单元250。它们可以被配置为有助于经由一个或者多个a/v端口252与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口244可以包括串行接口控制器254和并行接口控制器256,它们可以被配置为有助于经由一个或者多个i/o端口258和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备246可以包括网络控制器260,其可以被布置为便于经由一个或者多个通信端口264与一个或者多个其他计算设备262通过网络通信链路的通信。

网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(rf)、微波、红外(ir)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。

在根据本发明的计算设备200中,应用222包括文本信息生成装置400,装置400包括多条程序指令,这些程序指令可以指示处理器104执行文本信息生成方法300。

图3示出了根据本发明一个实施例的文本信息生成方法300的流程图。方法300适于在计算设备(例如前述计算设备200)中执行。

如图3所示,方法300始于步骤s310,在步骤s310中,获取商品的标题信息。如前所述,用户浏览购物类网站,或者,在购物类网站查询商品信息时,购物类网站会通常会向用户展示商品的相关信息,包括商品的标题信息、针对该商品的描述文本以及商品详情页等。计算设备可以从本地或者从与之通信连接的数据存储装置中获取到商品信息。另外,在进行文本生成模型的训练时,还可以从训练数据集中获取到商品的标题信息。

本发明实施例中的商品包括但不限于任何类型的可以提供到市场,供人们消费或者使用的商品。在一些实施例中,商品可以包括实体的产品,如衣服、咖啡、汽车等,在其他实施例中,商品可以包括无形的产品,如服务、教育、游戏、虚拟资源等。

在步骤s320中,将获取的标题信息输入到文本生成模型,由文本生成模型生成针对商品的多个描述文本。文本生成模型是一个序列到序列(seq2seq)模型,序列到序列模型通常包括编码器和解码器,编码器将源文本转换为一个向量,解码器将该向量转换为目标文本。另外,文本生成模型还可以是基于注意力的序列到序列模型,即在序列到序列模型中引入了注意力机制。

在本发明实施例中,文本生成模型包括标题编码器和标题解码器,标题编码器适于将标题信息编码为针对标题信息的语义向量,标题解码器适于根据语义向量生成针对商品的描述文本。标题编码器和标题解码器均可以采用循环神经网络(rnn)、门控循环单元(gru)、长短时记忆网络(lstm)或者其他类型的神经网络,本发明对此不做限制。

标题编码器包括按照顺序连接的多个编码单元,每个编码单元输出标题信息中一个词的状态向量,最后一个编码单元还可以输出整个标题对应的状态向量。上述的语义向量可以是整个标题对应的状态向量,也可以是一个向量序列,该向量序列包括每个词对应的状态向量和整个标题对应的状态向量。标题解码器包括按照顺序连接的多个解码单元,每个解码单元生成描述文本的一个位置的词分布向量,即第一个解码单元生成描述文本的第一个词对应的词分布向量,第二个解码单元生成描述文本的第二个词对应的词分布向量,依次类推,最终得到描述文本的每个位置的词分布向量。

生成各个位置的词分布向量后,就可以采用各种搜索算法,例如采用集束搜索(beamsearch)算法来对每个位置的词分布向量进行搜索,从而生成所述商品的多个描述文本。

假设beamsearch的参数为k,表示在每个时间步进行计算时会同时保持k个最优版本,其中在第t步时会根据k个t-1步的结果,再同时与t步的词分布向量,来计算概率最大的k个解码版本,直至解码到结束标签(例如</s>),得到k个描述文本。也就是说,通过执行beamsearch搜索,一方面能够得到k个描述文本,另一方面还能够同时得到每个描述文本对应的文本概率。

在一个实施例中,方法300还包括:获取与商品关联的属性信息,根据获取到的商品的属性信息生成注意力向量,将生成的注意力向量输入到标题解码器,由标题解码器根据上述语义向量和注意力向量生成描述文本中每个位置的词分布向量。具体地,注意力向量包括与商品的属性及属性值对应的多个维度,注意力向量可以作为初始化状态输入到标题解码器中,使得标题解码器在生成商品的描述文本的过程中,更加关注于商品的相关属性。

与商品关联的属性信息例如为商品的品牌、颜色、尺寸、价格等。同样,计算设备可以从本地或者从与之通信连接的数据存储装置中获取到商品的属性信息。商品的属性信息可以与键-值(key-value)的形式表示,例如:品牌-耐克,颜色-红色,尺寸:s,m,l,xs,价格-600等。

在通过文本生成模型生成针对商品的多个描述文本之后,可以将描述文本发送至客户端进行显示,例如,可以将文本概率最大的描述文本发送至客户端进行显示。

另外,在利用文本生成模型进行文本处理之前,还可以预先对文本生成模型进行训练。训练过程如下:

1)获取训练数据集,训练数据集的每个训练样本包括标题信息以及关联的目标描述文本,目标描述文本可以由人工基于标题信息手动生成,即人工通过阅读商品标题信息、商品的相关属性和详细描述,来书写针对该商品的描述文本,作为目标描述文本。

2)将训练样本中的标题信息输入到文本生成模型,由文本生成模型输出词分布向量。

3)计算词分布向量与目标描述文本的交叉熵损失。

4)根据交叉熵损失,采用反向传播算法调整文本生成模型的网络参数。

为了进一步提升文本生成模型的性能指标,本发明实施例还结合用户行为对文本生成模型继续进行训练,具体如步骤s330和s340所述。

在对模型继续进行训练之前,可以将商品的多个描述文本都投放到线上,即将每个描述文本返回给相应的一个或多个用户,然后,在步骤s330中,获取用户针对多个描述文本的点击信息。这里,点击信息可以是各描述文本对应的点击次数或点击率。

在步骤s340中,至少根据所获取的点击信息对文本生成模型进行训练,以调整所述文本生成模型的网络参数。训练过程如下:

1)获取标题信息的目标描述文本;

目标描述文本即训练样本中与标题信息关联的描述文本。

2)计算文本生成模型输出的词分布向量与目标描述文本的第一交叉熵损失;

如何计算词分布向量与文本的交叉熵损失,可以采用现有技术。在本发明实施例中,第一交叉熵损失h(seq)可以表示为:

其中,predi表示预测的描述文本中第i个词对应的分布向量,m为预测的描述文本包括的词的数目,glod表示目标描述文本。

3)计算多个描述文本中预定数目(例如t)个点击率最高的描述文本、与所述标题信息的第二交叉熵损失;

如何计算文本之间的交叉熵损失,可以采用现有技术。在本发明实施例中,第二交叉熵损失h(ce)可以表示为:

其中,desci表示点率第i高的描述文本,title表示标题信息,a为预设的加权系数(可以根据经验或者实验设置)。式中的概率值可以根据文本之间的相似度进行计算。

例如,如果某个标题信息对应10个描述文本,则可以从中获取t=4个点击率最高的描述文本,然后,计算这4个描述文本与标题信息的交叉熵损失。

4)以所述第一交叉熵损失与第二交叉熵损失之和作为损失函数值,调整文本生成模型的网络参数。

综上所述,本发明实施例首先在文本生成模型生成多个版本的描述文本的基础上,将各个版本的描述文本投放到线上,然后获取到线上版本的用户行为(用户对描述文本的点击情况),将用户行为加入到模型的损失函数中继续进行训练,这样,就可以不断的演化生成用户最需要的结果。

例如,假如针对某个标题:v领雪纺连衣裙2018春夏女装新款韩版蕾丝边复古白色裙气质系带裙,根据本发明的文本生成模型生成了3版本的结果:

a)这款连衣裙采用的是优质蕾丝面料,穿上之后非常的清爽舒适。

b)这款连衣裙采用的是优质棉麻面料,穿上之后舒服清透。

c)这款白色连衣裙适用于春夏之季穿着,采用的是优质蕾丝面料,穿上身之后尽显复古大气风格。

这些版本投放到线上之后,如果c)版本的点击率最高,则接下来新模型训练的将会主要继续偏向c)版本。

图4示出了根据本发明一个实施例的文本信息生成装置400的示意图。参照图4,装置400包括:

第一获取模块410,适于获取商品的标题信息;

文本生成模块420,适于将所述标题信息输入到文本生成模型,以生成针对所述商品的多个描述文本;

第二获取模块430,适于获取所述多个描述文本的点击信息;

参数调整模块440,适于根据所获取的点击信息对所述文本生成模型进行训练,以调整所述文本生成模型的网络参数。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1