首页> 中国专利> 基于深度学习的用户评分模型训练方法及相关设备

基于深度学习的用户评分模型训练方法及相关设备

摘要

本发明涉及人工智能技术领域,提供一种基于深度学习的用户评分模型训练方法及相关设备,包括:基于离散特征和连续特征提取出组合特征和高阶特征;根据组合特征和高阶特征生成输入特征,基于输入特征对深度学习网络进行多轮次的迭代训练;获取当前轮次中深度学习网络中上一层网络层的输出,对上一层网络层的输出进行定点化处理得到定点化特征,将定点化特征输入下一层网络层;在确定下一层网络层的输出满足定点化处理结束条件时,对下一层网络层以后的网络层进行常规化处理,直到完成当前轮次的迭代训练过程;在完成多轮次的迭代训练后得到用户评分模型。本发明提高了模型的训练效率和训练效果,从而提高预测效率和预测效果。

著录项

  • 公开/公告号CN112668788A

    专利类型发明专利

  • 公开/公告日2021-04-16

    原文格式PDF

  • 申请/专利权人 中国平安人寿保险股份有限公司;

    申请/专利号CN202011614906.4

  • 发明设计人 王辉;张巧丽;

    申请日2020-12-30

  • 分类号G06Q10/04(20120101);G06Q10/06(20120101);G06N3/04(20060101);G06N3/08(20060101);G06K9/62(20060101);

  • 代理机构44334 深圳市赛恩倍吉知识产权代理有限公司;

  • 代理人杨毅玲;刘丽华

  • 地址 518000 广东省深圳市福田区益田路5033号平安金融中心14、15、16、41、44、45、46层

  • 入库时间 2023-06-19 10:38:35

说明书

技术领域

本发明涉及人工智能技术领域,具体涉及一种基于深度学习的用户评分模型训练方法、装置、计算机设备及存储介质。

背景技术

在代理人增员主体打分模型的训练过程中,特征的构造以及让特征能有更好的表示是重中之重的工作,然而,发明人在实现本发明的过程中发现,在特征构造的过程中大多用的是低阶特征或者低阶特征的相互组合,缺乏高阶特征的表示,这势必会造成一定的特征损失,导致模型训练精度降低,从而降低了模型预测的准确率;此外,随着深度学习网络的层数的加深,模型预测准确率虽有提升,但计算度和复杂度也随之增长,导致计算功耗较多,模型训练效率较低,模型预测效率较低。

发明内容

鉴于以上内容,有必要提出一种基于深度学习的用户评分模型训练方法、装置、计算机设备及存储介质,提高了用户评分模型的训练效率和训练效果,从而提高了用户评分的预测效率和预测效果。

本发明的第一方面提供一种基于深度学习的用户评分模型训练方法,所述方法包括:

基于用户的离散特征和连续特征提取出组合特征和高阶特征;

根据所述组合特征和所述高阶特征生成输入特征,并基于所述输入特征对深度学习网络进行多轮次的迭代训练;

获取当前轮次中所述深度学习网络中上一层网络层的输出,并对所述上一层网络层的输出进行定点化处理得到定点化特征,将所述定点化特征输入下一层网络层;

判断所述下一层网络层的输出是否满足定点化处理结束条件;

在确定所述下一层网络层的输出满足所述定点化处理结束条件时,对所述深度学习网络中所述下一层网络层以后的网络层进行常规化处理,直到完成当前轮次的迭代训练过程,并在完成所述多轮次的迭代训练后,得到用户评分模型。

在一个可选的实施例中,所述对所述上一层网络层的输出进行定点化处理得到定点化特征包括:

获取所述上一层网络层的输出中的最大权重和最小权重;

根据所述最大权重和所述最小权重对所述上一层网络层的输出中的每个权重进行缩放处理;

对缩放处理后的每个权重进行取整处理得到定点化权重;

根据所述定点化权重及对应的向量计算得到定点化特征。

在一个可选的实施例中,所述根据所述最大权重和所述最小权重对所述上一层网络层的输出中的每个权重进行缩放处理包括:

获取操作系统的位宽,并根据所述位宽确定参数取值范围;

定义多个缩放因子;

计算每个缩放因子与所述最大权重的乘积得到第一取值,及计算每个缩放因子与所述最小权重的乘积得到第二取值;

将缩放因子对应的所述第一取值及所述第二取值均在所述参数取值范围内的缩放因子确定为目标缩放因子;

根据所述目标缩放因子对所述上一层网络层的输出中的每个权重进行缩放处理。

在一个可选的实施例中,所述判断所述下一层网络层的输出是否满足定点化处理结束条件包括:

获取所述下一层网络层的输出中的多个原始权重;

计算所述下一层网络层的多个定点化权重;

计算所述多个原始权重与所述多个定点化权重之间的权重损失;

判断所述权重损失是否小于预设权重损失阈值;

当所述权重损失小于所述预设权重损失阈值时,确定所述下一层网络层的输出满足定点化处理结束条件;

当所述权重损失大于或者等于所述预设权重损失阈值时,确定所述下一层网络层的输出不满足定点化处理结束条件。

在一个可选的实施例中,所述基于用户的离散特征和连续特征提取出组合特征和高阶特征包括:

根据所述离散特征和所述连续特征生成稠密特征;

使用注意因子分解机基于所述稠密特征提取出组合特征;

使用多层感知机基于所述稠密特征提取出高阶特征。

在一个可选的实施例中,所述根据所述离散特征和所述连续特征生成稠密特征包括:

对所述离散特征进行独热编码得到编码特征;

根据所述编码特征和所述连续特征生成拼接特征;

对所述拼接特征分别进行横向归一化处理和纵向归一化处理得到稠密特征。

在一个可选的实施例中,所述方法还包括:

获取待测用户的用户输入特征;

输入所述用户输入特征至所述用户评分模型中;

将所述用户评分模型中的最后一层的输出输入至softmax层;

通过所述softmax层计算得到多个评分及每个评分的概率;

根据所述多个评分及每个评分的概率计算所述待测用户的目标评分。

本发明的第二方面提供一种基于深度学习的用户评分模型训练装置,所述装置包括:

提取模块,用于基于用户的离散特征和连续特征提取出组合特征和高阶特征;

输入模块,用于根据所述组合特征和所述高阶特征生成输入特征,并基于所述输入特征对深度学习网络进行多轮次的迭代训练;

处理模块,用于获取当前轮次中所述深度学习网络中上一层网络层的输出,并对所述上一层网络层的输出进行定点化处理得到定点化特征,将所述定点化特征输入下一层网络层;

判断模块,用于判断所述下一层网络层的输出是否满足定点化处理结束条件;

训练模块,在确定所述下一层网络层的输出满足所述定点化处理结束条件时,对所述深度学习网络中所述下一层网络层以后的网络层进行常规化处理,直到完成当前轮次的迭代训练过程,并在完成所述多轮次的迭代训练后,得到用户评分模型。

本发明的第三方面提供一种计算机设备,所述计算机设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现所述基于深度学习的用户评分模型训练方法。

本发明的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述基于深度学习的用户评分模型训练方法。

综上所述,本发明所述的基于深度学习的用户评分模型训练方法、装置、计算机设备及存储介质,基于用户的离散特征和连续特征提取出组合特征和高阶特征,并根据所述组合特征和所述高阶特征生成输入特征,基于所述输入特征对深度学习网络进行多轮次的迭代训练时,使得训练深度学习网络的特征不仅具有低阶特征的组合特征,还具有高阶特征,特征的表示更加全面,能够提高深度学习网络的训练精度,从而提高深度学习网络的预测准确率;在迭代训练的过程中,获取当前轮次中所述深度学习网络中上一层网络层的输出,并对所述上一层网络层的输出进行定点化处理得到定点化特征,将所述定点化特征输入下一层网络层,在确定所述下一层网络层的输出满足定点化处理结束条件时,对所述深度学习网络中所述下一层网络层以后的网络层进行常规化处理,直到完成当前轮次的迭代训练过程,对所述下一层网络层的输出经过定点化处理后,能够缩小所述下一层网络层的输出的特征,便于深度学习网络快速达到收敛,提高了深度学习网络的训练效率,从而提高了用户评分模型的训练效率。

附图说明

图1是本发明实施例一提供的基于深度学习的用户评分模型训练方法的流程图。

图2是本发明实施例二提供的基于深度学习的用户评分模型训练装置的结构图。

图3是本发明实施例三提供的计算机设备的结构示意图。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。

本发明实施例提供的基于深度学习的用户评分模型训练方法由计算机设备执行,相应地,基于深度学习的用户评分模型训练装置运行于计算机设备中。

图1是本发明实施例一提供的基于深度学习的用户评分模型训练方法的流程图。所述基于深度学习的用户评分模型训练方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些可以省略。

S11,基于用户的离散特征和连续特征提取出组合特征和高阶特征。

为预测待测用户的评分,计算机设备首先获取多个用户的多个特征进行深度学习网络的训练,基于训练好的深度学习网络预测待测用户的评分。

在代理人增员预测场景中,所述待测用户可以是新入司的代理人,所述多个用户可以是已入司的代理人。通过训练出深度学习网络来预测新入司的代理人的增员情况。

所述多个特征可以包括离散特征和连续特征,其中,所述离散特征包括性别、年龄、学历等,所述连续特征包括保单金额,保单日期,学习时间等。

获取的多个离散特征和多个连续特征是指低阶特征,基于用户的多个离散特征和多个连续特征提取出的多个组合特征是多个低阶特征的组合,基于用户的多个离散特征和多个连续特征提取出的多个高阶特征是相对于低阶特征而言的特征。

在一个可选的实施例中,所述基于用户的离散特征和连续特征提取出组合特征和高阶特征包括:

根据所述离散特征和所述连续特征生成稠密特征;

使用注意因子分解机基于所述稠密特征提取出组合特征;

使用多层感知机基于所述稠密特征提取出高阶特征。

其中,所述注意因子分解机(Attentional Factorization Machine,AFM)将注意力机制引入到特征交叉模块,对高维稀疏特征进行降维,将其表示为低维稠密特征,每个特征对应一个隐向量,将特征值与隐向量进行乘积,得到特征向量作为实际特征表示。使用所述注意因子分解机能够有效的提取出所述稠密特征中的组合特征,且能体现两个组合特征的权重不同。

其中,所述多层感知机可以是多层深度神经网络(Deep Neural Networks,DNN),DNN能够直接获取稠密特征的高阶表示。

计算机设备根据同一个用户的多个离散特征和多个连续特征生成稠密特征,并使用AFM提取出稠密特征中的多个组合特征和使用DNN提取出稠密特征中的多个高阶特征,并基于提取出的多个组合特征和多个高阶特征训练深度学习网络。

该可选的实施例中,由于提取出的组合特征考虑了低阶特征之间的交叉组合,且不同的组合特征具有不同的权重,基于离散特征和连续特征提取出的组合特征和高阶特征具有更全面的表示,避免了特征的损失,因而基于组合特征和高阶特征训练深度学习网络,能够提高深度学习网络的训练精度,从而提高深度学习网络的预测准确率。

在一个可选的实施例中,所述根据所述离散特征和所述连续特征生成稠密特征包括:

对所述离散特征进行独热编码得到编码特征;

根据所述编码特征和所述连续特征生成拼接特征;

对所述拼接特征分别进行横向归一化处理和纵向归一化处理得到稠密特征。

在对所述离散特征进行独热编码之前,计算机设备还可以对多个离散特征进行空值处理,并对进行空值处理的多个离散特征进行独热编码。具体实施时,计算机设备计算多个离散特征的平均离散特征,使用平均离散特征填充多个离散特征中的空值。

独热编码即One-Hot编码,又称一位有效编码。计算机设备可以计算多个离散特征的数量,根据所述数量生成N位状态寄存器,使用所述N位状态寄存器对每个离散特征进行独热编码。使用N位状态寄存器来对N个状态进行编码,每个状态都有独立的寄存器位,并且在任意时候,其中只有一位有效。N为所述数量。

在对任意一个用户的多个离散特征进行独热编码得到编码特征之后,将该用户的多个编码特征和多个连续特征进行拼接得到该用户的拼接向量,然后将所有用户的拼接向量进行组合得到一个拼接特征。其中,所述拼接特征的维度为(独热编码的个数+连续特征的个数)*用户的个数,所述拼接特征中的每一行表示一个用户的拼接向量,每一列表示多个用户的同一个字段的特征。

由于不同的用户的拼接向量差异较大,为了后续训练深度学习网络时能够快速的收敛,在横向方向上对所述拼接特征中的每一行进行归一化处理。而不同字段的特征之间的差异也较大,为了进一步加快训练深度学习网络的收敛速度,在纵向方向上对所述拼接特征中的每一列进行归一化处理。

该可选的实施例中,通过对离散特征进行独热编码得到编码特征,能够将离散特征近似变成连续特征,并根据所述编码特征和所述连续特征生成拼接特征之后,对所述拼接特征分别进行横向归一化处理和纵向归一化处理,得到的稠密向量,无论是在横向上,还是在纵向上,均具有统一的量纲,能够加快训练深度学习网络的收敛速度,从而提高深度学习网络的训练效率。

S12,根据所述组合特征和所述高阶特征生成输入特征,并基于所述输入特征对深度学习网络进行多轮次的迭代训练。

深度学习网络的框架可以包括但不限于Caffe、MxNet、TensorFlow等浮点型的网络框架。

将每个用户的组合特征和高阶特征进行拼接即可生成输入特征,输入多个用户的输入特征至深度学习网络中进行学习与训练。

S13,获取当前轮次中所述深度学习网络中上一层网络层的输出,并对所述上一层网络层的输出进行定点化处理得到定点化特征,将所述定点化特征输入下一层网络层。

深度学习网络的第一层网络层为输入层,最后一层网络层连接softmax层。第一层网络层的输出作为第二层网络层的输入,第二层网络层的输出作为第三层网络层的输入,以此类推。

所述上一层网络层是指除第一层网络层的其他任意一层网络层。

对于每一轮次的训练而言,计算机设备首先对所述上一层网络层的输出进行定点化处理得到第一定点化特征,再将所述第一定点化特征输入下一层网络层;所述第一定点化特征经过所述下一层网络层的计算后进行输出,将所述下一层网络层的输出进行定点化处理得到第二定点化特征,再将所述第二定点化特征输入下下层网络层;以此类推;直至完成每一伦次的训练。

在一个可选的实施例中,所述对所述上一层网络层的输出进行定点化处理得到定点化特征包括:

获取所述上一层网络层的输出中的最大权重和最小权重;

根据所述最大权重和所述最小权重对所述上一层网络层的输出中的每个权重进行缩放处理;

对缩放处理后的每个权重进行取整处理得到定点化权重;

根据所述定点化权重及对应的向量计算得到定点化特征。

可以对缩放处理后的每个权重进行向下取整处理得到定点化权重,向下取整能够缩小权重,采用缩小后的权重与特征进行计算得到较小的特征乘积,从而使得所述下一层网络层的输入变小。

该可选的实施例中,根据所述上一层网络层的输出中的最大权重和最小权重对所述上一层网络层的输出中的每个权重进行缩放处理来保证所述上一层网络层的输出中的所有权重均在合理的位宽中,避免权重的溢出。

在一个可选的实施例中,所述根据所述最大权重和所述最小权重对所述上一层网络层的输出中的每个权重进行缩放处理包括:

获取操作系统的位宽,并根据所述位宽确定参数取值范围;

定义多个缩放因子;

计算每个缩放因子与所述最大权重的乘积得到第一取值,及计算每个缩放因子与所述最小权重的乘积得到第二取值;

将缩放因子对应的所述第一取值及所述第二取值均在所述参数取值范围内的缩放因子确定为目标缩放因子;

根据所述目标缩放因子对所述上一层网络层的输出中的每个权重进行缩放处理。

不同的操作系统具有不同的位宽,所述位宽是指操作系统所能允许的字节数的取值范围。示例性的,所述操作系统的位宽可以为8比特,8比特的参数取值范围为[-128,127]。

由于对深度学习网络进行训练的过程中,会随着操作系统的位宽的不同造成不同程度的精度损失,高的位宽会带来较小的精度损失,但运行效率会更慢,低的位宽虽会有较快的运行效率,但同时带来较高的精度损失。

示例性的,假设缩放因子为a1,a2,a3,计算a1与最大权重的乘积为p11,计算a1与最小权重的乘积为p12,计算a2与最大权重的乘积为p21,计算a2与最小权重的乘积为p22,计算a3与最大权重的乘积为p31,计算a3与最小权重的乘积为p32,如果p11和p12均在所述参数取值范围内,则表明缩放因子能够有效的将最大权重和最小权重均缩放在所述参数取值范围内,则将缩放因子a1确定为目标缩放因子,使用所述目标缩放因子对所述上一层网络层的输出中的每个权重均进行缩放处理,从而将上一层网络层的输出中的每个权重均缩放到所述参数取值范围内。

该可选的实施例中,通过操作系统的位宽确定参数取值范围,根据所述参数取值范围及所述上一层网络层的输出中的所述最大权重和所述最小权重,来寻找一个适合的缩放因子,从而实现将所述上一层网络层的输出中的所有权重均缩放到参数取值范围内,保证计算机设备上的的运行效率的同时又能保证较小的精度损失,从而保证深度学习网络的训练效率的同时又能保证深度学习网络的精确度。

S14,判断所述下一层网络层的输出是否满足定点化处理结束条件。

计算机设备在将所述定点化特征输入下一层网络层并经过所述下一层网络层的计算之后,首先判断下一层网络层的输出是否满足定点化处理结束条件。

在一个可选的实施例中,所述判断所述下一层网络层的输出是否满足定点化处理结束条件包括:

获取所述下一层网络层的输出中的多个原始权重;

计算所述下一层网络层的多个定点化权重;

计算所述多个原始权重与所述多个定点化权重之间的权重损失;

判断所述权重损失是否小于预设权重损失阈值;

当所述权重损失小于所述预设权重损失阈值时,确定所述下一层网络层的输出满足定点化处理结束条件;

当所述权重损失大于或者等于所述预设权重损失阈值时,确定所述下一层网络层的输出不满足定点化处理结束条件。

每一层网络层的输出包括权重及特征。

其中,所述下一层网络层的输出中的原始权重是指未经过定点化处理的权重。

下一层网络层的输出中的原始权重与经过定点化处理之后的定点化权重之间的权重损失小于预设权重损失阈值,表明未经过定点化处理的权重和经过定点化处理的权重之间的差异非常小,那么未经过定点化处理的权重与特征之间的乘积和经过定点化处理的权重与特征之间的乘积的差异也会非常小,因此,定点化处理意义不大,不对所述下一层网络层的输出经过定点化处理,能够有效的保留所述下一层网络层的输出的所有特征,确保深度学习网络的训练精确度;下一层网络层的输出中的原始权重与经过定点化处理之后的定点化权重之间的权重损失大于或者等于(大于或者等于)预设权重损失阈值,表明未经过定点化处理的权重和经过定点化处理的权重之间的差异较大,那么未经过定点化处理的权重与特征之间的乘积和经过定点化处理的权重与特征之间的乘积的差异也会较大,因此,对所述下一层网络层的输出经过定点化处理后,能够缩小所述下一层网络层的输出的特征,便于深度学习网络快速达到收敛。

该可选的实施例中,通过判断所述下一层网络层的输出是否满足定点化处理结束条件来确定是否对所述下一层网络层的输出进行定点化处理,对所述下一层网络层的输出进行定点化处理能够使深度学习网络快速收敛,不对所述下一层网络层的输出进行定点化处理能够保留深度学习网络的学习特征,确保深度学习网络的学习精确度。

S15,在确定所述下一层网络层的输出满足所述定点化处理结束条件时,对所述深度学习网络中所述下一层网络层以后的网络层进行常规化处理,直到完成当前轮次的迭代训练过程,并在完成所述多轮次的迭代训练后,得到用户评分模型。

当确定所述下一层网络层的输出不满足定点化处理结束条件时,继续对所述下一层网络层的输出进行定点化处理得到定点化特征,通过将所述定点化特征输入下下层网络层;然后通过所述下下层网络层对输入所述下下层网络层的定点化特征进行计算之后,判断所述下下层网络层的输出是否满足定点化处理结束条件;以此类推。

当确定所述下一层网络层的输出满足所述定点化处理结束条件时,对所述深度学习网络中所述下一层网络层以后的层进行常规化处理。所述深度学习网络中所述下一层网络层以后的层是指所述深度学习网络中位于所述下一层网络层之后的网络层。对所述深度学习网络中所述下一层网络层以后的网络层进行常规化处理是指对所述下一层网络层以后的网络层不进行定点化处理。

在一个可选的实施例中,所述方法还包括:使用迭代训练完成的用户评分模型计算待测用户的目标评分。

计算机设备可以预先设置迭代次数,当迭代训练的次数大于预先设置的迭代次数时,结束对深度学习网络的训练。

在深度学习网络迭代训练结束后,根据所述深度学习网络的最后一层的输出计算待测用户的目标评分。

在一个可选的实施例中,所述使用迭代训练完成的用户评分模型计算待测用户的目标评分包括:

获取待测用户的用户输入特征;

输入所述用户输入特征至所述用户评分模型中;

将所述用户评分模型中的最后一层的输出输入至softmax层;

通过所述softmax层计算得到多个评分及每个评分的概率;

根据所述多个评分及每个评分的概率计算所述待测用户的目标评分。

计算机设备获取待测用户的多个离散特征和多个连续特征,并根据待测用户的多个离散特征和连续特征提取出目标组合特征和目标高阶特征,根据所述目标组合特征和所述目标高阶特征生成目标输入特征,输入所述目标输入特征至训练好的深度学习网络中进行预测,获取softmax层输出的多个评分及每个评分的概率,并将概率按照倒序排序,将排序在第一的概率对应的评分确定为待测用户的目标评分。对目标评分进行映射即可确定所述待测用户的增员情况。

综上所述,本发明基于用户的离散特征和连续特征提取出组合特征和高阶特征,并根据所述组合特征和所述高阶特征生成输入特征,基于所述输入特征对深度学习网络进行多轮次的迭代训练时,使得训练深度学习网络的特征不仅具有低阶特征的组合特征,还具有高阶特征,特征的表示更加全面,能够提高深度学习网络的训练精度,从而提高深度学习网络的预测准确率;在迭代训练的过程中,获取当前轮次中所述深度学习网络中上一层网络层的输出,并对所述上一层网络层的输出进行定点化处理得到定点化特征,将所述定点化特征输入下一层网络层,在确定所述下一层网络层的输出满足定点化处理结束条件时,对所述深度学习网络中所述下一层网络层以后的网络层进行常规化处理,直到完成当前轮次的迭代训练过程,对所述下一层网络层的输出经过定点化处理后,能够缩小所述下一层网络层的输出的特征,便于深度学习网络快速达到收敛,提高了深度学习网络的训练效率,从而提高了用户评分模型的训练效率,进而在使用迭代训练完成的用户评分模型计算待测用户的目标评分时,能够提高对待测用户的目标评分的预测效率。

需要强调的是,为进一步保证上述深度学习网络的私密性和安全性,上述深度学习网络可存储于区块链的节点中。

图2是本发明实施例二提供的基于深度学习的用户评分模型训练装置的结构图。

在一些实施例中,所述基于深度学习的用户评分模型训练装置20可以包括多个由计算机程序段所组成的功能模块。所述基于深度学习的用户评分模型训练装置20中的各个程序段的计算机程序可以存储于计算机设备的存储器中,并由至少一个处理器所执行,以执行(详见图1描述)基于深度学习的用户评分模型训练的功能。

本实施例中,所述基于深度学习的用户评分模型训练装置20根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:提取模块201、输入模块202、处理模块203、判断模块204、训练模块205及计算模块206。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。

所述提取模块201,用于基于用户的离散特征和连续特征提取出组合特征和高阶特征。

为预测待测用户的评分,计算机设备首先获取多个用户的多个特征进行深度学习网络的训练,基于训练好的深度学习网络预测待测用户的评分。

在代理人增员预测场景中,所述待测用户可以是新入司的代理人,所述多个用户可以是已入司的代理人。通过训练出深度学习网络来预测新入司的代理人的增员情况。

所述多个特征可以包括离散特征和连续特征,其中,所述离散特征包括性别、年龄、学历等,所述连续特征包括保单金额,保单日期,学习时间等。

获取的多个离散特征和多个连续特征是指低阶特征,基于用户的多个离散特征和多个连续特征提取出的多个组合特征是多个低阶特征的组合,基于用户的多个离散特征和多个连续特征提取出的多个高阶特征是相对于低阶特征而言的特征。

在一个可选的实施例中,所述提取模块201基于用户的离散特征和连续特征提取出组合特征和高阶特征包括:

根据所述离散特征和所述连续特征生成稠密特征;

使用注意因子分解机基于所述稠密特征提取出组合特征;

使用多层感知机基于所述稠密特征提取出高阶特征。

其中,所述注意因子分解机(Attentional Factorization Machine,AFM)将注意力机制引入到特征交叉模块,对高维稀疏特征进行降维,将其表示为低维稠密特征,每个特征对应一个隐向量,将特征值与隐向量进行乘积,得到特征向量作为实际特征表示。使用所述注意因子分解机能够有效的提取出所述稠密特征中的组合特征,且能体现两个组合特征的权重不同。

其中,所述多层感知机可以是多层深度神经网络(Deep Neural Networks,DNN),DNN能够直接获取稠密特征的高阶表示。

计算机设备根据同一个用户的多个离散特征和多个连续特征生成稠密特征,并使用AFM提取出稠密特征中的多个组合特征和使用DNN提取出稠密特征中的多个高阶特征,并基于提取出的多个组合特征和多个高阶特征训练深度学习网络。

该可选的实施例中,由于提取出的组合特征考虑了低阶特征之间的交叉组合,且不同的组合特征具有不同的权重,基于离散特征和连续特征提取出的组合特征和高阶特征具有更全面的表示,避免了特征的损失,因而基于组合特征和高阶特征训练深度学习网络,能够提高深度学习网络的训练精度,从而提高深度学习网络的预测准确率。

在一个可选的实施例中,所述根据所述离散特征和所述连续特征生成稠密特征包括:

对所述离散特征进行独热编码得到编码特征;

根据所述编码特征和所述连续特征生成拼接特征;

对所述拼接特征分别进行横向归一化处理和纵向归一化处理得到稠密特征。

在对所述离散特征进行独热编码之前,计算机设备还可以对多个离散特征进行空值处理,并对进行空值处理的多个离散特征进行独热编码。具体实施时,计算机设备计算多个离散特征的平均离散特征,使用平均离散特征填充多个离散特征中的空值。

独热编码即One-Hot编码,又称一位有效编码。计算机设备可以计算多个离散特征的数量,根据所述数量生成N位状态寄存器,使用所述N位状态寄存器对每个离散特征进行独热编码。使用N位状态寄存器来对N个状态进行编码,每个状态都有独立的寄存器位,并且在任意时候,其中只有一位有效。N为所述数量。

在对任意一个用户的多个离散特征进行独热编码得到编码特征之后,将该用户的多个编码特征和多个连续特征进行拼接得到该用户的拼接向量,然后将所有用户的拼接向量进行组合得到一个拼接特征。其中,所述拼接特征的维度为(独热编码的个数+连续特征的个数)*用户的个数,所述拼接特征中的每一行表示一个用户的拼接向量,每一列表示多个用户的同一个字段的特征。

由于不同的用户的拼接向量差异较大,为了后续训练深度学习网络时能够快速的收敛,在横向方向上对所述拼接特征中的每一行进行归一化处理。而不同字段的特征之间的差异也较大,为了进一步加快训练深度学习网络的收敛速度,在纵向方向上对所述拼接特征中的每一列进行归一化处理。

该可选的实施例中,通过对离散特征进行独热编码得到编码特征,能够将离散特征近似变成连续特征,并根据所述编码特征和所述连续特征生成拼接特征之后,对所述拼接特征分别进行横向归一化处理和纵向归一化处理,得到的稠密向量,无论是在横向上,还是在纵向上,均具有统一的量纲,能够加快训练深度学习网络的收敛速度,从而提高深度学习网络的训练效率。

所述输入模块202,用于根据所述组合特征和所述高阶特征生成输入特征,并基于所述输入特征对深度学习网络进行多轮次的迭代训练。

深度学习网络的框架可以包括但不限于Caffe、MxNet、TensorFlow等浮点型的网络框架。

将每个用户的组合特征和高阶特征进行拼接即可生成输入特征,输入多个用户的输入特征至深度学习网络中进行学习与训练。

所述处理模块203,用于获取当前轮次中所述深度学习网络中上一层网络层的输出,并对所述上一层网络层的输出进行定点化处理得到定点化特征,将所述定点化特征输入下一层网络层。

深度学习网络的第一层网络层为输入层,最后一层网络层连接softmax层。第一层网络层的输出作为第二层网络层的输入,第二层网络层的输出作为第三层网络层的输入,以此类推。

所述上一层网络层是指除第一层网络层的其他任意一层网络层。

对于每一轮次的训练而言,计算机设备首先对所述上一层网络层的输出进行定点化处理得到第一定点化特征,再将所述第一定点化特征输入下一层网络层;所述第一定点化特征经过所述下一层网络层的计算后进行输出,将所述下一层网络层的输出进行定点化处理得到第二定点化特征,再将所述第二定点化特征输入下下层网络层;以此类推;直至完成每一伦次的训练。

在一个可选的实施例中,所述处理模块203对所述上一层网络层的输出进行定点化处理得到定点化特征包括:

获取所述上一层网络层的输出中的最大权重和最小权重;

根据所述最大权重和所述最小权重对所述上一层网络层的输出中的每个权重进行缩放处理;

对缩放处理后的每个权重进行取整处理得到定点化权重;

根据所述定点化权重及对应的向量计算得到定点化特征。

可以对缩放处理后的每个权重进行向下取整处理得到定点化权重,向下取整能够缩小权重,采用缩小后的权重与特征进行计算得到较小的特征乘积,从而使得所述下一层网络层的输入变小。

该可选的实施例中,根据所述上一层网络层的输出中的最大权重和最小权重对所述上一层网络层的输出中的每个权重进行缩放处理来保证所述上一层网络层的输出中的所有权重均在合理的位宽中,避免权重的溢出。

在一个可选的实施例中,所述根据所述最大权重和所述最小权重对所述上一层网络层的输出中的每个权重进行缩放处理包括:

获取操作系统的位宽,并根据所述位宽确定参数取值范围;

定义多个缩放因子;

计算每个缩放因子与所述最大权重的乘积得到第一取值,及计算每个缩放因子与所述最小权重的乘积得到第二取值;

将缩放因子对应的所述第一取值及所述第二取值均在所述参数取值范围内的缩放因子确定为目标缩放因子;

根据所述目标缩放因子对所述上一层网络层的输出中的每个权重进行缩放处理。

不同的操作系统具有不同的位宽,所述位宽是指操作系统所能允许的字节数的取值范围。示例性的,所述操作系统的位宽可以为8比特,8比特的参数取值范围为[-128,127]。

由于对深度学习网络进行训练的过程中,会随着操作系统的位宽的不同造成不同程度的精度损失,高的位宽会带来较小的精度损失,但运行效率会更慢,低的位宽虽会有较快的运行效率,但同时带来较高的精度损失。

示例性的,假设缩放因子为a1,a2,a3,计算a1与最大权重的乘积为p11,计算a1与最小权重的乘积为p12,计算a2与最大权重的乘积为p21,计算a2与最小权重的乘积为p22,计算a3与最大权重的乘积为p31,计算a3与最小权重的乘积为p32,如果p11和p12均在所述参数取值范围内,则表明缩放因子能够有效的将最大权重和最小权重均缩放在所述参数取值范围内,则将缩放因子a1确定为目标缩放因子,使用所述目标缩放因子对所述上一层网络层的输出中的每个权重均进行缩放处理,从而将上一层网络层的输出中的每个权重均缩放到所述参数取值范围内。

该可选的实施例中,通过操作系统的位宽确定参数取值范围,根据所述参数取值范围及所述上一层网络层的输出中的所述最大权重和所述最小权重,来寻找一个适合的缩放因子,从而实现将所述上一层网络层的输出中的所有权重均缩放到参数取值范围内,保证计算机设备上的的运行效率的同时又能保证较小的精度损失,从而保证深度学习网络的训练效率的同时又能保证深度学习网络的精确度。

所述判断模块204,用于判断所述下一层网络层的输出是否满足定点化处理结束条件。

计算机设备在将所述定点化特征输入下一层网络层并经过所述下一层网络层的计算之后,首先判断下一层网络层的输出是否满足定点化处理结束条件。

在一个可选的实施例中,所述判断模块204判断所述下一层网络层的输出是否满足定点化处理结束条件包括:

获取所述下一层网络层的输出中的多个原始权重;

计算所述下一层网络层的多个定点化权重;

计算所述多个原始权重与所述多个定点化权重之间的权重损失;

判断所述权重损失是否小于预设权重损失阈值;

当所述权重损失小于所述预设权重损失阈值时,确定所述下一层网络层的输出满足定点化处理结束条件;

当所述权重损失大于或者等于所述预设权重损失阈值时,确定所述下一层网络层的输出不满足定点化处理结束条件。

每一层网络层的输出包括权重及特征。

其中,所述下一层网络层的输出中的原始权重是指未经过定点化处理的权重。

下一层网络层的输出中的原始权重与经过定点化处理之后的定点化权重之间的权重损失小于预设权重损失阈值,表明未经过定点化处理的权重和经过定点化处理的权重之间的差异非常小,那么未经过定点化处理的权重与特征之间的乘积和经过定点化处理的权重与特征之间的乘积的差异也会非常小,因此,定点化处理意义不大,不对所述下一层网络层的输出经过定点化处理,能够有效的保留所述下一层网络层的输出的所有特征,确保深度学习网络的训练精确度;下一层网络层的输出中的原始权重与经过定点化处理之后的定点化权重之间的权重损失大于或者等于(大于或者等于)预设权重损失阈值,表明未经过定点化处理的权重和经过定点化处理的权重之间的差异较大,那么未经过定点化处理的权重与特征之间的乘积和经过定点化处理的权重与特征之间的乘积的差异也会较大,因此,对所述下一层网络层的输出经过定点化处理后,能够缩小所述下一层网络层的输出的特征,便于深度学习网络快速达到收敛。

该可选的实施例中,通过判断所述下一层网络层的输出是否满足定点化处理结束条件来确定是否对所述下一层网络层的输出进行定点化处理,对所述下一层网络层的输出进行定点化处理能够使深度学习网络快速收敛,不对所述下一层网络层的输出进行定点化处理能够保留深度学习网络的学习特征,确保深度学习网络的学习精确度。

所述训练模块205,用于在确定所述下一层网络层的输出满足所述定点化处理结束条件时,对所述深度学习网络中所述下一层网络层以后的网络层进行常规化处理,直到完成当前轮次的迭代训练过程,并在完成所述多轮次的迭代训练后,得到用户评分模型。

当确定所述下一层网络层的输出不满足定点化处理结束条件时,继续对所述下一层网络层的输出进行定点化处理得到定点化特征,通过将所述定点化特征输入下下层网络层;然后通过所述下下层网络层对输入所述下下层网络层的定点化特征进行计算之后,判断所述下下层网络层的输出是否满足定点化处理结束条件;以此类推。

当确定所述下一层网络层的输出满足所述定点化处理结束条件时,对所述深度学习网络中所述下一层网络层以后的层进行常规化处理。所述深度学习网络中所述下一层网络层以后的层是指所述深度学习网络中位于所述下一层网络层之后的网络层。对所述深度学习网络中所述下一层网络层以后的网络层进行常规化处理是指对所述下一层网络层以后的网络层不进行定点化处理。

所述计算模块206,用于使用迭代训练完成的用户评分模型计算待测用户的目标评分。

计算机设备可以预先设置迭代次数,当迭代训练的次数大于预先设置的迭代次数时,结束对深度学习网络的训练。

在深度学习网络迭代训练结束后,根据所述深度学习网络的最后一层的输出计算待测用户的目标评分。

在一个可选的实施例中,所述计算模块206使用迭代训练完成的用户评分模型计算待测用户的目标评分包括:

获取待测用户的用户输入特征;

输入所述用户输入特征至所述用户评分模型中;

将所述用户评分模型中的最后一层的输出输入至softmax层;

通过所述softmax层计算得到多个评分及每个评分的概率;

根据所述多个评分及每个评分的概率计算所述待测用户的目标评分。

计算机设备获取待测用户的多个离散特征和多个连续特征,并根据待测用户的多个离散特征和连续特征提取出目标组合特征和目标高阶特征,根据所述目标组合特征和所述目标高阶特征生成目标输入特征,输入所述目标输入特征至训练好的深度学习网络中进行预测,获取softmax层输出的多个评分及每个评分的概率,并将概率按照倒序排序,将排序在第一的概率对应的评分确定为待测用户的目标评分。对目标评分进行映射即可确定所述待测用户的增员情况。

综上所述,本发明基于用户的离散特征和连续特征提取出组合特征和高阶特征,并根据所述组合特征和所述高阶特征生成输入特征,基于所述输入特征对深度学习网络进行多轮次的迭代训练时,使得训练深度学习网络的特征不仅具有低阶特征的组合特征,还具有高阶特征,特征的表示更加全面,能够提高深度学习网络的训练精度,从而提高深度学习网络的预测准确率;在迭代训练的过程中,获取当前轮次中所述深度学习网络中上一层网络层的输出,并对所述上一层网络层的输出进行定点化处理得到定点化特征,将所述定点化特征输入下一层网络层,在确定所述下一层网络层的输出满足定点化处理结束条件时,对所述深度学习网络中所述下一层网络层以后的网络层进行常规化处理,直到完成当前轮次的迭代训练过程,对所述下一层网络层的输出经过定点化处理后,能够缩小所述下一层网络层的输出的特征,便于深度学习网络快速达到收敛,提高了深度学习网络的训练效率,从而提高了用户评分模型的训练效率,进而在使用迭代训练完成的用户评分模型计算待测用户的目标评分时,能够提高对待测用户的目标评分的预测效率。

需要强调的是,为进一步保证上述深度学习网络的私密性和安全性,上述深度学习网络可存储于区块链的节点中。

参阅图3所示,为本发明实施例三提供的计算机设备的结构示意图。在本发明较佳实施例中,所述计算机设备3包括存储器31、至少一个处理器32、至少一条通信总线33及收发器34。

本领域技术人员应该了解,图3示出的计算机设备的结构并不构成本发明实施例的限定,既可以是总线型结构,也可以是星形结构,所述计算机设备3还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。

在一些实施例中,所述计算机设备3是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。所述计算机设备3还可包括客户设备,所述客户设备包括但不限于任何一种可与客户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、数码相机等。

需要说明的是,所述计算机设备3仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。

在一些实施例中,所述存储器31中存储有计算机程序,所述计算机程序被所述至少一个处理器32执行时实现如所述的基于深度学习的用户评分模型训练方法中的全部或者部分步骤。所述存储器31包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read-Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。

进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。

本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。

在一些实施例中,所述至少一个处理器32是所述计算机设备3的控制核心(Control Unit),利用各种接口和线路连接整个计算机设备3的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行计算机设备3的各种功能和处理数据。例如,所述至少一个处理器32执行所述存储器中存储的计算机程序时实现本发明实施例中所述的基于深度学习的用户评分模型训练方法的全部或者部分步骤;或者实现基于深度学习的用户评分模型训练装置的全部或者部分功能。所述至少一个处理器32可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。

在一些实施例中,所述至少一条通信总线33被设置为实现所述存储器31以及所述至少一个处理器32等之间的连接通信。

尽管未示出,所述计算机设备3还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述计算机设备3还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。

上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,计算机设备,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。本发明陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号