发明内容
基于此,有必要针对上述技术问题,提供一种账户状态模型构建方法、装置、计算机设备和计算机可读存储介质,能够有效提高账户状态模型预测的准确度。
一种账户状态模型构建方法,其特征在于,所述方法包括:
获取历史用户特征数据;
根据历史用户特征数据构建用户特征图谱;
基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,模型训练参数初值为账户状态模型中待训练参数的初始值;
基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性;
基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据;
基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。
在一个实施例中,基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,包括:
获取非线性激活函数;
根据各节点的节点属性确定各节点的原始节点特征;
基于非线性激活函数、原始节点特征以及模型训练参数初值生成各节点对应的节点初始特征向量。
在一个实施例中,基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,包括:
当节点为联系方式节点时,则获取联系方式节点相邻节点对应的相邻节点初始特征向量,联系方式节点为节点属性是联系方式的节点;
根据相邻节点初始特征向量的均值确定联系方式节点对应的节点初始特征向量。
在一个实施例中,基于节点初始特征向量融合得到各节点的关联矩阵,包括:
获取各节点中的用户标识节点;
根据用户标识节点的账号渠道信息、地理信息、申请状态信息得到用户初始特征向量;
基于用户初始特征向量与其他节点对应的节点初始特征向量融合得到关联矩阵。
在一个实施例中,基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据,包括:
根据各节点中的用户标识节点确定用户特征图谱中的子图谱;
根据子图谱得到用户特征图谱权重矩阵;
基于用户特征图谱权重矩阵与关联矩阵融合得到节点度矩阵;
基于子图谱中的子图谱节点与关联矩阵得到子图谱度矩阵;
基于用户特征图谱权重矩阵、关联矩阵、节点度矩阵、子图谱度矩阵以及节点初始特征向量得到特征输入样本数据。
在一个实施例中,基于特征输入样本数据训练得到账户状态模型,包括:
对特征输入样本数据进行归一化处理得到标准输入样本数据;
将标准输入样本数据输入图卷积神经网络模型进行训练得到账户状态模型。
在一个实施例中,将标准输入样本数据输入图卷积神经网络模型进行训练得到账户状态模型,包括:
将标准输入样本数据输入图卷积神经网络模型得到模型实际输出值;
将模型实际输出值按照预设分类算法进行分类得到输入样本数据所对应的账户状态实际预估结果;
当账户状态实际预估结果与标准输入样本数据中预设的账户状态标准预估结果间的误差大于预设误差阈值时,返回将标准输入样本数据输入图卷积神经网络模型得到模型实际输出值的步骤;
当账户状态实际预估结果与标准输入样本数据中预设的账户状态标准预估结果间的误差小于或等于预设误差阈值时,则训练完毕,得到账户状态模型。
一种账户状态模型构建装置,其特征在于,所述装置包括:
数据获取模块,用于获取历史用户特征数据;
样本数据生成模块,用于根据历史用户特征数据构建用户特征图谱;基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,模型训练参数初值为账户状态模型中待训练参数的初始值;基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性;基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据;
训练模块,用于基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。
一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
获取历史用户特征数据;
根据历史用户特征数据构建用户特征图谱;
基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,模型训练参数初值为账户状态模型中待训练参数的初始值;
基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性;
基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据;
基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。
一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取历史用户特征数据;
根据历史用户特征数据构建用户特征图谱;
基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,模型训练参数初值为账户状态模型中待训练参数的初始值;
基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性;
基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据;
基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。
上述账户状态模型构建方法、装置、计算机设备和存储介质,通过获取历史用户特征数据,根据历史用户特征数据来构建用户特征图谱,再基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,其中模型训练参数初值为账户状态模型中待训练参数的初始值,基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性,基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据,基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。这样,通过将模型训练参数初值参与到生成节点初始特征向量的过程中,从而使得随着模型的迭代,不断迭代出新的训练参数,再根据每次迭代产生的新参数重新生成各节点的特征向量,加快模型的收敛,并且再通过节点初始特征向量融合得到关联矩阵,在模型的训练中实现根据不同节点的重要性来动态调整赋予各节点的重要性权重,能更好根据具体应用场景对不同节点的重要性进行挖掘,使得训练的模型能更好挖掘数据特征,能够有效提高账户状态模型预测的准确度。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的账户状态模型构建方法,可以应用于如图1所示的应用环境中。计算机设备102获取历史用户特征数据,根据历史用户特征数据来构建用户特征图谱,再基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,其中模型训练参数初值为账户状态模型中待训练参数的初始值,基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性,基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据,基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。其中,计算机设备102具体可以包括但不限于各种个人计算机、笔记本电脑、服务器、智能手机、平板电脑、智能摄像机和便携式可穿戴设备等。
在一个实施例中,如图2所示,提供了一种账户状态模型构建方法,以该方法应用于图1中的计算机设备102为例进行说明,包括以下步骤:
步骤S202,获取历史用户特征数据。
其中,历史用户特征数据为用户的个人数据,包括出生年月、学历水平、关联企业、联系人与邀请人信息等,这些数据都是用户在互联网上进行相关活动申请时填写的必要信息,当用户在客户端进行操作时,***也会分配给用户相应的身份标识号码,并且身份标识号码作为用户唯一标识符,不会重复。服务器还能获取用户登录客户端的时使用的设备信息,例如设备标识码、设备品牌、物理地址等,最终,经过脱敏、缺失值和异常处理后,将用户数据分为用户标识、身份特征、单位特征、银行卡特征、设备特征、联系方式六大类,并且每个用户都对应有账户异常状态或正常状态的状态标签信息,将此状态标签信息作为后续模型训练的标准输出样本数据。
步骤S204,根据历史用户特征数据构建用户特征图谱。
其中,其中用户标识节点包括创建账号渠道、地理位置、申请状态等节点属性,身份特征节点包括身份状态、学历职位、征信情况等节点属性,单位节点企业类型、地理位置、注册资本等节点属性,银行卡节点包括账户类型、开户城市等节点属性,设备节点包括设备识别码、设备***等节点属性。
具体地,计算机设备将历史用户特征数据中的用户标识、身份特征、单位特征、银行卡特征、设备特征、联系方式作为节点,将每个节点之间的关联关系作为边连接起来,构建一个用户特征图谱,由于用户之间的邀请人、联系人等关系,多个用户属于同一单位,多个用户使用同一设备或联系方式等情况,因此将不同用户标识节点之间可以通过其他节点关联起来,最终生成包含所有用户的用户特征图谱。
步骤S206,基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,模型训练参数初值为账户状态模型中待训练参数的初始值。
其中,节点初始特征向量为表示对应节点的节点属性的向量,也就是节点初始特征向量之间可以体现各个节点之间的关联关系,例如当两个节点之间的关联性较高时,对应的两个节点初始特征向量之间的距离越小,并且每个节点对应的节点初始特征向量都是保持维度相同的向量,模型训练参数初值是账户状态模型中待训练参数的初始值,随着模型的训练,每一次的迭代都会迭代出新的模型训练参数,其中账户状态模型中待训练参数的初始值可以是根据经验指定,也可以根据遗传算法、粒子群算法等智能选优算法来确定。
具体地,计算机设备根据用户特征图谱中的各节点的节点属性特征以及模型训练参数初始值来生成节点初始特征向量,并将节点初始特征向量进行归一化,将模型每次迭代后的训练参数的值再作为新的模型训练参数,重新构建每个节点的初始特征向量,也就是,随着模型的每次迭代,使得各节点的节点初始特征向量也不停迭代,进而迭代出最能代表当前用户特征图谱的一组节点初始特征向量。
步骤S208,基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性。
其中,关联矩阵用于表征各节点的关联关系以及各节点的重要性,关联矩阵中的每个矩阵元素的行列信息用于表示用户特征图谱中对应节点相对于图谱中的位置信息,矩阵元素的数值大小信息用于表征用户特征图谱中对应节点的重要性,也就是矩阵元素数值越大则该矩阵元素对应的节点的重要性越大。
具体地,计算机设备根据用户特征图谱中的用户特征节点来划分各个子图谱,将对应的目标节点所处用户特征图谱中的子图谱位置来确定目标节点对应的矩阵元素在关联矩阵中的行列位置信息,根据各个节点初始特征向量的值来构建各个节点对应的矩阵元素的大小。
步骤S210,基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据。
具体地,计算机设备根据用户特征图谱中的用户特征节点来划分各个子图谱,并且对每一个子图谱都指定一个对应的权重值,得到整个用户特征图谱的权重对角矩阵,再根据每个子图谱的权重值计算对应节点的度矩阵以及子图谱的度矩阵,最后将整个用户特征图谱的权重对角矩阵、关联矩阵、节点的度矩阵以及子图谱的度矩阵共同作为模型的输入样本矩阵。
步骤S212,基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。
其中,账户状态模型用于评估目标账户的操作状态,例如可以判别目标账户的风险状态,判断其是否存在风险或不存在风险,账户状态模型可以但不限于采用各种深度学习模型、神经网络模型,如小波神经网络、图卷积神经网络、递归神经网络等。
具体地,计算机设备将前述步骤中确定的特征输入样本数据输入账户状态模型中进行训练,直到模型输出结果与样本数据中的标准输出样本数据间的误差小于或等于预设误差阈值或迭代次数大于预设迭代次数时,停止训练。
本实施例中,通过将模型训练参数初值参与到生成节点初始特征向量的过程中,从而使得随着模型的迭代,不断迭代出新的训练参数,再根据每次迭代产生的新参数重新生成各节点的特征向量,加快模型的收敛,并且再通过节点初始特征向量融合得到关联矩阵,在模型的训练中实现根据不同节点的重要性来动态调整赋予各节点的重要性权重,能更好根据具体应用场景对不同节点的重要性进行挖掘,使得训练的模型能更好挖掘数据特征,能够有效提高账户状态模型预测的准确度。
在一个实施例中,如图3所示,基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,包括:
步骤S302,获取非线性激活函数。
其中,非线性激活函数用于将用户图谱中各节点属性特征映射到同一空间维度的工具函数,例如sigmoid函数,节点属性特征为人为根据各节点属性特征来设定的唯一不重复且向量维度不同的特征向量。
步骤S304,根据各节点的节点属性确定各节点的原始节点特征。
具体地,计算机设备根据各个节点的节点属性来按照预设经验规则来设定各个节点的原始节点特征,并且对同一种类型的节点所设定的原始节点特征的维度相同,不同类型节点对应的原始节点特征可以不同。
步骤S306,基于非线性激活函数、原始节点特征以及模型训练参数初值生成各节点对应的节点初始特征向量。
具体地,计算机设备基于原始节点特征以及模型训练参数进行融合生成融合因子,再将融合因子作为非线性激活函数的输入,计算得到对应的节点初始向量特征。
举例说明,对于各节点中的某个特定属性的节点v
i∈V
card,按如下公式1将原始节点特征为
变换为统一维度为1×d
N的新的节点初始特征向量
其中,V
card为用户特征图谱中所有节点的集合,
为第1×d
card维度的向量,W
card和b
card都是在模型训练过程中需要学习的参数。
本实施例中,获取非线性激活函数,再根据各节点的节点属性确定各节点的原始节点特征,将原始节点特征以及模型训练参数进行融合生成融合因子,再将融合因子作为非线性激活函数的输入,计算得到各节点属性的节点的同一维度对应的节点初始向量特征向量,随着模型不断的迭代,使得生成的节点初始向量更加能反映节点之间的属性,提高生成节点初始向量的准确性。
在一个实施例中,如图4所示,基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,包括:
步骤S402,当节点为联系方式节点时,则获取联系方式节点相邻节点对应的相邻节点初始特征向量,联系方式节点为节点属性是联系方式的节点。
其中,联系方式节点为节点属性是联系方式的节点,包含了对应用户的联系方式,例如包含用户的联系电话或邮箱信息,当多个用户共用同一个联系方式时,则在用户特征图谱中相关用户共同连接同一个联系方式节点,并且联系方式节点一定与对应的用户的身份特征节点相关联,即在用户特征图谱中任意一个子图谱的身份特征节点与联系方式节点必定相连,同一个子图谱中用户特征节点与对应的联系方式节点一定相连,也就是,在用户特征图谱中与联系方式节点直接相连的节点就是联系方式节点的相邻节点。
步骤S404,根据相邻节点初始特征向量的均值确定联系方式节点对应的节点初始特征向量。
具体地,计算机设备将前述步骤中获取的当前联系方式节点的相邻节点的节点初始特征向量进行取平均值,将平均值向量作为当前联系方式节点的节点初始特征向量。
举例说明,计算机设备按照如下公式2计算当前联系方式节点的节点初始特征向量
其中,k为与当前联系方式节点相邻的节点的个数,
为相邻节点的节点初始特征向量。
本实施例中,当节点为联系方式节点时,则获取联系方式节点相邻节点对应的相邻节点初始特征向量,再根据相邻节点初始特征向量的均值确定联系方式节点对应的节点初始特征向量,简化了联系方式节点对应的节点初始特征向量的生成步骤,提高了节点初始特征向量计算效率。
在一个实施例中,如图5所示,基于节点初始特征向量融合得到各节点的关联矩阵,包括:
步骤S502,获取各节点中的用户标识节点。
步骤S504,根据用户标识节点的账号渠道信息、地理信息、申请状态信息得到用户初始特征向量。
具体地,计算机设备将用户标识节点的账号渠道信息、地理信息、申请状态信息各自进行分类别标识,划定创建账号渠道的几种常用方式,将地理信息分为不同的大区或以省份、城市划分,将申请状态信息分为待申请、申请中、申请审核结束等多个标签,对于每个属性中不同的标签按照预设规则赋予不同的数值,从而得到每个用户标识节点对应的用户初始特征向量。
步骤S506,基于用户初始特征向量与其他节点对应的节点初始特征向量融合得到关联矩阵。
具体地,计算机设备按照如下公式3计算关联矩阵中各个相应的矩阵元素,再由各个矩阵元素得到关联矩阵:
其中,α
ij表示关联矩阵中第i行第j列的矩阵元素,
为用户初始特征向量,
表示其他节点对应的节点初始特征向量,tanh是双曲正切函数,N
j为第j个子图谱中所包含的所有节点的个数,v、W
att和U都是模型中训练学习的参数。
本实施例中,获取各节点中的用户标识节点,将用户标识节点的账号渠道信息、地理信息、申请状态信息各自进行分类别标识,划定创建账号渠道的几种常用方式,将地理信息分为不同的大区或以省份、城市划分,将申请状态信息分为待申请、申请中、申请审核结束等多个标签,对于每个属性中不同的标签按照预设规则赋予不同的数值,从而得到每个用户标识节点对应的用户初始特征向量,最后再根据模型训练参数、用户标识节点的用户初始特征向量以及其他节点的节点初始特征向量确定关联矩阵中的各个矩阵元素,再由各个矩阵元素得到关联矩阵,实现关联矩阵的动态更新,自动迭代出合适的矩阵元素,即各节点的重要性,提高构建关联矩阵的准确性。
在一个实施例中,如图6所示,基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据,包括:
步骤S602,根据各节点中的用户标识节点确定用户特征图谱中的子图谱。
具体地,计算机设备将历史用户特征数据中同一个用户对应的用户标识、身份特征、单位特征、银行卡特征、设备特征、联系方式六大类节点的拓扑结构作为一个子图谱,根据用户标识节点确定与其对应的其他五个节点,组成一个子图谱。
步骤S604,根据子图谱得到用户特征图谱权重矩阵。
具体地,计算机设备按照根据经验指定的预设规则指定每个子图谱的权重值,再由用户特征图谱中子图谱的权重值组成用户特征图谱权重矩阵,其中用户特征图谱权重矩阵为对角矩阵。
步骤S606,基于用户特征图谱权重矩阵与关联矩阵融合得到节点度矩阵。
具体地,计算机设备按照如下公式4计算节点度矩阵Dv中第i行第i列的矩阵元素Dv_ii:
其中,M为用户特征图谱中子图谱的数量,W∈∈为用户特征图谱权重矩阵中第∈行第∈列的矩阵元素,Hi∈为关联矩阵H中第i行第∈列的矩阵元素。
步骤S608,基于子图谱中的子图谱节点与关联矩阵得到子图谱度矩阵。
具体地,计算机设备按照如下公式5计算子图谱度矩阵De中的第∈行第∈列的矩阵元素De_∈∈,再由De_∈∈确定子图谱度矩阵De:
其中,De_∈∈为子图谱度矩阵De中第∈行第∈列的矩阵元素,N为整个用户特征图谱中节点的个数,Hi∈为关联矩阵H中第i行第∈列的矩阵元素。
步骤S610,基于用户特征图谱权重矩阵、关联矩阵、节点度矩阵、子图谱度矩阵以及节点初始特征向量得到特征输入样本数据。
本实施例中,根据各节点中的用户标识节点确定用户特征图谱中的子图谱,根据子图谱得到用户特征图谱权重矩阵,基于用户特征图谱权重矩阵与关联矩阵融合得到节点度矩阵,基于子图谱中的子图谱节点与关联矩阵得到子图谱度矩阵,基于用户特征图谱权重矩阵、关联矩阵、节点度矩阵、子图谱度矩阵以及节点初始特征向量得到特征输入样本数据,实现对用户特征图谱的节点以及拓扑结构的充分挖掘,提高根据用户特征图谱构建特征输入样本数据的准确性。
在一个实施例中,如图7所示,基于特征输入样本数据训练得到账户状态模型,包括:
步骤S702,对特征输入样本数据进行归一化处理得到标准输入样本数据;
步骤S704,将标准输入样本数据输入图卷积神经网络模型进行训练得到账户状态模型。
具体地,计算机设备根据标准输入样本数据以及图卷积神经网络卷积核融合得到超图卷积中的节点特征传播规则:
其中,X(l)和X(l+1)代表了在第l层和l+1层的节点特征,W为根据步骤S604确定的用户特征图谱权重矩阵,Θ(l)代表第l层的卷积核,能够对节点特征进行维数的变换,权重可以训练。HT代表H的转置,H是根据步骤S506来确定的关联矩阵,Dv(节点度矩阵)和De(子图谱度矩阵)起到归一化的作用。根据超图卷积的定义,该逐层传播规则能实现“点-边-点”的转换:首先节点特征通过可学习的Θ(l)来提取节点的新维数特征,然后与HT相乘后,为每一条超边计算所包含节点的特征总和,即该超边特征。最后再通过与H相乘,聚合节点所在的所有超边的特征,形成具有高阶相关性的节点特征。
本实施例中,通过将特征输入样本数据输入到图卷积神经网络模型中进行训练,得到账户状态模型,能够有效捕获节点之间的高阶关系和局部聚类结构,从而实现节点间的高效信息传播。
在一个实施例中,如图8所示,将标准输入样本数据输入图卷积神经网络模型进行训练得到账户状态模型,包括:
步骤S802,将标准输入样本数据输入图卷积神经网络模型得到模型实际输出值。
其中,未经训练的图卷积神经网络模型中各训练参数的初始值可以随机指定,也可以根据经验设定,还可以通过粒子群算法、遗传算法等智能选优算法来确定,这里不作具体限制。
步骤S804,将模型实际输出值按照预设分类算法进行分类得到输入样本数据所对应的账户状态实际预估结果。
具体地,计算机设备将用户账户分类为逾期风险账户和无逾期风险账户的两类客户,采用XGBoost分类器,将图卷积神经网络的实际输出值输入到XGBoost分类器中,得到账户状态实际预估结果,具体按照如下公式7计算账户状态实际预估结果Yp:
Yp=XGBoost(XK),公式7
其中XK为根据前述步骤确定的K个图卷积神经网络的实际输出值。
步骤S806,当账户状态实际预估结果与标准输入样本数据中预设的账户状态标准预估结果间的误差大于预设误差阈值时,返回将标准输入样本数据输入图卷积神经网络模型得到模型实际输出值的步骤。
具体地,计算机设备将前述步骤中得到的账户状态实际预估结果与标准输入样本数据中预设的账户状态标准预估结果进行比对得到预估结果误差值,再将预估结果误差值与预设误差阈值进行比较,当预估结果误差值大于预设误差阈值时,返回将标准输入样本数据输入图卷积神经网络模型得到模型实际输出值的步骤,继续训练,其中计算机设备按照如下公式8计算预估结果误差值:
其中,Loss为预估结果误差值,
为代表第i个节点账户状态实际预估结果,y
i为标准输入样本数据中预设的账户状态标准预估结果。
步骤S808,当账户状态实际预估结果与标准输入样本数据中预设的账户状态标准预估结果间的误差小于或等于预设误差阈值时,则训练完毕,得到账户状态模型。
本实施例中,将标准输入样本数据输入图卷积神经网络模型得到模型实际输出值,将模型实际输出值按照预设分类算法进行分类得到输入样本数据所对应的账户状态实际预估结果,当账户状态实际预估结果与标准输入样本数据中预设的账户状态标准预估结果间的误差大于预设误差阈值时,返回将标准输入样本数据输入图卷积神经网络模型得到模型实际输出值的步骤,再判断当账户状态实际预估结果与标准输入样本数据中预设的账户状态标准预估结果间的误差小于或等于预设误差阈值时,则训练完毕,得到账户状态模型,通过不断的迭代,直到满足迭代的停止条件,则完成模型的训练,提高了模型训练的准确性。
本申请还提供一种应用场景,该应用场景应用上述的账户状态模型构建方法,该方法应用于预测用户账户逾期风险的场景,具体地,该账户状态模型构建方法在该应用场景的应用如下:
计算机设备获取用户的个人数据,包括出生年月、学历水平、关联企业、联系人与邀请人信息等。这些数据都是用户在借款客户端进行申请时填写的必要信息。当用户在客户端进行操作时,***也会分配给用户相应的ID号,这个互不重复的ID号会在后续的图谱构建中作为用户的唯一标识符。此外,服务器还能获取用户登录客户端时使用的设备信息,例如设备识别码、设备品牌、物理地址等。最终,经过脱敏、缺失值和异常值处理后,这些用户数据可以分为用户特征、身份特征、单位特征、银行卡特征、设备特征、联系方式六大类;使用图数据库把前述步骤中获取到的用户数据存储起来,图数据库的数据结构包括了节点集、边集和节点属性,有相同特征字段的节点互相连接。将用户ID、身份、单位、银行卡、设备、联系方式作为节点,如图11所示为一个用户关联的所有节点,也看作是属于该用户的一条超边,因此这也是一个异质图。用户ID节点包括创建账号渠道、地理位置、申请状态等节点属性,身份节点包括身份状态、学历职位、征信情况等节点属性,单位节点包括企业类型、地理位置、注册资本等节点属性,银行卡节点包括账户类型、开户城市等节点属性,设备节点包括设备识别码、设备***等节点属性。
由于存在用户之间有邀请人、联系人等关系,多个用户属于同一单位,多个用户使用同一设备或联系方式等情况,因此不同用户节点之间可以通过其他节点关联起来。如图12所示,用户A和用户B在同一个单位工作,用户A和用户C共用同一个设备和联系方式。
把所有用户及其相关节点组成的超图,表示为G=(V,E),其中包含N个节点和M条超边,显然用户节点的数量也为M,且N远远大于M。接下来讨论模型的输入部分。对于每一条超边e
j∈E,都赋予一个权重
因此可以得到一个可训练学习的超边权重对角矩阵W∈R
M ×M。根据超图的定义,超图还可以使用关联矩阵H∈R
N×M来表示,如果节点v
i属于超边e
j,则H
ij=1,否则H
ij=0。
节点的度即所有相连的超边的权重之和,计算节点度矩阵Dv∈RN×N:
超边的度即超边所包含的节点个数,计算超边度矩阵De∈RM×M:
经过对节点属性进行归一化和特征处理后,我们可以得到每个节点的特征向量,与上述超图的超边权重对角矩阵W、关联矩阵H、节点度矩阵D
v、超边度矩阵D
e共同作为模型的输入。由于不同类型的节点具有不同维度的特征,因此需要通过学习一个函数把这些不同的特征向量映射到d
N维的公共空间。例如,对于一个银行卡节点v
i∈V
card,把原始的节点特征
变换为新的初始特征向量
其中,σ是非线性激活函数,如无特殊说明,本发明使用的非线性激活函数都是sigmoid函数。所以变换函数又可以写成:
可知Wcard和bcard都是在模型训练过程中需要学***均值:
在实际应用的图结构中,节点之间的关系通常不是成对的,而是具有高阶关系。为了捕获节点之间的高阶关系和局部聚类结构,本发明使用了超图卷积来实现节点间的高效信息传播。我们定义了一个L层的超图卷积神经网络,第一层节点特征为X(0),定义节点特征的逐层传播规则如下:
X(l)和X(l+1)代表了在第l层和l+1层的节点特征,Θ(l)代表第l层的卷积核,能够对节点特征进行维数的变换,权重可以训练。HT代表关联矩阵H的转置,节点度矩阵Dv和超边度矩阵De起到归一化的作用。根据超图卷积的定义,该逐层传播规则可以实现“点-边-点”的转换:首先节点特征通过可学习的Θ(l)来提取节点的新维数特征,然后与HT相乘后,为每一条超边计算所包含节点的特征总和,即该超边特征。最后再通过与H相乘,聚合节点所在的所有超边的特征,形成具有高阶相关性的节点特征。
然而,在原始的关联矩阵H中,同一条超边内的节点对超边特征的影响作用是相同的,这对于信贷场景下的超图来说是不适用的。因为不同类型的节点具有不同的特征,也具有不同的重要性。依据人工审核的经验来说,银行卡节点的金融属性较多,因此在判断用户是否具有逾期风险时,银行卡节点特征的重要性要比设备节点更高。注意力机制能够在特征聚合时,为不同的节点分配不同的权重。本发明把注意力机制加入超边特征的计算中,建立新的关联矩阵H
new。如果节点v
i属于超边e
j,则H
ij=α
ij,否则H
ij=0。α
ij即表示节点v
i在超边e
j的特征表示中对应的注意力系数。我们定义超边e
j的原始特征向量
等于超边中的用户节点的特征
α
ij计算公式如下:
其中,v、Watt和U都是可以训练学习的参数,tanh是双曲正切函数,Nj表示超边ej包含的所有节点。至此,超图卷积中的节点特征传播规则更新为以下公式:
最终,得到超图卷积神经网络最后一层的节点表示向量为
在逾期风险预测任务中,需要把用户分类为有逾期风险和无逾期风险的两类客户,本质上是一个二分类问题。本模型采用的是XGBoost分类器,把前述步骤得到的Xfinal中的K个已知逾期和未逾期的标签用户节点的最终表示向量XK作为分类器的输入:
Yp=XGBoost(XK),公式17
得到用户预测类别的概率Y
p∈R
K×1后,再使用二分类问题常用的交叉熵损失函数作为目标函数。模型的训练目标就是使目标函数尽可能的小。目标函数Loss如下所示,其中y
i代表第i个节点的真实逾期标签,是则为1,否则为0;
代表第i个节点预测为逾期的概率。
经过多次训练,损失函数已经达到最优值后,我们便得到了参数最优的模型,再将当前用户数据输入模型中,得到当前用户是否具有逾期风险的预测结果,如图13所示。
上述账户状态模型构建方法、装置、计算机设备和存储介质,通过获取历史用户特征数据,根据历史用户特征数据来构建用户特征图谱,再基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,其中模型训练参数初值为账户状态模型中待训练参数的初始值,基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性,基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据,基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。这样,通过将模型训练参数初值参与到生成节点初始特征向量的过程中,从而使得随着模型的迭代,不断迭代出新的训练参数,再根据每次迭代产生的新参数重新生成各节点的特征向量,加快模型的收敛,并且再通过节点初始特征向量融合得到关联矩阵,在模型的训练中实现根据不同节点的重要性来动态调整赋予各节点的重要性权重,能更好根据具体应用场景对不同节点的重要性进行挖掘,使得训练的模型能更好挖掘数据特征,能够有效提高账户状态模型预测的准确度。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图9所示,提供了一种账户状态模型构建装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:数据获取模块902、样本数据生成模块904、训练模块906,其中:
数据获取模块902,用于获取历史用户特征数据;
样本数据生成模块904,用于根据历史用户特征数据构建用户特征图谱;基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,模型训练参数初值为账户状态模型中待训练参数的初始值;基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性;基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据;
训练模块906,用于基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。
上述账户状态模型构建装置,通过获取历史用户特征数据,根据历史用户特征数据来构建用户特征图谱,再基于用户特征图谱中各节点的节点属性特征与模型训练参数初值生成对应的节点初始特征向量,其中模型训练参数初值为账户状态模型中待训练参数的初始值,基于节点初始特征向量融合得到关联矩阵,关联矩阵用于表征各节点的关联关系以及各节点的重要性,基于用户特征图谱、关联矩阵以及节点初始特征向量得到特征输入样本数据,基于特征输入样本数据训练得到账户状态模型,账户状态模型用于评估目标账户的操作状态。这样,通过将模型训练参数初值参与到生成节点初始特征向量的过程中,从而使得随着模型的迭代,不断迭代出新的训练参数,再根据每次迭代产生的新参数重新生成各节点的特征向量,加快模型的收敛,并且再通过节点初始特征向量融合得到关联矩阵,在模型的训练中实现根据不同节点的重要性来动态调整赋予各节点的重要性权重,能更好根据具体应用场景对不同节点的重要性进行挖掘,使得训练的模型能更好挖掘数据特征,能够有效提高账户状态模型预测的准确度。
在一个实施例中,样本数据生成模块904还用于获取非线性激活函数;根据各节点的节点属性确定各节点的原始节点特征;基于非线性激活函数、原始节点特征以及模型训练参数初值生成各节点对应的节点初始特征向量。
在一个实施例中,样本数据生成模块904还用于当节点为联系方式节点时,则获取联系方式节点相邻节点对应的相邻节点初始特征向量,联系方式节点为节点属性是联系方式的节点;根据相邻节点初始特征向量的均值确定联系方式节点对应的节点初始特征向量。
在一个实施例中,样本数据生成模块904还用于获取各节点中的用户标识节点;根据用户标识节点的账号渠道信息、地理信息、申请状态信息得到用户初始特征向量;基于用户初始特征向量与其他节点对应的节点初始特征向量融合得到关联矩阵。
在一个实施例中,样本数据生成模块904还用于根据各节点中的用户标识节点确定用户特征图谱中的子图谱;根据子图谱得到用户特征图谱权重矩阵;基于用户特征图谱权重矩阵与关联矩阵融合得到节点度矩阵;基于子图谱中的子图谱节点与关联矩阵得到子图谱度矩阵;基于用户特征图谱权重矩阵、关联矩阵、节点度矩阵、子图谱度矩阵以及节点初始特征向量得到特征输入样本数据。
在一个实施例中,训练模块906还用于对特征输入样本数据进行归一化处理得到标准输入样本数据;将标准输入样本数据输入图卷积神经网络模型进行训练得到账户状态模型。
在一个实施例中,训练模块906还用于将标准输入样本数据输入图卷积神经网络模型得到模型实际输出值;将模型实际输出值按照预设分类算法进行分类得到输入样本数据所对应的账户状态实际预估结果;当账户状态实际预估结果与标准输入样本数据中预设的账户状态标准预估结果间的误差大于预设误差阈值时,返回将标准输入样本数据输入图卷积神经网络模型得到模型实际输出值的步骤;当账户状态实际预估结果与标准输入样本数据中预设的账户状态标准预估结果间的误差小于或等于预设误差阈值时,则训练完毕,得到账户状态模型。
关于账户状态模型构建装置的具体限定可以参见上文中对于账户状态模型构建方法的限定,在此不再赘述。上述账户状态模型构建装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过***总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种账户状态模型构建方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。