首页> 中国专利> 基于用户特征生成用户描述文本的方法和装置

基于用户特征生成用户描述文本的方法和装置

摘要

本说明书实施例提供一种基于用户特征生成用户描述文本的方法和装置。方法包括:将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,得到各初始用户特征向量;将各初始用户特征向量输入检索模型,进行K次迭代,以得到K个语句;其中,每次迭代包括,确定各项特征分别对应的本次迭代的各注意力系数,并根据各注意力系数对各初始用户特征向量进行加权求和,得到综合表征向量,再根据综合表征向量从人工知识库中检索出一个语句;将K个语句输入第二编码器,对K个语句基于注意力机制进行编码,得到语义表征向量;将各初始用户特征向量和语义表征向量输入生成模型,生成目标用户的用户描述文本。能够兼顾效率和文本质量。

著录项

  • 公开/公告号CN112836520A

    专利类型发明专利

  • 公开/公告日2021-05-25

    原文格式PDF

  • 申请/专利权人 支付宝(杭州)信息技术有限公司;

    申请/专利号CN202110189542.8

  • 申请日2021-02-19

  • 分类号G06F40/30(20200101);G06F40/284(20200101);G06F16/33(20190101);G06K9/62(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构11309 北京亿腾知识产权代理事务所(普通合伙);

  • 代理人陈霁;周良玉

  • 地址 310000 浙江省杭州市西湖区西溪路556号8层B段801-11

  • 入库时间 2023-06-19 11:05:16

说明书

技术领域

本说明书一个或多个实施例涉及计算机领域,尤其涉及基于用户特征生成用户描述文本的方法和装置。

背景技术

由于用户的用户特征与该用户的用户类别之间具有关联关系,因此可以基于用户的用户特征对该用户进行分类。用户特征可以是用户的年龄、学历、收入等数据,用户类别可以包括多个预先设定的类别,例如,是否具有还款风险、是否具有洗钱风险等。通常地,仅仅给出用户的用户特征和该用户的用户类别并不具有说服力,因此在获取到用户的用户特征之后,还需要基于用户特征生成用户描述文本,用户描述文本包括多个语句,能够体现用户特征和用户类别之间的关联关系。对用户描述文本的要求是逻辑紧密、论证充足、简洁易懂的规范性报文。

现有技术中,基于用户特征生成用户描述文本有两种方式:一种方式为人工撰写用户描述文本,该方式效率低;另一种方式为机器生成用户描述文本,该方式文本质量不佳。

因此,希望能有改进的方案,能够兼顾效率和文本质量。

发明内容

本说明书一个或多个实施例描述了一种基于用户特征生成用户描述文本的方法和装置,能够兼顾效率和文本质量。

第一方面,提供了一种基于用户特征生成用户描述文本的方法,方法包括:

将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,通过所述第一编码器得到各项特征分别对应的各初始用户特征向量;

将所述各初始用户特征向量输入检索模型,通过所述检索模型进行K次迭代,以通过K次迭代得到K个语句;其中,每次迭代包括,确定各项特征分别对应的本次迭代的各注意力系数,并根据各注意力系数对所述各初始用户特征向量进行加权求和,得到综合表征向量,再根据所述综合表征向量从人工知识库中检索出一个语句;

将所述K个语句输入第二编码器,通过所述第二编码器对所述K个语句基于注意力机制进行编码,得到所述K个语句对应的语义表征向量;

将所述各初始用户特征向量和所述语义表征向量输入生成模型,通过所述生成模型生成所述目标用户的用户描述文本。

在一种可能的实施方式中,所述各项特征的类型包括:

数值型或文本型。

进一步地,所述通过所述第一编码器得到各项特征分别对应的各初始用户特征向量之前,所述方法还包括:

对类型为文本型的特征的原始特征值进行分词处理,得到多个分词结果;

所述将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,包括:

将目标用户的类型为文本型的特征的特征名和其对应的多个分词结果输入第一编码器。

在一种可能的实施方式中,所述第一编码器包括第一嵌入矩阵、第二嵌入矩阵和第一编码模型;所述通过所述第一编码器得到各项特征分别对应的各初始用户特征向量包括:

将所述各项特征中的任一项特征作为目标项特征,通过第一嵌入矩阵,将目标项特征的特征名转换为第一嵌入向量;

通过第二嵌入矩阵,将目标项特征对应的特征值转换为第二嵌入向量;

将所述各项特征分别对应的第一嵌入向量和第二嵌入向量输入所述第一编码模型,所述第一编码模型基于注意力机制进行编码,得到所述各项特征分别对应的初始用户特征向量。

在一种可能的实施方式中,所述确定各项特征分别对应的本次迭代的各注意力系数,包括:

根据所述各初始用户特征向量和上一次迭代得到的综合表征向量,确定本次迭代的各项特征分别对应的各注意力系数。

在一种可能的实施方式中,所述根据所述综合表征向量从人工知识库中检索出一个语句,包括:

将所述综合表征向量经过一层全连接层,得到维度为所述人工知识库包含的语句数的输出向量;

将所述输出向量经过归一化处理后,得到归一化向量;

选取所述归一化向量中最大数值对应的维度,将该维度对应的语句作为本次迭代中从人工知识库中检索出的一个语句。

在一种可能的实施方式中,所述第二编码器包括第二编码模型和自注意力层;所述通过所述第二编码器对所述K个语句基于注意力机制进行编码,包括:

将所述K个语句包括的各个字的字嵌入向量输入第二编码模型,通过所述第二编码模型确定各个字的字编码向量;

将所述各个字的字编码向量输入自注意力层,通过所述自注意力层确定各个字分别对应的注意力系数,根据各个字分别对应的注意力系数对所述各个字的字编码向量进行加权求和,得到所述K个语句对应的语义表征向量。

在一种可能的实施方式中,所述生成模型包括:第一子层、第二子层和中间层,所述第一子层和第二子层为基于时序的神经网络层;

所述通过所述生成模型生成所述目标用户的用户描述文本,包括:

所述第一子层将上一时刻生成的字和所述第二子层的上一时刻的隐藏状态作为其当前时刻输入,生成所述第一子层的当前时刻的隐藏状态;其中,所述语义表征向量作为所述第二子层的初始时刻的隐藏状态;

所述中间层根据所述第一子层的当前时刻的隐藏状态和所述各初始用户特征向量,确定各项特征分别对应的各权重系数,并根据各权重系数对所述各初始用户特征向量进行加权求和,得到中间表征向量;

所述第二子层将所述中间表征向量和所述第一子层的当前时刻的隐藏状态作为其当前时刻输入,生成所述第二子层的当前时刻的隐藏状态;所述第二子层的当前时刻的隐藏状态用于确定当前时刻生成的字。

在一种可能的实施方式中,所述方法还包括:

利用预先设定的总损失函数,调整所述第一编码器、所述检索模型、所述第二编码器和所述生成模型中至少一个的参数;所述总损失函数由第一损失函数和第二损失函数共同确定,所述第一损失函数的函数值依赖于,针对所述目标用户的人工描述文本中各个字在所述生成模型中的生成概率,所述第二损失函数的函数值依赖于,所述用户描述文本中各个字是否存在于预设的标签文本中,以及存在于所述标签文本中的各个字在所述生成模型中的生成概率。

进一步地,所述生成模型为基于时序的模型,其在多个时刻依次生成所述用户描述文本中的字;所述各个字在所述生成模型中的生成概率包括,所述生成模型在各个时刻得到的各个字的生成概率。

第二方面,提供了一种基于用户特征生成用户描述文本的装置,装置包括:

第一编码单元,用于将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,通过所述第一编码器得到各项特征分别对应的各初始用户特征向量;

检索单元,用于将所述第一编码单元得到的各初始用户特征向量输入检索模型,通过所述检索模型进行K次迭代,以通过K次迭代得到K个语句;其中,每次迭代包括,确定各项特征分别对应的本次迭代的各注意力系数,并根据各注意力系数对所述各初始用户特征向量进行加权求和,得到综合表征向量,再根据所述综合表征向量从人工知识库中检索出一个语句;

第二编码单元,用于将所述检索单元得到的K个语句输入第二编码器,通过所述第二编码器对所述K个语句基于注意力机制进行编码,得到所述K个语句对应的语义表征向量;

生成单元,用于将所述第一编码单元得到的各初始用户特征向量和所述第二编码单元得到的语义表征向量输入生成模型,通过所述生成模型生成所述目标用户的用户描述文本。

第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。

第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。

通过本说明书实施例提供的方法和装置,首先将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,通过所述第一编码器得到各项特征分别对应的各初始用户特征向量;然后将所述各初始用户特征向量输入检索模型,通过所述检索模型进行K次迭代,以通过K次迭代得到K个语句;其中,每次迭代包括,确定各项特征分别对应的本次迭代的各注意力系数,并根据各注意力系数对所述各初始用户特征向量进行加权求和,得到综合表征向量,再根据所述综合表征向量从人工知识库中检索出一个语句;接着将所述K个语句输入第二编码器,通过所述第二编码器对所述K个语句基于注意力机制进行编码,得到所述K个语句对应的语义表征向量;最后将所述各初始用户特征向量和所述语义表征向量输入生成模型,通过所述生成模型生成所述目标用户的用户描述文本。由上可见,本说明书实施例,通过机器自动生成用户描述文本,效率高,在这一过程中,不仅利用了目标用户的各项特征分别对应的各初始用户特征向量,还利用了检索到的K个语句对应的语义表征向量,由于这K个语句来源于人工知识库,从而可以有效利用与目标用户最相关的人工经验,能很好的解决叠词、错误词等问题,适用性强,文本质量佳,因此能够兼顾效率和文本质量。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本说明书披露的一个实施例的实施场景示意图;

图2示出根据一个实施例的基于用户特征生成用户描述文本的方法流程图;

图3示出根据一个实施例的检索系统架构示意图;

图4示出根据一个实施例的第二编码器的结构示意图;

图5示出根据一个实施例的生成模型的结构示意图;

图6示出根据一个实施例的基于用户特征生成用户描述文本的装置的示意性框图。

具体实施方式

下面结合附图,对本说明书提供的方案进行描述。

图1为本说明书披露的一个实施例的实施场景示意图。该实施场景涉及基于用户特征生成用户描述文本。基于用户的用户特征可以对该用户进行分类。用户特征可以是用户的年龄、学历、收入等数据,用户类别可以包括多个预先设定的类别,例如,是否具有还款风险、是否具有洗钱风险等。用户描述文本包括多个语句,能够体现用户特征和用户类别之间的关联关系。对用户描述文本的要求是逻辑紧密、论证充足、简洁易懂的规范性报文。

参照图1,表格中列出了用户A的各项特征的特征名和其对应的特征值,可以理解的是,目标用户为用户A,特征名为年龄对应的特征值为50岁,特征名为学历对应的特征值为高中,……,特征名为年收入对应的特征值为3万元。根据用户A的各项特征的特征名和其对应的特征值,生成的用户描述文本为“用户A的年龄较大,学历较低……年收入较低,因此具有还款风险”。本说明书实施例,用户特征可以但并不限定于上述列举的年龄、学历、年收入等用户属性特征,还可以包括用户针对特定应用的历史行为特征,例如,历史借款金额、是否存在延迟还款等。用户描述文本的具体内容和生成方式通常并不固定。本说明书实施例,结合专家经验和机器学习来生成用户描述文本,可以理解的是,专家经验即人工经验,通过机器自动生成用户描述文本,效率高,在这一过程中,不仅利用了目标用户的各项特征,还利用了从人工知识库中检索到的语句,从而可以有效利用与目标用户最相关的人工经验,能很好的解决叠词、错误词等问题,适用性强,文本质量佳,因此能够兼顾效率和文本质量。

图2示出根据一个实施例的基于用户特征生成用户描述文本的方法流程图,该方法可以基于图1所示的实施场景。如图2所示,该实施例中基于用户特征生成用户描述文本的方法包括以下步骤:步骤21,将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,通过所述第一编码器得到各项特征分别对应的各初始用户特征向量;步骤22,将所述各初始用户特征向量输入检索模型,通过所述检索模型进行K次迭代,以通过K次迭代得到K个语句;其中,每次迭代包括,确定各项特征分别对应的本次迭代的各注意力系数,并根据各注意力系数对所述各初始用户特征向量进行加权求和,得到综合表征向量,再根据所述综合表征向量从人工知识库中检索出一个语句;步骤23,将所述K个语句输入第二编码器,通过所述第二编码器对所述K个语句基于注意力机制进行编码,得到所述K个语句对应的语义表征向量;步骤24,将所述各初始用户特征向量和所述语义表征向量输入生成模型,通过所述生成模型生成所述目标用户的用户描述文本。下面描述以上各个步骤的具体执行方式。

首先在步骤21,将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,通过所述第一编码器得到各项特征分别对应的各初始用户特征向量。可以理解的是,第一编码器可以基于多种模型结构,例如,转换器(transformer)、长短期记忆网络(longshort-term memory,LSTM)、门控循环单元(gated recurrent unit,GRU)等模型结构。

在一个示例中,所述各项特征的类型包括:

数值型或文本型。

例如,用户A的年龄为50岁,年龄这项特征就属于数值型的特征,该项特征的特征名为年龄,其对应的特征值为50;用户A的常住地为北京和上海,常住地这项特征就属于文本型的特征,该项特征的特征名为常住地,其对应的特征值为北京和上海。

可以理解的是,特征的类型也是其对应的特征值的类型。

本说明书实施例中,针对类型为数值型的特征,可以将该特征的特征名和其对应的原始特征值输入第一编码器;针对类型为文本型的特征,可以将其对应的原始特征值先进行分词处理,得到多个分词结果,再将该特征的特征名和其对应的多个分词结果输入第一编码器。

在一个示例中,所述第一编码器包括第一嵌入矩阵、第二嵌入矩阵和第一编码模型;所述通过所述第一编码器得到各项特征分别对应的各初始用户特征向量包括:

将所述各项特征中的任一项特征作为目标项特征,通过第一嵌入矩阵,将目标项特征的特征名转换为第一嵌入向量;

通过第二嵌入矩阵,将目标项特征对应的特征值转换为第二嵌入向量;

将所述各项特征分别对应的第一嵌入向量和第二嵌入向量输入所述第一编码模型,所述第一编码模型基于注意力机制进行编码,得到所述各项特征分别对应的初始用户特征向量。

举例来说,第i项特征对应的第一嵌入向量记为x_i_feature,第i项特征对应的第二嵌入向量记为x_i_value,第一编码模型为transformer的模型结构,使用transformer的模型结构将x_i=[x_i_feature,x_i_value]进行编码,得到第i项特征对应的初始用户特征向量。其中,transformer的模型结构主要包含注意力层、残差层、归一化层、前馈层等。

然后在步骤22,将所述各初始用户特征向量输入检索模型,通过所述检索模型进行K次迭代,以通过K次迭代得到K个语句;其中,每次迭代包括,确定各项特征分别对应的本次迭代的各注意力系数,并根据各注意力系数对所述各初始用户特征向量进行加权求和,得到综合表征向量,再根据所述综合表征向量从人工知识库中检索出一个语句。可以理解的是,人工知识库中的语句体现了人工经验,通过检索的方式可以获得与目标用户相关的人工经验。

在一个示例中,所述确定各项特征分别对应的本次迭代的各注意力系数,包括:

根据所述各初始用户特征向量和上一次迭代得到的综合表征向量,确定本次迭代的各项特征分别对应的各注意力系数。

举例来说,X

首先可以通过如下公式确定z

再通过如下公式对z

α

最后利用各注意力系数对X

在一个示例中,所述根据所述综合表征向量从人工知识库中检索出一个语句,包括:

将所述综合表征向量经过一层全连接层,得到维度为所述人工知识库包含的语句数的输出向量;

将所述输出向量经过归一化处理后,得到归一化向量;

选取所述归一化向量中最大数值对应的维度,将该维度对应的语句作为本次迭代中从人工知识库中检索出的一个语句。

图3示出根据一个实施例的检索系统架构示意图。参照图3,检索系统包括第一编码器和检索模型。将目标用户的各项特征输入第一编码器,通过所述第一编码器得到各项特征分别对应的各初始用户特征向量,各初始用户特征向量合并后的向量用X表示,将X输入检索模型,通过所述检索模型从人工知识库中检索出K个语句。其中,N为人工知识库中包含的语句的总数,通常N的数值较大,例如N可能为数百或数千等,K为预先设定的数值,例如,K可以取2、3或5等。检索系统用于执行前述步骤21和步骤22的动作,以得到K个语句。

接着在步骤23,将所述K个语句输入第二编码器,通过所述第二编码器对所述K个语句基于注意力机制进行编码,得到所述K个语句对应的语义表征向量。可以理解的是,第二编码器可以基于多种模型结构,例如,transformer、LSTM、GRU等模型结构。

在一个示例中,所述第二编码器包括第二编码模型和自注意力层;所述通过所述第二编码器对所述K个语句基于注意力机制进行编码,包括:

将所述K个语句包括的各个字的字嵌入向量输入第二编码模型,通过所述第二编码模型确定各个字的字编码向量;

将所述各个字的字编码向量输入自注意力层,通过所述自注意力层确定各个字分别对应的注意力系数,根据各个字分别对应的注意力系数对所述各个字的字编码向量进行加权求和,得到所述K个语句对应的语义表征向量。

举例来说,第二编码模型为transformer的模型结构,K个语句中包含l个字,w

首先可以通过如下公式确定s

s

再通过如下公式确定α

最后通过如下公式确定H:

图4示出根据一个实施例的第二编码器的结构示意图。参照图4,第二编码器包括第二编码模型和自注意力层。将所述K个语句包括的各个字的字嵌入向量w

最后在步骤24,将所述各初始用户特征向量和所述语义表征向量输入生成模型,通过所述生成模型生成所述目标用户的用户描述文本。可以理解的是,该生成模型的作用相当于解码器,生成的用户描述文本可以作为最终的用户描述文本,或者,用于人工对该用户描述文本进一步编辑处理,以形成最终的用户描述文本,有助于提升人工形成文本的效率。

在一个示例中,所述生成模型包括:第一子层、第二子层和中间层,所述第一子层和第二子层为基于时序的神经网络层;

所述通过所述生成模型生成所述目标用户的用户描述文本,包括:

所述第一子层将上一时刻生成的字和所述第二子层的上一时刻的隐藏状态作为其当前时刻输入,生成所述第一子层的当前时刻的隐藏状态;其中,所述语义表征向量作为所述第二子层的初始时刻的隐藏状态;

所述中间层根据所述第一子层的当前时刻的隐藏状态和所述各初始用户特征向量,确定各项特征分别对应的各权重系数,并根据各权重系数对所述各初始用户特征向量进行加权求和,得到中间表征向量;

所述第二子层将所述中间表征向量和所述第一子层的当前时刻的隐藏状态作为其当前时刻输入,生成所述第二子层的当前时刻的隐藏状态;所述第二子层的当前时刻的隐藏状态用于确定当前时刻生成的字。

举例来说,

首先通过第一子层确定

再通过中间层确定中间表征向量c

β

最后通过第二子层确定第二子层的t时刻的隐藏状态

图5示出根据一个实施例的生成模型的结构示意图。参照图5,生成模型包括:第一子层、第二子层和中间层,所述第一子层和第二子层为基于时序的神经网络层,可以但不限于为transformer、LSTM、GRU等结构的神经网络层。第一子层将上一时刻生成的字w

本说明书实施例,生成模型能够更加充分的利用原始特征和各时刻的隐藏状态,使得生成的用户描述文本的质量更加有保证。

在一个示例中,所述方法还包括:

利用预先设定的总损失函数,调整所述第一编码器、所述检索模型、所述第二编码器和所述生成模型中至少一个的参数;所述总损失函数由第一损失函数和第二损失函数共同确定,所述第一损失函数的函数值依赖于,针对所述目标用户的人工描述文本中各个字在所述生成模型中的生成概率,所述第二损失函数的函数值依赖于,所述用户描述文本中各个字是否存在于预设的标签文本中,以及存在于所述标签文本中的各个字在所述生成模型中的生成概率。

进一步地,所述生成模型为基于时序的模型,其在多个时刻依次生成所述用户描述文本中的字;所述各个字在所述生成模型中的生成概率包括,所述生成模型在各个时刻得到的各个字的生成概率。

上述总损失函数可以通过公式表示为:

第一损失函数即

第一损失函数即专家经验部分:主要是人工经验即专家规则对每个客户都会形成一段描述文本,文本中的每个字的概率从生成模型继承,即

第二损失函数即机器学习部分:可以采用一般生成模型的交叉熵作为损失函数。

本说明书实施例,通过在总损失函数中加入专家经验部分,可以提高生成的用户描述文本的准确率和覆盖率,在标签文本数量比较少的情况下也能有比较好的效果。

本说明书实施例,还进行了评估指标优化,通常用于评估生成文本好坏的指标,大都通过文本的相似性来评价生成的质量,但是在特定的领域,例如反洗钱领域,更看中对风险点描述的准确性,和对风险点尽可能多的覆盖,因此提出了下面几种评价指标:

Recall:对风险点的召回率,即将原文本和生成的文本均以句子进行拆分,将同时在两种文本中出现的句子数作为分子,原文本的句子数作为分母,得到的比值即为召回率;

Precision:分子与Recall的分子一样,分母为模型生成文本的句子数,得到的比值即为准确率;

Human Evaluation:即人工抽检,如给出100个模型生成的报文,让人工判断合格的报文的个数,比如90个,则模型生成文本的质量分为90%。

通过本说明书实施例提供的方法,首先将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,通过所述第一编码器得到各项特征分别对应的各初始用户特征向量;然后将所述各初始用户特征向量输入检索模型,通过所述检索模型进行K次迭代,以通过K次迭代得到K个语句;其中,每次迭代包括,确定各项特征分别对应的本次迭代的各注意力系数,并根据各注意力系数对所述各初始用户特征向量进行加权求和,得到综合表征向量,再根据所述综合表征向量从人工知识库中检索出一个语句;接着将所述K个语句输入第二编码器,通过所述第二编码器对所述K个语句基于注意力机制进行编码,得到所述K个语句对应的语义表征向量;最后将所述各初始用户特征向量和所述语义表征向量输入生成模型,通过所述生成模型生成所述目标用户的用户描述文本。由上可见,本说明书实施例,通过机器自动生成用户描述文本,效率高,在这一过程中,不仅利用了目标用户的各项特征分别对应的各初始用户特征向量,还利用了检索到的K个语句对应的语义表征向量,由于这K个语句来源于人工知识库,从而可以有效利用与目标用户最相关的人工经验,能很好的解决叠词、错误词等问题,适用性强,文本质量佳,因此能够兼顾效率和文本质量。

根据另一方面的实施例,还提供一种基于用户特征生成用户描述文本的装置,该装置用于执行本说明书实施例提供的基于用户特征生成用户描述文本的方法。图6示出根据一个实施例的基于用户特征生成用户描述文本的装置的示意性框图。如图6所示,该装置600包括:

第一编码单元61,用于将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,通过所述第一编码器得到各项特征分别对应的各初始用户特征向量;

检索单元62,用于将所述第一编码单元61得到的各初始用户特征向量输入检索模型,通过所述检索模型进行K次迭代,以通过K次迭代得到K个语句;其中,每次迭代包括,确定各项特征分别对应的本次迭代的各注意力系数,并根据各注意力系数对所述各初始用户特征向量进行加权求和,得到综合表征向量,再根据所述综合表征向量从人工知识库中检索出一个语句;

第二编码单元63,用于将所述检索单元62得到的K个语句输入第二编码器,通过所述第二编码器对所述K个语句基于注意力机制进行编码,得到所述K个语句对应的语义表征向量;

生成单元64,用于将所述第一编码单元61得到的各初始用户特征向量和所述第二编码单元63得到的语义表征向量输入生成模型,通过所述生成模型生成所述目标用户的用户描述文本。

可选地,作为一个实施例,所述各项特征的类型包括:

数值型或文本型。

进一步地,所述装置还包括:

分词单元,用于在所述第一编码单元61通过所述第一编码器得到各项特征分别对应的各初始用户特征向量之前,对类型为文本型的特征的原始特征值进行分词处理,得到多个分词结果;

所述第一编码单元61,具体用于将目标用户的类型为文本型的特征的特征名和其对应的多个分词结果输入第一编码器。

可选地,作为一个实施例,所述第一编码器包括第一嵌入矩阵、第二嵌入矩阵和第一编码模型;所述第一编码单元61包括:

第一嵌入子单元,用于将所述各项特征中的任一项特征作为目标项特征,通过第一嵌入矩阵,将目标项特征的特征名转换为第一嵌入向量;

第二嵌入子单元,用于通过第二嵌入矩阵,将目标项特征对应的特征值转换为第二嵌入向量;

编码子单元,用于将所述各项特征分别对应的所述第一嵌入子单元得到的第一嵌入向量和所述第二嵌入子单元得到的第二嵌入向量输入所述第一编码模型,所述第一编码模型基于注意力机制进行编码,得到所述各项特征分别对应的初始用户特征向量。

可选地,作为一个实施例,所述检索单元62,具体用于根据所述各初始用户特征向量和上一次迭代得到的综合表征向量,确定本次迭代的各项特征分别对应的各注意力系数。

可选地,作为一个实施例,所述检索单元62包括:

全连接子单元,用于将所述综合表征向量经过一层全连接层,得到维度为所述人工知识库包含的语句数的输出向量;

归一化子单元,用于将所述全连接子单元得到的输出向量经过归一化处理后,得到归一化向量;

确定子单元,用于选取所述归一化子单元得到的归一化向量中最大数值对应的维度,将该维度对应的语句作为本次迭代中从人工知识库中检索出的一个语句。

可选地,作为一个实施例,所述第二编码器包括第二编码模型和自注意力层;所述第二编码单元63包括:

编码子单元,用于将所述K个语句包括的各个字的字嵌入向量输入第二编码模型,通过所述第二编码模型确定各个字的字编码向量;

自注意力子单元,用于将所述编码子单元得到的各个字的字编码向量输入自注意力层,通过所述自注意力层确定各个字分别对应的注意力系数,根据各个字分别对应的注意力系数对所述各个字的字编码向量进行加权求和,得到所述K个语句对应的语义表征向量。

可选地,作为一个实施例,所述生成模型包括:第一子层、第二子层和中间层,所述第一子层和第二子层为基于时序的神经网络层;

所述生成单元64包括:

第一处理子单元,用于通过所述第一子层将上一时刻生成的字和所述第二子层的上一时刻的隐藏状态作为其当前时刻输入,生成所述第一子层的当前时刻的隐藏状态;其中,所述语义表征向量作为所述第二子层的初始时刻的隐藏状态;

中间处理子单元,用于通过所述中间层根据所述第一处理子单元生成的第一子层的当前时刻的隐藏状态和所述各初始用户特征向量,确定各项特征分别对应的各权重系数,并根据各权重系数对所述各初始用户特征向量进行加权求和,得到中间表征向量;

第二处理子单元,用于通过所述第二子层将所述中间处理子单元得到的中间表征向量和所述第一处理子单元生成的第一子层的当前时刻的隐藏状态作为其当前时刻输入,生成所述第二子层的当前时刻的隐藏状态;所述第二子层的当前时刻的隐藏状态用于确定当前时刻生成的字。

可选地,作为一个实施例,所述装置还包括:

参数调整单元,用于利用预先设定的总损失函数,调整所述第一编码器、所述检索模型、所述第二编码器和所述生成模型中至少一个的参数;所述总损失函数由第一损失函数和第二损失函数共同确定,所述第一损失函数的函数值依赖于,针对所述目标用户的人工描述文本中各个字在所述生成模型中的生成概率,所述第二损失函数的函数值依赖于,所述用户描述文本中各个字是否存在于预设的标签文本中,以及存在于所述标签文本中的各个字在所述生成模型中的生成概率。

进一步地,所述生成模型为基于时序的模型,其在多个时刻依次生成所述用户描述文本中的字;所述各个字在所述生成模型中的生成概率包括,所述生成模型在各个时刻得到的各个字的生成概率。

通过本说明书实施例提供的装置,首先第一编码单元61将目标用户的各项特征的特征名和其对应的特征值输入第一编码器,通过所述第一编码器得到各项特征分别对应的各初始用户特征向量;然后检索单元62将所述各初始用户特征向量输入检索模型,通过所述检索模型进行K次迭代,以通过K次迭代得到K个语句;其中,每次迭代包括,确定各项特征分别对应的本次迭代的各注意力系数,并根据各注意力系数对所述各初始用户特征向量进行加权求和,得到综合表征向量,再根据所述综合表征向量从人工知识库中检索出一个语句;接着第二编码单元63将所述K个语句输入第二编码器,通过所述第二编码器对所述K个语句基于注意力机制进行编码,得到所述K个语句对应的语义表征向量;最后生成单元64将所述各初始用户特征向量和所述语义表征向量输入生成模型,通过所述生成模型生成所述目标用户的用户描述文本。由上可见,本说明书实施例,通过机器自动生成用户描述文本,效率高,在这一过程中,不仅利用了目标用户的各项特征分别对应的各初始用户特征向量,还利用了检索到的K个语句对应的语义表征向量,由于这K个语句来源于人工知识库,从而可以有效利用与目标用户最相关的人工经验,能很好的解决叠词、错误词等问题,适用性强,文本质量佳,因此能够兼顾效率和文本质量。

根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。

根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所描述的方法。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号