具体实施方式
下面结合附图,对本申请的实施例进行描述。
本申请实施例提供的打分模型的建立方法及装置适用于分群建模的场景,分群建模的本质是把复杂函数关系分解成简单的相加函数关系。具体地,先找到用于分群的特征变量,之后根据特征变量及对应的特征值,对样本数据进行分群。在分群之后,针对每个分群,建立相应的子打分模型。在理想的情况下,子打分模型即为简单的相加函数关系,如,直接可以用评分卡模型来描述。因此,在分群建模的过程中,用于分群的特征变量的选择是比较关键的部分。本申请将在以下实施例中对该部分内容作出详细介绍。
此外,本申请建立的打分模型可以应用于用户信用的评估以及金融风险控制等领域。
图1为本申请一种实施例提供的打分模型的建立方法流程图。所述方法的执行主体可以为具有处理能力的设备:服务器或者系统或者装置,如图1所示,所述方法具体包括:
步骤110,搜集样本数据集合。
该样本数据集合可以包括多个样本数据,每个样本数据包括至少一个特征变量及对应的特征值以及样本标记。
需要说明的是,上述特征变量可以由人为预先设定。举例来说,当上述打分模型应用于用户信用的评估时,上述样本数据的特征变量可以归属于如下三个类别:1)用户行为数据(Activity,简称A)。2)用户趋势数据(Trend,简称T)。3)用户画像数据(Profile,简称P)等。用户行为数据可以包括:用户交易行为数据、用户理财行为数据以及用户其它行为数据。其中,用户交易行为数据例如可以为:a,若干天(如,90天)平均支付金额;b,若干天(如,180天)内支付天数;c,若干天(如,180天)内支付金额;d,最后一次支付距今时间等。用户理财行为数据例如可以为:a,若干天内购买第一目标产品次数,如,90天内购买招财宝次数;b,若干天内购买第二目标产品次数,如,90天内购买余额宝次数;c,若干天内购买第二目标产品金额,如,90天内购买余额宝余额。用户其它行为数据例如可以为:a,若干天(如,180天)内用户来电次数;b,最后一次登录城市;c,最后一次登录距今时间;d,若干天(如,90天)内登录次数等。用户趋势数据例如可以为:a,用户平均余额变化趋势(30天/30-90天);b,登录次数变化趋势(30天/30-60天);c,远程过程调用(Remote Procedure Call,RPC)变化趋势(30天/30-60天);d,支付次数变化趋势(30天/30-90天)等。用户画像数据例如可以为:a,用户是否单身;b,用户是否装修;c,用户是否已婚;d,用户年龄;e,用户注册时长;f,用户学历;g,用户收入等。
需要说明的是,可以对样本数据中各个特征变量对应的特征值进行预处理,如,离散化处理。举例来说,假设特征变量为用户年龄,则在对用户年龄离散化处理之后,可以得到如下四个分段(也称分箱):“<20”、“[20,25)”、“[25,30)”以及“>=30”。
步骤120,对每个特征变量,获取特征变量与其它特征变量的交互指标。
此处的其它特征变量是指样本数据中除该特征变量之外剩余的特征变量,其个数可以为多个。举例来说,假设样本数据集合中的样本数据由三个特征变量及对应的特征的值构成,且假设该三个特征变量分别为:x1、x2和x3。则在特征变量为x1时,其它特征变量包括:x2和x3。
在一种实现方式中,获取特征变量与一个其它特征变量的交互指标的过程可以如图2所示。图2中,可以包括如下步骤:
步骤210,根据样本数据中特征变量及对应的特征值、其它特征变量及对应的特征值以及样本数据的样本标记,训练普通评分卡模型。
训练普通评分卡模型的过程具体可以为:预先设定普通评分卡模型:y=f1(x1)+f2(x2),其中,y可以定义为打分结果,x1为一个特征变量,x2为一个其它特征变量。函数关系f1(x1)可以定义为特征变量x1的不同分段对应的分数值,函数关系f2(x2)可以定义为一个其它特征变量x2的不同分段对应的分数值。之后通过优化函数关系f1和f2来实现对普通评分卡模型的训练。可以理解的是,优化函数关系f1即为调整特征变量x1的不同分段对应的分数值的过程,优化函数关系f2即为调整一个其它特征变量x2的不同分段对应的分数值的过程。
具体地,可以是通过学习样本集合中的样本数据,来优化函数关系f1和f2。如,对每个样本数据,可以通过预设的普通评分卡模型来对其进行打分。由于预设的普通评分卡模型中包括了两个函数关系(f1和f2),且f1与x1相关,f2与x2相关。因此,通过预设的普通评分卡模型对样本数据进行打分的过程可以为:通过f1(x1)得到第一打分结果,通过f2(x2)得到第二打分结果。其中,获取第一打分结果的过程即为:根据当前样本数据包含的特征变量x1的特征值,从f1中选择该特征值所属分段对应的分数值的过程。获取第二打分结果的过程即为:根据当前样本数据包含的一个其它特征变量x2的特征值,从f2中选择该特征值所属分段对应的分数值的过程。之后,将第一打分结果与第二打分结果相加,得到最终的打分结果。在得到最终的打分结果之后,通过比对最终的打分结果与该样本数据的样本标记,来调整f1和f2,从而得到优化后的f1和f2。在一种实现方式中,当预设的普通评分卡模型对各个样本数据的打分结果的准确率达到预设阈值时,就训练出了普通评分卡模型。
在一个例子中,训练出的普通评分卡模型可以如表1所示。
表1
需要说明的是,步骤210在设定普通评分卡模型时,假设f1与一个特征变量(x1)相关,f2与一个特征变量(x2)相关,即f1和f2均为一元函数,也即上述普通评分卡模型没有考虑特征变量之间的交互关系。
还需要说明的是,由于f1只与特征变量x1相关,f2只与特征变量x2相关。因此,在调整f1和f2的过程中不需要大批样本数据。此外,因为不需要大批样本数据,所以可以快速地对普通评分卡模型进行训练。
步骤220,根据样本数据中特征变量及对应的特征值、其它特征变量及对应的特征值以及样本数据的样本标记,训练交叉评分卡模型。
训练交叉评分卡模型的过程具体可以为:预先设定交叉评分卡模型:y=f(x1,x2),其中,y可以定义为打分结果,x1为一个特征变量,x2为一个其它特征变量。函数关系f(x1,x2)可以定义为特征变量x1与一个其它特征变量x2的交叉分段(也称二元交叉分段)对应的分数值。之后通过优化函数关系f来实现对交叉评分卡模型的训练。可以理解的是,优化函数关系f即为调整特征变量x1与一个其它特征变量x2的交叉分段对应的分数值的过程。
函数关系f的优化过程与f1的优化过程类似,在此不复赘述。
以下将通过举例的方式来说明交叉分段:假设特征变量为用户年龄,且用户年龄的四个分段为:“<20”、“[20,25)”、“[25,30)”以及“>=30”。且假设一个其它特征变量为用户学历,且用户学历的四个分段为:“专科及以下”、“本科”、“硕士”以及“博士及以上”。则特征变量与其它特征变量可以构成4*4=16个交叉分段。其中,一个交叉分段可以举例为“<20&专科及以下”。
需要说明的是,步骤220在设定交叉评分卡模型时,假设y同时与两个自变量(x1和x2)相关,即f(x1,x2)为二元函数,也即上述交叉评分卡模型考虑了特征变量之间的交互关系。因此,通过交叉评分卡模型通常能很好的描述特征变量之间的交互关系。
步骤230,确定训练出的普通评分卡模型与训练出的交叉评分卡模型的性能差异值,将性能差异值作为交互指标。
在一个例子中,在确定上述性能差异值之前,可以先确定训练出的普通评分卡模型的性能指标值obj{f1(x1)+f2(x2)}以及训练出的交叉评分卡模型的性能指标值obj{f(x1,x2)}。其中,训练出的普通评分卡模型的性能指标值的确定过程可以为:通过训练出的普通评分卡模型对各个样本数据进行打分;根据训练出的普通评分卡模型对各个样本数据的打分结果以及样本标记,确定训练出的普通评分卡模型的性能指标值。
训练出的普通评分卡模型的性能指标值的确定过程具体可以为:通过训练出的普通评分卡模型对各个样本数据进行打分,得到各个样本数据的打分结果。根据各个样本数据的打分结果以及各个样本数据的样本标记,确定各个样本数据的误差值。根据各个样本数据的误差值,确定训练出的普通评分卡模型的性能指标值。
训练出的交叉评分卡模型的性能指标值obj{f(x1,x2)}的确定过程可以为:通过训练出的交叉评分卡模型对各个样本数据进行打分;根据训练出的交叉评分卡模型对各个样本数据的打分结果以及样本标记,确定训练出的交叉评分卡模型的性能指标值。
上述普通评分卡模型和交叉评分卡模型的性能指标确定方式只是一个举例,实际上,模型性能的评定还有其他的方式,这里不再一一赘述。
在确定训练出的普通评分卡模型的性能指标值以及训练出的交叉评分卡模型的性能指标值之后,可以将两者相减,来确定训练出的普通评分卡模型与训练出的交叉评分卡模型的性能差异值I(x1,x2)。也即I(x1,x2)=obj{f(x1,x2)}-obj{f1(x1)+f2(x2)}。可以理解的是,该性能差异值I(x1,x2)是用于描述训练出的普通评分卡模型与训练出的交叉评分卡模型的性能差异的。
需要说明的是,由于交叉评分卡模型考虑了特征变量之间的交互关系,因此通过交叉评分卡模型通常能很好的描述特征变量之间的交互关系。而普通评分卡模型通常不描述特征变量之间的交互关系。因此,可以将性能差异值作为特征变量之间的交互指标。具体地,当该交互指标比较小时(如,接近0),说明该两个特征变量之间交互关系比较弱。相反,当该交互指标比较大时,说明该两个特征变量之间的交互关系比较强。
步骤130,根据交互指标,确定特征变量的聚合指标。
需要说明的是,当其它特征变量的个数为多个时,获取的交互指标的个数也为多个。其中,每个交互指标的获取方法相类似,即可以如图2所示,本申请在此不复赘述。
举例来说,假设样本数据集合中的样本数据由三个特征变量及对应的特征的值构成,且假设该三个特征变量分别为:x1、x2和x3。则在特征变量为x1时,其它特征变量包括:x2和x3。相应的,计算的交互指标的个数为两个,即为:I(x1,x2)和I(x1,x3)。在一种实现方式中,在确定多个交互指标之后,可以通过将该多个交互指标进行求和,并将求和结果作为特征变量x1的聚合指标。也即可以根据公式1,来确定特征变量的聚合指标。
Agg(xi)=sum(I(xi,xj))j=1,...,N j≠i (公式1)
其中,xi为当前要确定聚合指标的特征变量,其取值范围为[1,N],Agg(xi)为特征变量xi的聚合指标,N为特征变量的个数,xj为不同于特征变量xi的其它特征变量,其个数为N-1个。
可以理解的是,当特征变量的个数为N个时,就可以确定N个聚合指标,分别表示为:Agg(x1),Agg(x2),…,Agg(xN)。
步骤140,根据各个特征变量的聚合指标,从至少一个特征变量中选取目标特征变量。
在一种实现方式中,可以将各个特征变量的聚合指标进行比对,将最大的聚合指标对应的特征变量选取为目标特征变量。需要说明的是,特征变量的聚合指标是该特征变量与其它特征变量的交互指标之和,而交互指标是用于描述该特征变量之间交互关系强弱的,所以某个特征变量的聚合指标最大时,说明该特征变量与所有其它特征变量之间的交互关系都比较强。也即本申请将选取与所有其它特征变量之间的交互关系都比较强的特征变量作为目标特征变量。
步骤150,根据目标特征变量及对应的特征值,将多个样本数据划分为多个样本数据分组。
此处,划分样本数据分组的过程也可以称为分群过程。在分群建模中,根据某一特征变量及对应的特征值对样本数据进行分群属于传统常规技术,在此不复赘述。
需要说明的是,上文中提到目标特征变量是指与所有其它特征变量之间的交互关系都比较强的特征变量,因此,根据该目标特征变量及对应的特征值对样本数据进行分群,可以减少小群里的交互关系。由此,来实现最理想的分群建模的目的。
步骤160,对每个样本数据分组,建立相应的子打分模型。
如,在得到各个样本数据分组之后,可以针对每个样本数据分组,训练普通评分卡模型,其可以如表1所示。
需要说明的是,在建立打分模型之后,就可以基于该打分模型对用户信用进行评估或者对交易行为的风险进行预测了。以基于打分模型对用户信用进行评估为例来说,其评估方法可以如图3所示。图3中,该方法可以包括如下步骤:
步骤310,获取用户的信用数据信息。
此处,用户的信用数据信息可以是由人工或者服务器从后台数据库中收集的,其可以包括但不限于如下三方面的数据:1)用户行为数据。2)用户趋势数据。3)用户画像数据。
步骤320,根据信用数据信息,确定目标特征变量以及其它特征变量对应的特征值。
此处的目标特征变量可以是指通过上述步骤120-步骤140选取的目标特征变量,其选取过程如上所述,在此不服赘述。
以信用数据信息包含用户年龄为20岁,用户学历为本科,用户收入为0为例来说,且假设目标特征变量为用户年龄,其它特征变量包括:用户学历和用户收入。则目标特征变量对应的特征值为:20岁,其它特征变量对应的特征值分别为:本科和0。
步骤330,根据目标特征变量对应的特征值,选择对应的样本数据分组。
举例来说,假设目标特征变量为用户年龄,且根据该目标特征变量对应的特征值将样本数据集合分为四个样本数据分组(也即分为四个群)。其中,第一个样本数据分组中,用户年龄均小于20岁。第二个样本数据分组中,用户年龄在20至25岁之间。第三个样本数据分组中,用户年龄在25至30岁之间。第四个样本数据分组中,用户年龄均大于30岁。则在根据用户的信用数据信息,确定目标特征变量对应的特征值为:20岁时,选择的样本数据分组为第二个样本数据分组。
步骤340,根据样本数据分组对应的子打分模型以及其它特征变量对应的特征值,确定用户的信用分数。
如前述例子,假设选择的第二个样本数据分组对应的子打分模型如表2所示。
表2
具体地,在第二个样本数据分组对应的子打分模型如表2所示时,因为两个其它特征变量对应的特征值分别为:本科和0。则用户的信用分数=37+30=67。
步骤350,根据用户的信用分数,对用户的信用进行评估。
在一种实现方式中,可以设定阈值。当用户的信用分数超过预设的阈值时,说明用户的信用比较高。当用户的信用分数未超过预设的阈值时,说明用户的信用比较低。
本申请实施例提供的用户信用的评估方法可以准确地对用户的信用进行评估,且可以提高评估效率。
与上述打分模型的建立方法对应地,本申请实施例还提供的一种打分模型的建立装置,如图4所示,该装置包括:
搜集单元401,用于搜集样本数据集合,该样本数据集合包括多个样本数据,每个样本数据由至少一个特征变量及对应的特征值构成。
获取单元402,用于对每个特征变量,获取特征变量与其它特征变量的交互指标。
可选地,获取单元402具体可以用于:
根据各个样本数据中特征变量及对应的特征值、其它特征变量及对应的特征值以及样本数据的样本标记,训练普通评分卡模型。
根据各个样本数据中特征变量及对应的特征值、其它特征变量及对应的特征值以及样本数据的样本标记,训练交叉评分卡模型。
确定训练出的普通评分卡模型与训练出的交叉评分卡模型的性能差异值,将性能差异值作为交互指标。
其中,确定训练出的普通评分卡模型与训练出的交叉评分卡模型的性能差异值,包括:
通过训练出的普通评分卡模型对样本数据进行打分;根据训练出的普通评分卡模型对样本数据的打分结果以及样本标记,确定训练出的普通评分卡模型的性能指标值。
通过训练出的交叉评分卡模型对样本数据进行打分;根据训练出的交叉评分卡模型对样本数据的打分结果以及样本标记,确定训练出的交叉评分卡模型的性能指标值。
根据训练出的普通评分卡模型的性能指标值以及训练出的交叉评分卡模型的性能指标值,确定性能差异值。
确定单元403,用于根据获取单元402获取的交互指标,确定特征变量的聚合指标。
可选地,当交互指标为多个时,确定单元403具体可以用于:
对多个交互指标进行求和,得到求和结果。
将求和结果作为特征变量的聚合指标。
选取单元404,用于根据确定单元403确定的各个特征变量的聚合指标,从至少一个特征变量中选取目标特征变量。
可选地,选取单元404具体可以用于:
将各个特征变量的聚合指标进行比对,将最大的聚合指标对应的特征变量选取为目标特征变量。
划分单元405,用于根据选取单元404选取的目标特征变量及对应的特征值,将多个样本数据划分为多个样本数据分组。
建立单元406,用于对划分单元405划分的每个样本数据分组,建立相应的子打分模型。
本申请实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本申请提供的装置的具体工作过程,在此不复赘述。
本申请实施例提供的打分模型的建立装置,搜集单元401搜集样本数据集合。对每个特征变量,获取单元402获取特征变量与其它特征变量的交互指标。确定单元403根据交互指标,确定特征变量的聚合指标。选取单元404根据各个特征变量的聚合指标,从至少一个特征变量中选取目标特征变量。划分单元405根据目标特征变量及对应的特征值,将多个样本数据划分为多个样本数据分组。对每个样本数据分组,建立单元406建立相应的子打分模型。由此,可以提高打分模型建立的准确性。
与上述用户信用的评估方法对应地,本申请实施例还提供的一种用户信用的评估装置,如图5所示,该装置包括:
获取单元501,用于获取用户的信用数据信息。
确定单元502,用于根据获取单元501获取的信用数据信息,确定目标特征变量以及其它特征变量对应的特征值,其中,目标特征变量是根据样本数据中各个特征变量的聚合指标选取的,样本数据由至少一个特征变量及对应的特征值构成。
选取单元503,用于根据确定单元502确定的目标特征变量对应的特征值,选取对应的样本数据分组。
确定单元502,还用于根据选取单元503选取的样本数据分组对应的子打分模型以及其它特征变量对应的特征值,确定用户的信用分数。
评估单元504,用于根据确定单元502确定的用户的信用分数,对用户的信用进行评估。
可选地,选取单元503还可以用于:
对样本数据中的每个特征变量,获取该特征变量与其它特征变量的交互指标。
根据交互指标,确定特征变量的聚合指标。
根据各个特征变量的聚合指标,从至少一个特征变量中选取目标特征变量。
可选地,上述获取特征变量与其它特征变量的交互指标可以包括:
根据样本数据中特征变量及对应的特征值、其它特征变量及对应的特征值以及样本数据的样本标记,训练普通评分卡模型。
根据样本数据中特征变量及对应的特征值、其它特征变量及对应的特征值以及样本数据的样本标记,训练交叉评分卡模型。
确定训练出的普通评分卡模型与训练出的交叉评分卡模型的性能差异值,将性能差异值作为所述交互指标。
可选地,上述确定训练出的普通评分卡模型与训练出的交叉评分卡模型的性能差异值可以包括:
通过训练出的普通评分卡模型对样本数据进行打分;根据训练出的普通评分卡模型对样本数据的打分结果以及样本标记,确定训练出的普通评分卡模型的性能指标值。
通过训练出的交叉评分卡模型对样本数据进行打分;根据训练出的交叉评分卡模型对样本数据的打分结果以及样本标记,确定训练出的交叉评分卡模型的性能指标值。
根据训练出的普通评分卡模型的性能指标值以及训练出的交叉评分卡模型的性能指标值,确定性能差异值。
本申请实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本申请提供的装置的具体工作过程,在此不复赘述。
本申请实施例提供的用户信用的评估装置可以准确地对用户信用进行评估。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。