一种基于RF-DBSCAN算法的信用卡违约欺诈识别方法与流程

文档序号:23093057发布日期:2020-11-27 12:48阅读:280来源:国知局
一种基于RF-DBSCAN算法的信用卡违约欺诈识别方法与流程

本发明涉及一种基于rf-dbscan算法的信用卡违约欺诈识别方法,属于计算机应用技术领域。



背景技术:

随着互联网的迅速发展,消费信贷热不断升温,人们也越来越倾向于先借款享受,后还款的消费观念。在金融信贷领域,不管是各大银行还是网络p2p借贷平台,都已经被发展成为一项具有应用前景,越来越多的企业借助现有成熟的机器学习模型对于信贷用户做出信用的评估等级,用以辅助是否放贷的决策。在信用卡领域故意使用伪造、作废的信用卡,冒用他人的信用卡骗取财物,或用本人信用卡进行恶意透支的行为层出不穷,无意给投资放贷带来了极大的风险。国内存在一些关于信用风险评估的文献研究表明了随机森林模型对于p2p网贷借款人风险评估的准确度相对较高。

在信贷交易过程中,双方信息并不对称。目前很多学者已经将反欺诈模型建立在神经网络、深度学习等算法去解决预测问题,但超参数无法确认是否最优,且容易出现过拟合的现象,训练过程冗长。

rf算法是集成学习的一种,在数据分析领域有广泛的应用场景。rf模型对用户的特征进行提取,构建一棵棵决策树,以便减少分类方面误差,借助单个决策树和最多投票原则相结合,减少了模型的复杂度,同时rf可以处理二元特征、分类特征、数字特征,并且不需要进行任何缩放处理,对于输入的数据具有很好的容忍度。dbscan是一种常见的基于密度的聚类算法。聚类分析最关键就是要寻找数据集中由数据本身自发性的分组或者是数据挖掘者较为感兴趣的分组关系,它能够依据给定的阈值,自发的形成任意形状的簇,使得潜在的自然分组更容易被发现。其中的簇是密度相连的所有点的集合,在算法完成后可以自然的发现噪声点。这两个算法一个是有监督学习,能很好的进行分类,另一个是无监督学习,能很好的进行聚类帮助发现异常点。本发明通过有监督和无监督学习结合起来,进行分两步进行训练,完成信贷领域的违约和欺诈识别预测。



技术实现要素:

(一)要解决的技术问题

为了解决现有信用违约欺诈和识别的技术问题,本发明提供一种基于rf-dbscan算法的信用卡违约欺诈识别方法。

(二)技术方案

为了达到上述目的,本发明采用的主要技术方案包括:

一种基于rf-dbscan算法的信用卡违约欺诈识别方法,其包括以下步骤:

s1、将原始信用卡数据集进行离散化处理、归一化处理、特征属性筛选,经过对数据集的一系列规范化处理之后获得易于处理、少冗余、干净、非均衡的数据集;

s2、由于s1得到的数据集中正负样本比例失衡,需对其进一步做代价敏感学习,对s1得到的非均衡的数据集进行均衡化处理,使得违约用户的数量与可信任用户数量接近1:1;

s3、通过s1、s2得到的数据集进行特征属性的选取,对于数据集中所有的属性进行筛选,各个变量之间可能存在着大量的冗余,使用spss软件利用公式(3)进行属性之间冗余度计算检测,对高冗余的属性进行删除,确保在有限属性数量的基础上获得最大程度的信息量;

其中,ra,b表示属性ab之间的相关度,a表示属性a,b表示属性b,表示属性a,b的均值,σa表示属性a的标准差,σb表示属性b的标准差;

s4、将经过步骤s1、s2、s3处理之后的数据作为rf模型的输入,构建随机森林模型首先采用gini指标作为决策树的生成方式,之后确定rf模型最优随机分割变量数mtry和决策树的数量ntree,对训练集数据进行有效监督学习生成rf模型,对测试集样本数据做出分类,得到可信任用户及违约用户的分类结果;

s5、对s4学习生成的rf模型的分类精确度进行衡量,采用roc(receiveroperatingcharacteristiccurve,简称roc曲线)曲线作为评价指标,对生成rf模型分类性能进行测评,根据得到的高精确度分类结果来确保dbscan模型的输入数据的高质量;

s6、将rf模型得到的分类结果赋予不同的初始欺诈概率值,进一步借助dbscan算法能自发的形成任意形状的簇的特征,通过控制不同的聚类程度,来得到与之对应的不同的离异点;依据违约用户的初始欺诈阈值来设定欺诈概率阈值,将大于阈值的数据作为dbscan模型的输入;

s7、dbscan模型的搭建,首先需要特征属性的重要度衡量,在rf模型中,依次删除单个特征属性其余属性保持不变,依据当前删除特征属性之后的性能下降的程度作为特征属性的重要度衡量指标,下降性能越多的,表明该特征属性对于分类任务越重要,选择最重要的两个属性作为dbscan模型的坐标值的依据,其次,借助dbscan模型的超参ε-邻域、邻域内样本个数m进行调控,来决定形成的簇的个数,从而控制聚类的聚集程度,以得到不同程度的离异点,根据离异的程度不同加以不同的欺诈概率,将得到的异常点加大其欺诈概率,对欺诈概率大的节点进行标明排序,最终,通过将rf模型的分类结果及dbscan模型的预测欺诈概率与标的信息进行对比,从而得到精确度衡量。

在一个优选的实施方案中,在步骤s1中,所述离散化处理用3-4-5规则处理,对应的根据3-4-5规则处理后的用户信用卡可用额度变量取值可以对应在如下五个层次,并为每个层次赋值,离散化处理采用公式(1);

其中,x1表示标的信息。

在一个优选的实施方案中,在步骤s1中,所述归一化处理采用最小—最大规范化处理所有的数据,采用公式如(2)所示;

在一个优选的实施方案中,在步骤s4中,所述决策树的生成包括:

s401、树的生长:对整个数据集的所有属性按照制定指标进行计算,按照gart树的生成方式来生成随机森林里的决策树,采用gini指标作为衡量指标找到能最大程度降低数据集的不确定性的属性,作为根节点开始生成整棵树,数据集按照该属性的所拥有的取值进行数据集的划分变成多个子集,再依次递归执行上述方法,循环地划分数据样本,直到每一个叶子节点所包含的数据集都是纯净的一个类别,决策树的生长过程结束;

s402、树的剪枝(treepruning):决策树生成之后若存在过拟合的问题,剪枝过程则采用多数投票原则,决策树的不同分支给出的结果不一致,选取分类结果最多的作为最终结果,对于冗余的分支叶子节点处进行削减删除,进而提高整个树的要进行预测的测试集分性能。

在一个优选的实施方案中,在步骤s401中,所述gart树是采用gini指标来衡量数据划分或者数据集的不纯度,该划分的gini指标公式见式子(4),

其中pi和信息熵公式中的含义一样,都代表数据集d中类别为ci的概率,ci表示对应分类类别第i类,d表示数据集。

在一个优选的实施方案中,在步骤s6中,所述dbscan的操作步骤:1)首先对数据集d里标记所有对象为未经处理状态,再数据集d中每个对象p进行循环处理,如果p已经归入某个簇f或者已经标记为异常点,继续寻找;

2)如果尚未标记,检查对象p的邻域ε-neps(p),如果其neps(p)包含的对象数小于m,那么标记对象p为边界点,大于m就将对象p设置为核心对象,由此建立新的簇f,把所有的满足条件的该对象内的边界点加入f;即在核心对象的ε-邻域内;对于neps(p)中所有尚未被处理的对象q,检查这个对象其eps邻域neps(q),如若neps(q)包含的个数大于m个对象则将neps(q)中未归入任何一个簇的对象加入f中去,直至对所有节点处理完成。

3)聚类结果得到多个不同大小的簇f,以及没有归入任何一类簇的异常点,找到这些异常点的对应坐标值,回溯其数据集中的用户,并根据聚类的簇f的多少加以不同大小的欺诈概率。

本发明考虑到可以将有效的方法可以相互进行组合,将预测精度高的rf分类模型与dbscan算法相结合,构建组合模型解决信用违约欺诈识别预测问题。如何在大数据时代,借助成熟的机器学习算法,为投资方构建一款预测信用欺诈模型,提高预测准确率,有效的减少信用违约和欺诈客户的数量,降低由于信息不对称带来的风险,且对于提高反欺诈系统稳定性有一定的重要意义。

(三)有益效果

本发明的有益效果是:

本发明提供了一种在信贷领域,对信用违约及欺诈的识别预测方法。根据查看文献,现有的信用违约欺诈预测大都建立在神经网络、深度学习等算法去解决预测问题,但是这些算法都需构建复杂的深层网络,超参数的调控无法确认是否是最优,且部分容易出现过拟合的现象,训练过程复杂。因此,本发明提出将rf-dbscan结合的方式,分步处理信贷领域为违约和欺诈预测。本发明构建一个完整的信用违约和欺诈预测模型,在投资者进行放贷之前识别那些信用欺诈并合理避开高风险违约的信贷用户,从而对投资决策起正面引导作用。

附图说明

图1dbscan执行过程示意图;

图2gart生成二叉分类树的过程图;

图3随机森林集成学习原理示意图;

图4本发明具体实施方法的流程图;

图5本发明所选特征的重要程度对比图;

图6不同参数组合的精确度对比;

图7特征重要度对比;

图8dbscan模型离异点分布图;

图9本实施方法与其他方法精确度对比图。

具体实施方式

为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。

本发明所用的符号和意义见表1。

下面是的一些基本定义:

定义1:对象的ε-邻域代表着给定一个对象在半径ε内的区域。

定义2:核心对象,当该对象的ε-邻域包含的个数大于最初设定的最小数目minpts个对象,则将该对象设定为核心对象。如图1中的m、o点就是核心对象。

定义3:边界点,被包含在某个核心点的邻域内,但不是核心点。图1中的t就是边界点。

定义4:直接密度可达,如图1所示,t是在o的ε-邻域内,而o是一个核心对象,可以看出对象t从对象o出发是直接密度可达。

定义5:密度可达,与直接密度可达不同的是,有了中间的过渡点。如果存在一个对象链p1,p2,…,pn,p_1=q,p_n=p,对p_i∈d(1≤i≤n),pi+1是从pi关于ε和minpts直接密度可达的,可以称对象p是从对象q关于领域和最小值的密度可达。见图1,对象s是对象o关于领域和最小值的密度可达。

定义6:密度相连,相比与密度可达,有了方向性。如图1所示,o→t→s是密度可达,o→b→r也是密度可达,围成的整个链。可以称对象s和r是关于ε和minpts密度相连的。

定义7:噪声或者离异点,形成的分组是包含所有密度相连的对象的点的集合,没有被划到任意一个组的孤立点,就是所谓的离异点。

实施例1

一种基于rf-dbscan的信用卡违约欺诈识别方法,其包括以下步骤:

s1、将原始信用卡的数据集进行离散化处理、归一化处理、特征属性筛选,使得到的数据更干净少冗余,以得到高效精确分类的rf模型。具体地:

s101、针对多个属性,进行离散化处理,离散化处理此案用3-4-5规则处理,对数据进行了一系列规范化、离散化、冗余处理。3-4-5规则根据最重要的数字上的值区域,递归的和逐层的将给定的数据区域划分为3、4或5个等宽区间,如果一个区间最高有效位上跨越3,6,7或9个不同的值,就将该区间划分为3个等宽子区间;如果一个区间最高有效位上跨越2,4,或8个不同的值,就将该区间划分为4个等宽子区间;如果一个区间最高有效位上跨越1,5,或10个不同的值,就将该区间划分为5个等宽子区间。对应的根据3-4-5规则处理后的用户信用卡可用额度变量取值可以对应在如下五个层次,并为每个层次赋值,离散化处理例子见式(1)。

s102、为了消除不同单位量纲之间的影响,进行归一化处理,一般而言归一化处理之后的数据,对于模型的精确度有所提高,包括生成模型的整个收敛过程也会加快。此处部分变量在已经经过离散化处理之后,采用最小—最大规范化处理所有的数据,见公式如(2)所示。

s2、采用代价敏感学习对非均衡的数据进行处理,分类器必定会有误差出现,可以将误差分为两种情况:一是将可靠用户判为违约用户,二是将可能涉嫌欺诈违约的用户判断为可靠的用户。在信用卡违约欺诈算法学习的时候,为类似于这样将违约欺诈的人误判为可信任的用户样本设置更高的学习权重,从而让算法更加专注于信用欺诈违约的分类情况,提高对信用违约样本分类的查全率,但是也会将很多可信任用户分类为可能违约的用户,降低坏用户分类的查准率,但这一类的损失相对来说比较少,对于投资者来说在可以接受范围内即可,但第二种需着重考虑,对于违约用户加注更多的关注,通过加大违约用户的数量,对非均衡的数据进行处理,使其与可信任用户数量接近1:1。

s3、特征属性的选取,对于数据集中所有的属性进行筛选,各个变量之间可能存在着大量的冗余,使用spss软件进行属性之间冗余度计算检测,采用式子(3)。对高冗余的属性进行删除,确保在有限属性数量的基础上获得最大程度的信息量。

s4、构建随机森林模型来区分可信任用户及违约用户,信用数据集属性特征维度为q,紧接着从q个特征属性中,进行随机选取对应q个特征子集,在树的生长过程中,每次都会从q个特征中选取一个最优作为叶子节点。整个过程让树尽可能的生长,不对树进行剪枝的过程时,当试图减小特征选择个数q时候,树与树之间的相关性和分类性能也会随着它的相应的降低,当增大q时候,分类性能也会随之增大,但是容易出现过拟合的情况。设定最优的特征个数q,能够有效的保证分类性能,同时不易出现过拟合现象,整体能对噪声有一定的抵抗能力。所以随机森林模型最重要的过程就是确定最优的随机分割变量数mtry和决策树的数量ntree。首先需要确定决策树的生成,决策树的生成可以概括为两个过程:

s401、树的生长:对整个数据集的所有属性按照制定指标进行计算,找到能最大程度降低数据集的不确定性的属性,作为根节点开始生成整棵树,数据集按照该属性的所拥有的取值进行数据集的划分变成多个子集,再依次递归执行上述方法,循环地划分数据样本,直到每一个叶子节点所包含的数据集都是纯净的一个类别,决策树的生长过程结束。整个树的生成过程采用以下方式:

首先确定生成的决策树种类,决策树生成算法,选择gart作为数据集的分裂准则即树的生成方式,它是建立在id3思想之上,采用基于最小距离的gini指数作为衡量标准,原理上也是去除不确定性越多的作为节点属性,生成的是二叉树。在本发明中考虑到c4.5在构造决策树的过程中,生成的是完整的树,相对于二叉树而言,比较复杂,生成的效率也较低。其生长过程如图2,它为一种二分决策树,构成的树一棵二叉树。类比香农的信息熵理论,信息熵代表信源整体的平均不确定性,整个数据集的不确定性越大,信息熵的取值就越大,gart算法的是采用gini指标来衡量数据划分或者数据集的不纯度,该划分的gini指标公式见式子(4),

其中pi和信息熵公式中的含义一样,都代表数据集d中类别为ci的概率,

1)对于标量属性,其本身不需要进行离散化处理,选取其中的每个属性计算其相应的gini指标。以属性a为例,假设属性a有三个属性值{a1,a2,a3},其子集有8个分别是{a1,a2,a3}、{a1,a2}、{a1,a3}、{a2,a3}、{a1}、{a2}、{a3}、{}。其中{a1,a2,a3}、{}不代表任何分裂,可以看出对属性a进行二元划分,存在(23-2)/2=3种划分的方法;

2)对于连续属性,需要关注每一个可能的分割点,将每一个排好序的中点值作为分割点sp(splitpoint)。此时数据集d被划分为:d1:a≤sp和d2:a>sp,之后计算方法与标量属性一致,找到gini指标最小的作为最优划分。

整个gart算法的过程如下,并结合图2进行分析:

1)依据属性a的取值划分为d1,d2两个数据集按照公式计算每一种划分所对应的gini指标的大小值,消去不确定性越大的属性,所得到的基尼指数值越小,当取值最小的即为最好的二元划分,对应图2,利用特征a的取值{a1,a3},将数据分为两部分,分别计算a=a1和a=a3时的基尼系数见公式(5):

2)所有的属性,利用gini指数进行量化每一个属性的降低不确定性的能力,这里可以假设属性a以及其取值{a1,a3}是基尼系数最小的。将数据集按照a1,a3进行划分,对于每一个样本,它对应的属性a若取值为a1,则划分到d1中,否则划分到d2中;

3)递归的调用1),2),依次类推选择根据图中顺序b、c、d作分裂属性,直至分支上所有样本都属于同一类,或没有测试属性可选,决策树的生长过程结束。

4)输出生成的cart树t见图2。

s402、树的剪枝(treepruning):决策树生成之后可能存在过拟合的问题,比如分支中存在的噪声点或者离异点,这是就需要对树进行剪枝处理。树的剪枝过程用多数投票原则,决策树的不同分支给出的结果不一致,选取分类结果最多的作为最终结果,对于冗余的分支叶子节点处进行削减删除依次提高整个树的要进行预测的测试集分性能。

通过调控的最有参数组合,进行有监督学习生成rf模型,并对新的未标记样本进行分类预测,从而完成对数据集的可信任用户和违约用户的划分。对于违约用户,会存在非刻意违约的用户以及蓄意欺诈,需要进一步通过聚类的方式进一步去区别辨认。

s5、对s4学习生成的rf模型的分类精确度进行衡量,本发明采用roc(receiveroperatingcharacteristiccurve,简称roc曲线)曲线作为评价指标,对生成rf模型分类性能进行测评,根据得到的高精确度分类结果来确保dbscan模型的输入数据的高质量。

s6、选择随机森林作为预测方法,对于输入的数据集d,借助bagging又名套袋法的思想,它本质上是一个模型融合器,可以将弱分类器进行组合形成一个强分类器,并行的生成预测的模型,且相互独立,进而提高分类的精确度。使用bootstrap(采用重抽样技术从原始样本中抽取一定数量的样本,此过程允许重复抽样)重采样方法即有放回的采样。从数据集d中随机有放回的抽取n个样本集,参考图3。每个样本之间应尽可能的独立,同时可能存在不同样本之间存在着相同的数据。集成学习的思想就是将原本的一个个弱分类器进行组合,形成一个强的分类器。借用每一个相互独立的样本集构建一个gart决策树t,每棵决策树都代表着一个分类器,对于测试样本的分类结果具有一票的投票权。最终的结果采用对多投票原则,随机森林参考了所有的分类投票的结果,将投票次数最多的类别指定为最终的判定结果,数量多的一类确定为改测试样本的最终类别。随机森林的整体分类效果与以下两点相关密切:

1)整个森林中树与树之间的独立性:树与树之间越是独立,错误率越低。

2)森林中每棵树的分类能力:每棵树的分类能力越强,整个森林的错误率越低。

s7、rf模型可以将数据集进行违约及可信任用户的划分,需进一步对欺诈用户进行识别,所以对数据集依据其划分结果将违约用户和可信任用户给予不同的欺诈概率初始值,其中违约用户的欺诈概率初值大于可信任用户的初始值,本发明在实施中仅考虑违约用户作为dbscan模型的输入,即给定的阈值大于可信任用户的初始欺诈概率小于违约用户的初始欺诈概率,确保分类器划分的违约用户,作为dbscan模型的输入,进一步预测欺诈的概率。

s8、将rf模型得到的违约用户作为dbscan模型的输入,dbscan是基于密度的聚类算法。它能够依据超参ε-邻域、邻域内样本个数m来控制阈值,使其能自发的形成任意形状的簇,使得潜在的自然分组更容易被发现。本发明利用dbscan算法思想的反向思路,通过借助dbscan聚类后发现散落的离异点进行分析,而不是使用它进行聚类分组,下面是聚类操作的基本步骤:其中需要输入的超参是ε-邻域、m:

1)首先对数据集d里标记所有对象为未经处理状态,再数据集d中每个对象p进行循环处理,如果p以及归入某个簇f或者已经标记为异常点,继续寻找;

2)如果尚未标记,检查对象p的邻域ε-neps(p),如果neps(p)包含的对象数小于m,那么标记对象p为边界点,大于m就将对象p设置为核心对象,由此建立新的簇f,把所有的满足条件的该对象内的边界点加入f;即在核心对象的ε-邻域内;

3)对于neps(p)中所有尚未被处理的对象q,检查这个对象其eps邻域neps(q),如若neps(q)包含的个数大于m个对象则将neps(q)中未归入任何一个簇的对象加入f中去。

s9、通过对dbscan模型的超参ε-邻域、邻域内样本个数m进行调控,可以控制不同程度的离异点,根据离散的程度加以不同的欺诈概率,将得到的异常点加大其欺诈概率,对欺诈概率大的节点进行标明排序,最终将rf模型的分类结果以及dbscan模型的欺诈概率预测与标的信息进行对比从而得到精确度衡量。

实施例2

本实施例中采用的数据集来自ucimachinelearningpepository平台提供的台湾地区信用卡数据作为信用违约与欺诈的预测识别。初始数据集信用卡数据共包含30000条数据,其中有6636条数据属于拖欠支付的信用卡记录,剩余23364条数据是按时支付,属于可靠用户,共有23个解释变量,其中包括标的信息表2-1、基本身份信息表2-2、历史信用记录表2-3、个人消费记录表2-4。其中有9个为离散变量,剩余14个为连续变量,1个响应变量(是否拖欠支付yes=1,no=0)。该数据集具有多元性的二分类数据,且数据是真实的信用卡交易数据。本文使用python语言实现rf-dbscan模型的构建,对于数据集采用交叉验证的方式划分数据集。样本数据集共有30000条数据,其中70%作为训练样本,30%作为测试样本。

表2-1标的信息指标介绍

表2-2基本身份信息

表2-3历史信用记录

表2-4个人消费记录

对于rf-dbscan算法对信用违约欺诈的预测识别运行本实施的方法,流程图如图4所示。主要包括以下步骤:

步骤1:数据预处理:对实验的原始数据集进行提前处理,对应图4的数据预处理部分,将连续值改进成离散值,除此之外消除量纲的作用进行的归一化处理,采用公式(2)对所有属性的取值进行计算处理,得到0-1区间内的数值,使得数据集更加规范化、易处理数据。

步骤2:代价敏感学习:对规范化之后的数据集,借助代价敏感学习进行均衡化处理,对应图4代价敏感学习。对于此类的分类问题,分类的错误严重性也是不一样的。在信用卡违约欺诈算法学习的时候,为类似于这样将违约欺诈的人误判为可信任的用户样本设置更高的学习权重,从而让算法更加专注于信用欺诈违约的分类情况,均衡化处理之后得到正负样本近似1:1的数据集。

步骤3:特征属性的选取,对于均衡化的数据集中所有的属性进行筛选,各个变量之间可能存在着大量的冗余,所以对于x1-x23使用spss软件进行属性之间相关度计算检测,计算结果见图5,图中灰色区域表示属性之间相关性较高,可以选择其中作为主要分析属性,本实施最终选取x1-x11作为模型属性。

步骤4:将经过步骤1、2、3处理之后的数据集作为rf模型的输入,rf模型构建需要确定最优参数组合的选定,在随机森林模块需要进行随机分割变量数mtry和决策树的数量ntree参数的调整,在python中导入numpy和sklearn的机器学习的包,采用randomforestsclassifier()方法,需要对于它的各个参数进行取值测评,比较重要的参数有树的所有可选择最大特征数、树能伸展的最大深度、内部节点再划分所需最小样本数min_samples_split和叶子节点最少样本数min_samples_leaf。各参数含义如下各参数取值汇总见表3:

1)max_fearures是随机森林中单个决策树可以使用的特征的最大数量,本发明取值为采用none。

2)max_depth是树的最大深度,取值为none。

3)n_estimators是建立子树的数量,由于随机森林采用投票原则,所以越多的子树可以让模型有更好的性能,但同时代码运行速度也会受到影响,当树深度一致,其他参数也一致的情况下,ntree=1000的准确度大于ntree=100,同时ntree=1500的情况和ntree=1000一样,本实施方案选择决策树的数量为1000。

4)当再次进行划分允许的对于内部节点最小样本数用min_samples_split来表示,设置此个值是为了防止出现过拟合现象,通过调试min_samples_split取值为2时效果较好。

5)生成的叶子节点最少样本数min_samples_leaf,取值为1。

表3实验参数取值

通过对参数进行调参的实验精确度,不同参数组合的效果对比如图6所示,确定好最优参数组合,图中前一个数是n_estimators,后一个数是max_depth,通过观察可以发现,当树深度一致,其他参数也一致的情况下,ntree=1000的准确度大于ntree=100,同时ntree=1500的情况和ntree=1000一样,所以选择决策树的数量为1000。将通过训练数据学习到的分类模型,采用测试数据集的未标记数据进行测试最终得到可信任与违约用户的划分。

步骤5:评价指标选取,本实验选取roc曲线作为基本评价指标,它构成的曲线与坐标轴围成的面积就是auc值。构成的曲线与坐标轴围成的面积就是auc值,它介于0.1和1之间,能更加直观的展示roc曲线想表达的意思,作为数值可以直观的评价分类器的好坏,取值越大越好,从而能够更好地分类。数据集的数量越大,roc可能表现的越不容易波动,也就是越稳定,auc准确度越高。m为正类样本的数目,n为负类样本的数目,计算auc公式如(6)所示,通过借助roc曲线来评价rf模型分类的精确度。rf模型精确度如表4所示

表4代码结果展示

步骤6:特征重要性的确定,在已确定最优参数的情况下去考察每一个特征对于分辨是否是违约客户的重要性,机器学习sklearn包中用到feature_importances来做特征筛选,其中impurity就是gini值,weighted_n_node_samples就是各个节点的加权样本数,除以根节点nodes[0].weighted_n_node_samples的总样本数。本发明采用构建好的随机森林调用feature_importances_取得各个特征的重要程度,实验的结果可视化展示为如图7所示,从图中可以分析到年龄、信用卡可用额度这个特征对于是否违约有比较大的重要性。

步骤7:使用步骤4得到的可信任用户及违约用户的划分结果,以及步骤6的特征属性的最重要的两个年龄、信用卡可用额度作为dbscan算法中坐标的参考值。利用dbscan算法进行信用欺诈额预测识别处理,本发明通过绘制dbscan散落图进行原理上分析。对于每一个点,选取其特征性最重要的两个属性值作为(x,y)构成平面的坐落,可以发现部分点偏离整体群落,独自散落着,这就是可能涉嫌欺诈的离散点,可以在最初的基础之上加重其欺诈的可能性。如图8所示,通过选取年龄和给定信用额作为x,y的作为dbsacn算法的坐标值输入,对于图中离散的数据点加以欺诈概率值,其中画圈区域内的离散点,可以按照固定的比例加大概率值。

模型调参过程如下,参数取值如表5所示:

1)eps:两个样本之间的最大距离,即扫描半径,超参,需要通过多次实验获取。

2)min_samples:作为核心点的邻域(即以其为圆心,eps为半径的圆,含圆上的点)中的最小样本数,包括点本身。

3)metric:度量方式,默认为欧式距离,欧式距离公式如下(7)

4)algorithm:近邻算法求解方式,有四种:‘auto’,‘ball_tree’,‘kd_tree’,‘brute’

5)leaf_size:叶的大小,在使用balltreeorckdtree近邻算法时候会需要这个参数

6)n_jobs:使用cpu格式,-1代表全开。

表5dbscan算法的参数

实验结果最终得到的欺诈概率参考值可以帮助贷款方进一步提高审核通过的门阈值,可以有效地减少欺诈用户被审核通过的概率,从而进一步的减少了利润损失。从而增大借款方的借款难度,在一定程度上大幅度的减少了投资方的损失。通过调整相关的参数以及给定欺诈阈值,最终得到8个可能涉嫌欺诈的用户,将大于欺诈阈值的预测欺诈设置为负值,其余的设置为0作为输出,这部分信贷用户的部分基本信息如表6所示:

表6涉嫌欺诈用户数据

步骤8:将本实验与决策树算法、logistic回归模型、bp神经网络进行对比,其中,

1)决策树算法:采用单一的决策树的准确率分析,这里依旧采用gart树作为决策树的生成种类。通过python代码,输入与rf-dbscan模型相同的数据,再次验证单一的决策树准确率较随机森林低。其中决策树的预测精度约为0.735,本发明的rf-dbscan的预测精度为0.9699。

2)logistic回归模型:本实施通过spss软件对于数据集进行线性回归分析,得到logistic回归分析模型的预测结果对应的roc曲线,roc曲线所相应的auc值为0.807,多次实验最终选取其精确度最高的0.823进行对比。

3)bp神经网络:实施方案采用的bp神经网络的隐藏层共1层,共包含了4个单元即四个中间节点,调整过程同本实施方案一样,选取70%作为训练样本,剩余30%作为测试样本;最终预测精确度为0.8791。

图9是实验结果的直观对比图,可以发现rf-dbscan具有很高的准确度。整体信用违约-欺诈模型,借助rf-dbscan模型相结合方式,为信贷领域提供了可靠的决策参考依据。

以上所述,仅是本发明的较佳实施例而已,并非是对本发明做其它形式的限制,任何本领域技术人员可以利用上述公开的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。

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