一种用户行为评估方法、计算设备及存储介质与流程

文档序号:19376365发布日期:2019-12-10 23:54阅读:191来源:国知局
一种用户行为评估方法、计算设备及存储介质与流程

本发明涉及数据处理技术领域,特别涉及一种用户行为评估方法、计算设备及存储介质。



背景技术:

随着移动互联网的迅猛发展,用户在互联网中的各种行为将会产生多种类型的数据,通过这些数据可以对用户的行为进行评估或者预测。例如,在个人征信(即综合信用)业务中,通过多种渠道可以获得用户的多模态数据,包括中国人民银行出具的征信报告(以下简称人行征信报告)数据,用户阅读相关公众号文章以及和公众号服务号的交互数据等。

对这些多模态数据进行征信预测时,现有的方法是对每个模态数据的预测模型进行加权,得到最终的预测结果。但是,考虑到不同模态的数据具备不同的特点,现有的方法导致预测结果会有较大差异,最终的评估结果不够准确。



技术实现要素:

有鉴于此,本发明实施例提供了一种用户行为评估方法、计算设备及存储介质,能够提升训练参数的精准度以及评估结果的准确性,提高计算设备的资源利用率。

具体地,本发明实施例的技术方案是这样实现的:

本发明提供了一种用户行为评估方法,包括:

获取至少一个用户的行为数据,根据所述行为数据确定初始样本数据;

获取所述初始样本数据的用户所对应的信用数据,从所述信用数据中提取辅助信息;

创建并训练用于评估用户行为的多层神经网络,并在每次迭代时执行以下处理:选择上次迭代时使用的一部分辅助信息作为当前辅助信息,根据所述初始样本数据和所述当前辅助信息确定当前训练结果;在训练结束后获得所述多层神经网络的训练参数;及,

获取待评估用户的当前行为数据,基于所述多层神经网络根据所述训练参数对所述当前行为数据进行预测,获得所述待评估用户的信用评估结果。

本发明又提供了一种计算设备,包括:

接收模块,用于获取至少一个用户的行为数据,根据所述行为数据确定初始样本数据;

获取模块,用于获取所述初始样本数据的用户所对应的信用数据,从所述信用数据中提取辅助信息;获取待评估用户的当前行为数据;

创建模块,用于创建用于评估用户行为的多层神经网络;

训练模块,用于训练所述创建模块创建的多层神经网络,在每次迭代时执行以下处理:选择上次迭代时使用的一部分辅助信息作为当前辅助信息,根据所述初始样本数据和所述当前辅助信息确定当前训练结果;在训练结束后获得所述多层神经网络的训练参数;及,

预测模块,用于基于所述创建模块创建的多层神经网络,根据所述训练模块获得的训练参数对所述当前行为数据进行预测,获得所述待评估用户的信用评估结果。

此外,本发明还提供了一种计算机可读存储介质,存储有计算机可读指令,可以使至少一个处理器执行本申请实施例中所述的方法。

由上述技术方案可见,本发明实施例提供的方法,通过在训练时复用行为数据和信用数据,使得训练参数中融入了信用数据的辅助信息,使得训练的过程更加精准,最终对用户行为的预测结果更加准确;同时还可以显著减少所需的行为样本数据,大大提高了训练时的计算效率,减少了训练所需的时间;此外,训练结束后已删除信用数据,在预测时只需要用户的当前行为数据,加快了预测的处理速度,提升了计算设备的资源利用率。

附图说明

图1为本发明一个实施例所涉及的实施环境示意图;

图2为本发明一个实施例中用户行为评估方法的流程示意图;

图3为本发明一个实施例中多层神经网络的结构示意图;

图4为本发明一个实施例中训练多层神经网络方法的流程示意图;

图5为本发明另一个实施例中训练多层神经网络方法的流程示意图;

图6为本发明另一个实施例中用户行为评估方法的流程示意图;

图7为本发明一个实施例中计算设备的结构示意图;

图8为本发明另一个实施例中计算设备的结构示意图;

图9为本发明又一个实施例中计算设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。

图1为本发明一个实施例所涉及的实施环境示意图。如图1所示,在用户行为评估系统100中包括终端设备101、评估服务器102以及信用记录服务器105。其中,评估服务器102又包括数据库103、训练(学习)子服务器1041及预测子服务器1042。数据库103又具体包括信用子数据库1031和交互子数据库1032。

根据本发明的实施例,终端设备101接收用户的操作,产生个人行为数据,例如,点击相关公众号阅读文章、点击定向投放的金融广告或点击其他推送信息等。这种行为数据也可以认为是一种交互数据。终端设备101将该行为数据上传给评估服务器102,存储在交互子数据库1032中。信用记录服务器105中记录有大量用户的信用数据,例如人行征信报告中的各类数据。信用记录服务器105将用户的信用数据传递给评估服务器102,存储在信用子数据库1031中。

在对该用户的行为进行评估时,首先使用训练子服务器1041基于信用子数据库1031的信用数据和交互子数据库1032中的少量交互数据,对多层神经网络模型进行训练,其中,这两个子数据库中用于训练的数据都带有信用评估标记,即每个数据标记有相应的信用评估指标,如用户的信用评分1或者0。经过迭代训练后,获得该多层神经网络的训练参数。

训练子服务器1041将训练参数传递给预测子服务器1042,然后,预测子服务器1042基于该训练参数对交互子数据库1032中待评估用户的当前行为数据(如最新交互数据)进行预测,获得该用户在近期一段时间内行为的评估指标。例如,预测出该用户在最近三个月内的征信评分(即个人综合信用评分)为1,即征信良好、无逾期记录。

这里,上述终端设备101是指任何具有用户可输入操作功能的终端设备,包括但不限于智能手机、掌上电脑、平板电脑等。终端设备101和评估服务器102之间可以通过有线或者无线网络进行通信。

图2为本发明一个实施例中用户行为评估方法的流程示意图。该方法应用于计算设备,例如图1中所示的评估服务器102,或者独立于用户终端设备101的另一终端设备,或者该计算设备被集成在用户终端设备101中。该方法包括以下步骤。

步骤201,获取至少一个用户的行为数据,根据行为数据确定初始样本数据。

本申请实施例中,行为数据是指用户在互联网上产生的交互数据,如用户点击相关公众号阅读文章、点击定向投放的金融广告或点击其他推送信息等生成的交互数据。或者,行为数据是社会公开数据,如用户在生活事务中产生的社会公共数据。这类数据的特点是数量大、采集成本非常低,但是自身含有大量的噪声以及可进行标注的数据比较少。

本步骤中,获取用户的行为数据可以有多种方式,本发明对此不作具体限定。作为实施例,以下为几种可能的获取方式:

方式一,当每个用户的客户端产生了行为数据时,将该行为数据上报给用于评估用户行为的计算设备进行存储。

这样,该计算设备将接收到的行为数据存储在数据库中,例如图1中所示的,从终端设备101中安装的客户端中接收该用户产生的行为数据,进而存储在交互子数据库1031中。

方式二,当每个用户的客户端产生了行为数据时,将该行为数据上报给行为数据服务器,在计算设备评估用户行为时,计算设备从该行为数据服务器获取所需的行为数据。

这里,考虑到行为数据的数据量相比于信用数据大,并且在训练时需要用到一段时间内的历史数据,通过将行为数据服务器作为行为数据的专用存储设备,可以将大量用户、长时间段内的大量行为数据集中存储起来,然后通过相关的软件模块将训练所需的行为数据发送给用于评估用户行为的计算设备。

方式三,当用于评估用户行为的计算设备进行训练时,从客户端处获得每个用户的行为数据。

考虑到根据本发明实施例中的用户行为评估方法,在训练阶段时所需要的行为数据相比不使用信用数据时的数据量较少,因此,可以在进行训练时,从客户端出获得行为数据,无需存储,直接用于训练。

本步骤中,根据行为数据确定的初始样本数据是指在训练用于评估用户行为的多层神经网络时所使用的训练样本。由于训练过程中需要样本数据及其相应的标记数据,在一实施例中,从行为数据中选择出带有信用评估标记的行为数据,作为初始样本数据。

这里,信用评估标记是指评估用户信用的指标,例如,信用评估标记为1时,表示用户征信良好、无逾期记录;信用评估标记为0时,表示用户征信不好,有较长时间(例如,90天以上)的信贷逾期记录。通过这个信用评估标记,可以在训练多层神经网络时迭代进行训练参数的调整。

步骤202,获取初始样本数据的用户所对应的信用数据,从信用数据中提取辅助信息。

本申请实施例中,在训练用于评估用户行为的多层神经网络时,除了用户的行为数据,还要获取用户的信用数据。所谓的信用数据是指预先生成的用于表征用户信用的数据,例如,人行征信报告数据。这类数据的特点是预测效果比较强,但是考虑数据隐私、保护等因素,它们的收集代价比较昂贵。和步骤201中的行为数据相比,信用数据被认为是一种强模态数据,它和信用评估结果的相关度很高,而行为数据被认为是一种弱模态数据,这种数据更加的随机,它和信用评估结果的相关度较低。

在一实施例中,从信用记录服务器获取所需用户的信用数据,例如,从中国人民银行的信用记录服务器获取用户的人行征信报告,该报告包括用户的信用历史、现有信贷账户数、过去平均月还款比率等各种类型的信用数据。由于这种类型的信用数据是记录性的、相对比较稳定,因此,相比于用户的行为数据,信用数据具备固定的数据特征。

其中,用户的信用数据带有针对该用户给出的信用评估标记,以用于训练多层神经网络,通过迭代的方式调整训练参数。类似于上述初始样本数据,信用数据的信用评估标记可以是用户的信用评分,例如1表示用户征信良好、无逾期记录;0表示用户征信不好,有较长时间的信贷逾期记录。

从信用数据中提取辅助信息,用于辅助多层神经网络的训练。所谓辅助信息是指信用数据中含有的用于辅助评估信用的判别信息。在提取时,可以根据信用数据的类型将信用数据分类,确定每种信用数据的特征信息。辅助信息即包括各种信用数据的特征信息。例如,当信用数据包括现有信贷账户数、过去平均月还款比率等类型时,将每种类型的信用数据进行特征提取,获得每种信用数据的特征信息。

步骤203,创建并训练用于评估用户行为的多层神经网络。

本申请实施例中,使用多层神经网络对用户的行为进行评估。创建的多层神经网络包括输入层、处理层和输出层。实际应用时,多层神经网络可以为卷积神经网络等任何深度学习网络。

图3为本发明一个实施例中多层神经网络的结构示意图。如图3所示,由实线所示的多层神经网络包括输入层301、处理层302和输出层303。当多层神经网络具体为深度卷积神经网络时,处理层303包括多个卷积层以及每个卷积层对应的池化层。在输出层303将输出为1×m维的信用评估向量,向量中的元素取值为[0,1],通过设置阈值的方式可以将该概率值转化为离散的信用评估结果。

步骤204,在每次迭代时执行以下处理:选择上次迭代时使用的一部分辅助信息作为当前辅助信息,根据初始样本数据和当前辅助信息确定当前训练结果;在训练结束后获得多层神经网络的训练参数。

本步骤中,训练多层神经网络时使用到两种数据:初始样本数据和信用数据。如图3所示,初始样本数据300a作为原始输入数据,在输入层301处输入到多层神经网络中,并经由多层神经网络中的处理层302对其进行处理,得到该初始样本数据的处理结果。而在输出层303确定当前训练结果之前,引入辅助信息。基于对初始样本数据的处理结果以及当前辅助信息输出一次迭代时的训练结果。

这样,在训练结束后,获得了多层神经网络的训练参数,包括多层神经网络中输入层、处理层和输出层的权值。同时,由于每次迭代时只使用上次迭代时的一部分辅助信息,这样在迭代结束后,辅助信息已经被消除。也就是说,信用数据只作用于整个训练过程中。

步骤205,获取待评估用户的当前行为数据,基于多层神经网络根据训练参数对当前行为数据进行预测,获得待评估用户的信用评估结果。

本步骤中,若待评估用户为步骤201中至少一个用户中的用户,那么待评估用户的当前行为数据可以从步骤201中获取的行为数据中查找出该待评估用户在预定时间段内的行为数据。该预定时间段可以用于指示在最近一段时间内的最新行为数据,例如,为一个月。

若步骤201中至少一个用户并不包括该待评估用户,那么可以从该待评估用户的客户端获取最新的交互数据作为当前行为数据进行预测。具体的获取方式可以参照步骤201中的三种方式,在此不再赘述。预测的结果为待评估用户的信用评估结果,来指示该待评估用户的信用评分。

通过上述实施例,获取至少一个用户的行为数据,根据行为数据确定初始样本数据;获取初始样本数据的用户所对应的信用数据,从信用数据中提取辅助信息;创建并训练用于评估用户行为的多层神经网络,在每次迭代时执行以下处理:选择上次迭代时使用的一部分辅助信息作为当前辅助信息,根据初始样本数据和当前辅助信息确定当前训练结果;在训练结束后获得多层神经网络的训练参数。获取待评估用户的当前行为数据,基于多层神经网络根据训练参数对当前行为数据进行预测,获得待评估用户的信用评估结果。获得的技术效果包括如下几个方面:

1)在评估用户行为时,利用了两种模态的信息,即用户的行为数据以及信用数据,由于这两种数据具备不均衡的预测能力,通过复用这两种不均衡的模态数据,可以提高训练时数据信息的全面性,使得训练参数更加精准,最终对用户行为的预测结果更加准确。

2)利用多层神经网络模型的学习能力,可以隐式地从信用数据中获取有用的辅助信息(也即判别信息),这种强模态数据的融入可以显著减少所需的训练样本数据,即只需要少量的用户行为数据参与训练,因此,大大提高了训练时的计算效率,减少了训练所需的时间。

3)训练结束后,具备固定特征的信用数据中的判别信息已经被迁移到多层神经网络中,使得训练后的多层神经网络更为鲁棒;在评估待评估用户的行为时,只需要输入该待评估用户的当前行为数据,根据这种简单廉价的弱模态数据进行预测,而无需强模态信用数据的介入,使得该方案在信用数据受到保护(如商业机密)的应用中非常有用。

针对上述步骤204,在训练多层神经网络时,除了将初始样本数据作为输入数据,同时在确定当前训练结果之前还引入了信用数据。图4为本发明一个实施例中训练多层神经网络方法的流程示意图。该方法应用于用于评估用户行为的计算设备。该方法包括以下步骤。

步骤401,创建用于评估用户行为的多层神经网络,该多层神经网络包括输入层、处理层和输出层。

步骤402,根据辅助信息创建包含至少一个特征节点的特征层。

为了将信用数据引入到训练过程中的多层神经网络中,根据提取出的辅助信息创建特征层,特征层由多个特征节点组成。如步骤202所述,辅助信息包括多种类型的信用数据的特征信息,将每种信用数据的特征信息由向量来表示,那么每种数据类型对应一个特征向量,该特征向量用来表征特征层中的一个特征节点。如图3所示,在特征层304中包括有j个特征节点(如虚线圈表示)。

步骤403,在将处理层和输出层相连接的同时,依次将处理层、特征层以及输出层相连接。

本申请实施例中,在训练多层神经网络的时候,对多层神经网络的结构进行修正。而在训练结束时将恢复到初始创建的多层神经网络的结构。

具体的,在训练的过程之中,将原有的处理层和由信用数据构成的特征层并行排列,二者都连接到输出层节点。如图3所示,处理层302由多层组成,在最后一层的处理层节点全连接到输出层303的各个节点。此外,最后一层的处理层节点全连接到特征层304的各个节点,然后特征层304的各个节点再全连接到输出层303的各个节点。

可见,本步骤实现了“并行连接”的训练模型结构:“处理层302<->输出层303”与“处理层302<->特征层304<->输出层303”并行。

步骤404,通过处理层对初始样本数据进行处理,获得第一处理结果。

步骤405,删除特征层中的部分特征节点,然后将第一处理结果输入到特征层进行处理,获得第二处理结果。

本申请实施例中,特征层304只存在于整个训练过程中,在训练过程结束时整个特征层304将被消除,特征层304中的辅助信息作为一种判别信息已被迁移到获得的训练参数中。为了在执行预测过程之前消除训练过程中信用数据的影响,在训练的迭代过程中,逐步删除辅助信息。具体为,在每次迭代时,删除特征层中的部分特征节点。

步骤406,将第一处理结果和第二处理结果输入到输出层,确定当前训练结果。

如图3所示,第一处理结果经由权值w全连接到输出层303,同时,第一处理结果经由权值v全连接到特征层304,然后特征层304输出的第二处理结果经由权值u全连接到输出层303,最终在输出层303输出的训练结果复用了这两种数据的信息:行为数据中的行为信息以及信用数据中的判别信息。

步骤407,在训练结束后获得多层神经网络的训练参数。

通过上述步骤在引入了辅助信息又逐步消除辅助信息的训练过程之后,多层神经网络的结构恢复到训练之前的原始结构中,即图3中所示的输入层301、处理层302以及输出层303,而获得的训练参数中已涵盖了信用数据中有效的辅助信息。

通过上述实施例,根据辅助信息创建包含至少一个特征节点的特征层,在将处理层和输出层相连接的同时,依次将处理层、特征层以及输出层相连接,实现了一种并行化的不均衡多模态网络结构,这种结构能够并行地将信用数据中的辅助信息移到多层神经网络,从而实现了训练时复用两种数据的目的。

本发明实施例中,多层神经网络在训练的过程中根据输入的初始数据样本、信用数据和相应的信用评估标记作为理想的输出样本,通过迭代的方式逐步进行权值的调整,直到收敛。具体地,可以通过反向传播算法来调整权值。反向传播算法可以分成4个不同的部分:向前传递,损失函数,反向传递,更新权值。

为了将训练过程中的迭代过程阐述清楚,图5为本发明另一个实施例中训练多层神经网络方法的流程示意图。在图4所示的步骤基础之上,该方法包括以下步骤。

在执行完步骤401至403之后,执行步骤501。

步骤501,预先构建用于训练多层神经网络的第一损失函数。

由于多层神经网络通过初始化的训练参数无法提取出准确的行为特征,因此无法给出合理的信用评估结果。此时,通过定义损失函数,可以帮助多层神经网络更新训练参数直至收敛。对应于图3所示的并行连接的训练结构,在训练过程中使用的第一损失函数中包括辅助信息。

具体地,第一损失函数由两个损失子函数组成,即由初始样本数据的特征向量、辅助信息的特征向量以及当前训练结果(也即标记向量)构成的损失子函数,以及由初始样本数据的特征向量以及辅助信息的特征向量构成的损失子函数。

在一实施例中,令初始样本数据的特征向量为xi、辅助信息的特征向量为zi,当前训练结果为yi,i=1,...,n,n为初始样本数据的个数,若图3中处理层302的最后一层包括p个特征节点,输出层303包括m个特征节点,特征层304包括j个特征节点,那么第一损失函数可以表示为:

其中:

其中是输入的初始样本数据xi(见图3中的300a)在处理层302的最后一层lp层的输出特征向量;

是指经由特征层的多层神经网络的输出于信用预测构成的损失子函数,包括三个参数xi、zi和yi,其中,函数i(·)可以表示成任何凸函数;

是指初始样本数据xi经由处理层全连接到特征层的特征空间,与对应输入的特征层向量zi构成的损失子函数,矩阵u的维度为j*m;

是对的预测,可以定义为线性函数其中,是误差项,矩阵w的维度为p*m;

h(·)是指softmax运算,可以表示成log函数;

g(zi)是对特征层向量zi的预测,类似的可以定义为zv+bz,其中,矩阵v的维度为p*j;

此外,lreg是正则化项,参数λ是平衡算子;θ是处理层302中用到的权值参数,||·||f表示取范数运算。

步骤502,输入初始样本数据,并初始化训练参数。

首先,在向前传播的过程中,输入初始样本数据,通过多层神经网络(例如卷积神经网络)传递它。在本发明一实施例中,所有的训练参数可以被随机初始化,如取值为随机值[0.3,0.1,0.4,0.2,0.3....]。

在完成训练参数的初始化后,开始第一次的训练过程。即在执行完步骤502后,执行步骤404至406。得到第一个训练结果后,执行步骤503。

步骤503,判断特征层中是否还包括剩余特征节点。若是,执行步骤504;否则,执行步骤505。

步骤503是用于判断是否要对特征层进行拆分及删除操作。如果有剩余特征节点,则执行步骤504,将待删除的一部分特征节点拆分出来并删除。如果特征层没有剩余特征节点了,已全部删除,则将第二处理结果置为空,进一步基于第一损失函数确定是否停止迭代。

步骤504,删除特征层中的部分特征节点。

在每次迭代时,根据预设拆分策略从剩余特征节点中确定待删除的特征节点并删除。预设拆分策略用于确定待删除的部分特征节点,具体的方式可以有多种,例如,预设拆分策略包括删除的特征节点的顺序和数量,那么依次删除固定数量的特征节点;或者预设拆分策略为随机策略,随机删除随机数量的特征节点。对于后者,具体而言,可以随机产生一个概率值p,通过p的取值确定此次迭代时所有剩余特征节点中待删除的特征节点的个数。例如,p=0.3,而在当前迭代时还剩余10个特征节点,那么随机选择出3个特征节点进行删除。

在删除掉部分特征节点的同时,为了降低后续训练时的计算量,将处理层中的各个节点与删除的部分特征节点之间的权值置零;将删除的部分特征节点与输出层中的各个节点之间的权值置零。参见图3,若删除的部分特征节点索引为j1,…,jd,将矩阵v中(1,…,p)×(j1,…,jd)之间的所有连接所对应的权值置零;同时,将矩阵u中(j1,…,jd)×(1,…,m)之间的所有连接所对应的权值置零。

步骤505,计算第一损失函数的取值,并判断是否停止迭代。若是,执行步骤408;否则,执行步骤506。

在每次迭代时,根据初始样本数据、当前辅助信息以及当前训练结果,计算此次迭代时第一损失函数的取值,具体可参加步骤501中的计算公式。

在刚开始训练的时候,若权值是随机初始化的,会导致损失函数的取值很高。而训练的目的是希望预测值和真实值一样。为此,需要尽量减少第一损失函数的取值,损失值越小就说明预测结果越接近。在这一个过程中,将不断的调整权值,来寻找出哪些权值能使整个网络的损失减小。

根据第一损失函数的取值判断是否停止迭代。例如,通过判断第一损失函数的取值是否达到可接受的阈值,来判断是否停止迭代。停止迭代后,整个训练过程则结束。

步骤506,更新训练参数。然后,进一步执行步骤404,进行下一次的迭代处理。

步骤408,在训练结束后获得多层神经网络的训练参数。

由上可见,在训练的迭代过程中,将会完成多次的前向传递、损失函数、反向传递和参数更新的过程。当训练结束后,就得到了训练出来的一些权值。具体而言,训练参数包括上述公式(1)中的权值矩阵θ,w,u,v。

需要指出的是,初始样本数据是带有信用评估标记的,那些不带有此标记的行为数据,可以用来预训练多层神经网络。图6为本发明另一个实施例中用户行为评估方法的流程示意图,该方法包括预训练模型以及图2实施例所述的正式训练模型。具体而言,该方法包括如下步骤。

步骤601,获取至少一个用户的行为数据,根据行为数据确定初始样本数据和预训练样本数据。

在根据行为数据确定用于正式训练多层神经网络的初始样本数据时,还进一步确定预训练样本数据。其中,初始样本数据是带有信用评估标记的,那么可以将不带有此标记的行为数据确定为预训练样本数据,用于预训练多层神经网络。

步骤602,获取初始样本数据的用户所对应的信用数据,从信用数据中提取辅助信息。

步骤603,创建用于评估用户行为的多层神经网络,并构建第一损失函数以及第二损失函数。

本步骤中,用于正式训练的第一损失函数如上公式(1)和(2)所示,而用于预训练的第二损失函数由预训练样本数据的特征向量以及信用数据的特征向量构成。具体而言,第二损失函数可以基于公式(2)进行修改,即仅保留而删除带有标记向量yi的并且xi替换为预训练样本数据的特征向量。

步骤604,根据预训练样本数据、预训练样本数据的用户所对应的信用数据以及第二损失函数对多层神经网络进行预训练,获得训练参数的初始值。

这里,参照步骤403,在并行连接的结构下进行预训练。在预训练的迭代过程中无需删除信用数据构成的特征节点。预训练结束后得到的训练参数的初始值,将在正式训练时对初始样本数据进行首次处理时使用。

步骤605,在训练多层神经网络时,执行以下处理:

步骤6051,根据预训练获得的初始值对训练参数进行初始化;

步骤6052,进入迭代过程,在每次迭代时,选择上次迭代时使用的一部分辅助信息作为当前辅助信息,根据初始样本数据和当前辅助信息确定当前训练结果,并计算第一损失函数来判断是否结束迭代;

步骤6053,在训练结束后获得多层神经网络的训练参数。

步骤606,获取待评估用户的当前行为数据,基于多层神经网络根据训练参数对当前行为数据进行预测,获得待评估用户的信用评估结果。

在上述实施例中,通过对用户的行为数据进行分类,将不带有信用评估标记的行为数据用于多层神经网络的预训练,将预训练好的权值作为训练参数的初始值,最终能得到比较好的局部最优解,进一步提升了训练参数的精准度以及最终评估结果的准确性。

图7为本发明一个实施例中计算设备700的结构示意图。如图7所示,计算设备700包括:

接收模块710,用于获取接收至少一个用户的行为数据,根据行为数据确定初始样本数据;

获取模块720,用于获取初始样本数据的用户所对应的信用数据,从信用数据中提取辅助信息;获取待评估用户的当前行为数据;

创建模块730,用于创建用于评估用户行为的多层神经网络;

训练模块740,用于训练创建模块730创建的多层神经网络,在每次迭代时执行以下处理:选择上次迭代时使用的一部分辅助信息作为当前辅助信息,根据初始样本数据和当前辅助信息确定当前训练结果;在训练结束后获得多层神经网络的训练参数;及,

预测模块750,用于基于创建模块730创建的多层神经网络,根据训练模块740获得的训练参数对当前行为数据进行预测,获得待评估用户的信用评估结果。

图8为本发明一个实施例中计算设备800的结构示意图。如图8所示,在计算设备700的基础之上,计算设备800进一步包括:连接模块810、第一构建模块820、第二构建模块830以及预训练模块840。

在一实施例中,多层神经网络包括输入层、处理层和输出层,创建模块730进一步用于,根据获取模块720获取到的辅助信息,创建包含至少一个特征节点的特征层;

计算设备800进一步包括:

连接模块810,用于在将处理层和输出层相连接的同时,依次将处理层、创建模块730创建的特征层以及输出层相连接;

训练模块740用于,基于连接模块810的连接,通过处理层对初始样本数据进行处理,获得第一处理结果;删除特征层中的部分特征节点,然后将第一处理结果输入到特征层进行处理,获得第二处理结果;将第一处理结果和第二处理结果输入到输出层,确定当前训练结果。

在一实施例中,训练模块740用于,当特征层中还包括剩余特征节点时,根据预设拆分策略从剩余特征节点中确定待删除的特征节点并删除;当特征层中未包括任何特征节点时,将第二处理结果置为空。

在一实施例中,计算设备800还包括:

第一构建模块820,用于预先构建用于训练多层神经网络的第一损失函数;

训练模块740,进一步用于在每次迭代时,根据初始样本数据、当前辅助信息以及当前训练结果,计算此次迭代时第一构建模块820构建的第一损失函数的取值;当根据取值确定训练结束时,获得训练参数。

在一实施例中,接收模块710用于,从行为数据中选择出带有信用评估标记的行为数据,作为初始样本数据;

获取模块720用于,从信用记录服务器获取每个用户的信用数据,其中,信用数据带有信用评估标记。

在一实施例中,接收模块710进一步用于,根据行为数据确定预训练样本数据;

计算设备800还包括:

第二构建模块830,用于构建用于预训练多层神经网络的第二损失函数;

预训练模块840,用于根据接收模块710确定的预训练样本数据、预训练样本数据的用户所对应的信用数据以及第二构建模块830构建的第二损失函数,对多层神经网络进行预训练,获得训练参数的初始值,初始值在训练模块740对初始样本数据进行首次处理时使用。

图9为本发明另一个实施例中计算设备900的结构示意图。如图9所示,计算设备900包括:处理器910、存储器920、端口930以及总线940。处理器910和存储器920通过总线940互联。处理器910可通过端口930接收和发送数据。其中,

处理器910用于执行存储器920存储的机器可读指令模块。

存储器920存储有处理器910可执行的机器可读指令模块。处理器910可执行的指令模块包括:接收模块921、获取模块922、创建模块923、训练模块924和预测模块925。其中,

接收模块921被处理器910执行时可以为:获取至少一个用户的行为数据,根据行为数据确定初始样本数据;

获取模块922被处理器910执行时可以为:获取初始样本数据的用户所对应的信用数据,从信用数据中提取辅助信息;获取待评估用户的当前行为数据;

创建模块923被处理器910执行时可以为:创建用于评估用户行为的多层神经网络;

训练模块924被处理器910执行时可以为:训练创建模块923创建的多层神经网络,在每次迭代时执行以下处理:选择上次迭代时使用的一部分辅助信息作为当前辅助信息,根据初始样本数据和当前辅助信息确定当前训练结果;在训练结束后获得多层神经网络的训练参数;

预测模块925被处理器910执行时可以为:基于创建模块923创建的多层神经网络,根据训练模块924获得的训练参数对当前行为数据进行预测,获得待评估用户的信用评估结果。

在一实施例中,多层神经网络包括输入层、处理层和输出层,创建模块923被处理器910执行时可以进一步为:根据获取模块922获取到的辅助信息,创建包含至少一个特征节点的特征层;

处理器910可执行的指令模块还包括:

连接模块926被处理器910执行时可以为:在将处理层和输出层相连接的同时,依次将处理层、创建模块923创建的特征层以及输出层相连接;

训练模块924被处理器910执行时可以为:基于连接模块926的连接,通过处理层对初始样本数据进行处理,获得第一处理结果;删除特征层中的部分特征节点,然后将第一处理结果输入到特征层进行处理,获得第二处理结果;将第一处理结果和第二处理结果输入到输出层,确定当前训练结果。

在一实施例中,处理器910可执行的指令模块还包括:

第一构建模块927被处理器910执行时可以为:预先构建用于训练多层神经网络的第一损失函数;

训练模块924被处理器910执行时进一步可以为:在每次迭代时,根据初始样本数据、当前辅助信息以及当前训练结果,计算此次迭代时第一构建模块927构建的第一损失函数的取值;当根据取值确定训练结束时,获得训练参数。

在一实施例中,接收模块921被处理器910执行时可以为:根据行为数据确定预训练样本数据;

处理器910可执行的指令模块还包括:

第二构建模块928被处理器910执行时可以为:构建用于预训练多层神经网络的第二损失函数;

预训练模块929被处理器910执行时可以为:根据接收模块921确定的预训练样本数据、预训练样本数据的用户所对应的信用数据以及第二构建模块928构建的第二损失函数,对多层神经网络进行预训练,获得训练参数的初始值,初始值在训练模块924对初始样本数据进行首次处理时使用。

由此可以看出,当存储在存储器920中的指令模块被处理器910执行时,可实现前述各个实施例中接收模块、获取模块、创建模块、训练模块、预测模块、连接模块、第一构建模块、第二构建模块和预训练模块的各种功能。

上述装置实施例中,各个模块及单元实现自身功能的具体方法在方法实施例中均有描述,这里不再赘述。

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

另外,本发明的每一个实施例可以通过由数据处理设备如计算机执行的数据处理程序来实现。显然,数据处理程序构成了本发明。此外,通常存储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质或者通过将程序安装或复制到数据处理设备的存储设备(如硬盘和或内存)中执行。因此,这样的存储介质也构成了本发明。存储介质可以使用任何类别的记录方式,例如纸张存储介质(如纸带等)、磁存储介质(如软盘、硬盘、闪存等)、光存储介质(如cd-rom等)、磁光存储介质(如mo等)等。

因此,本发明还公开了一种存储介质,其中存储有数据处理程序,该数据处理程序用于执行本发明上述方法的任何一种实施例。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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