【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

目录

 

0.赛题流程

1.赛题理解

2.数据集简介

2.1数据集划分

2.2数据集属性

3.评价指标

3.1本竞赛的预测指标

3.2补充知识(金融风控预测类常见的评估指标)

KS(Kolmogorov-Smirnov)

ROC

AUC

3.3补充知识(分类算法常见的评估指标)

混淆矩阵(Confuse Matrix)

准确率(Accuracy)

精确率(Precision)

召回率(Recall)

F1 Score

P-R曲线(Precision-Recall Curve)

ROC(Receiver Operating Characteristic)

AUC(Area Under Curve) AUC(Area Under Curve)

5.小结


0.赛题流程

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

1.赛题理解

本次新人赛是Datawhale与天池联合发起的0基础入门系列赛事第四场 —— 零基础入门金融风控之贷款违约预测挑战赛。 赛题以金融风控中的个人信贷为背景,要求选手根据贷款申请人的数据信息预测其是否有违约(defaulted)的可能,以此判断是否通过此项贷款,这是一个典型的分类问题。通过这道赛题来引导大家了解金融风控中的一些业务背景,解决实际问题,帮助竞赛新人进行自我练习、自我提高。

2.数据集简介

2.1数据集划分

该数据来自某信贷平台的贷款记录,总数据量超过120w,包含47列变量信息,其中15列为匿名变量。为了保证比赛的公平性,将会从中抽取80万条作为训练集20万条作为测试集A,20万条作为测试集B,同时会对employmentTitle、purpose、postCode和title等信息进行脱敏(将隐私信息进行保护)

2.2数据集属性

了解数据集每列的性质会有助于我们对于数据的理解和后续分析。 Tip:匿名特征,就是未告知数据列所属的性质的特征列。

train.csv

id 为贷款清单分配的唯一信用证标识

loanAmnt 贷款金额

term 贷款期限(year)

interestRate 贷款利率

installment 分期付款金额

grade 贷款等级

subGrade 贷款等级之子级

employmentTitle 就业职称

employmentLength 就业年限(年)

homeOwnership 借款人在登记时提供的房屋所有权状况

annualIncome 年收入

verificationStatus 验证状态

issueDate 贷款发放的月份

purpose 借款人在贷款申请时的贷款用途类别

postCode 借款人在贷款申请中提供的邮政编码的前3位数字

regionCode 地区编码

dti 债务收入比

delinquency_2years 借款人过去2年信用档案中逾期30天以上的违约事件数

ficoRangeLow 借款人在贷款发放时的fico所属的下限范围

ficoRangeHigh 借款人在贷款发放时的fico所属的上限范围

openAcc 借款人信用档案中未结信用额度的数量

pubRec 贬损公共记录的数量

pubRecBankruptcies 公开记录清除的数量

revolBal 信贷周转余额合计

revolUtil 循环额度利用率,或借款人使用的相对于所有可用循环信贷的信贷金额

totalAcc 借款人信用档案中当前的信用额度总数

initialListStatus 贷款的初始列表状态

applicationType 表明贷款是个人申请还是与两个共同借款人的联合申请

earliesCreditLine 借款人最早报告的信用额度开立的月份

title 借款人提供的贷款名称

policyCode 公开可用的策略_代码=1新产品不公开可用的策略_代码=2

n系列匿名特征 匿名特征n0-n14,为一些贷款人行为计数特征的处理

3.评价指标

3.1本竞赛的预测指标

竞赛采用AUC作为评价指标。AUC(Area Under Curve)被定义为ROC曲线下与坐标轴围成的面积。

3.2补充知识(金融风控预测类常见的评估指标)

KS(Kolmogorov-Smirnov)

       KS统计量由两位苏联数学家A.N. Kolmogorov和N.V. Smirnov提出。在风控中,KS常用于评估模型区分度。区分度越大,说明模型的风险排序能力(ranking ability)越强。 K-S曲线与ROC曲线类似,不同在于

  1. ROC曲线将真正例率和假正例率作为横纵轴
  2. K-S曲线将真正例率和假正例率都作为纵轴,横轴则由选定的阈值来充当。 公式如下: $$KS=max(TPR-FPR)$$ KS不同代表的不同情况,一般情况KS值越大,模型的区分能力越强,但是也不是越大模型效果就越好,如果KS过大,模型可能存在异常,所以当KS值过高可能需要检查模型是否过拟合。以下为KS值对应的模型情况,但此对应不是唯一的,只代表大致趋势。

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

ROC

AUC

3.3补充知识(分类算法常见的评估指标)

混淆矩阵(Confuse Matrix)

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

(1)若一个实例是正类,并且被预测为正类,即为真正类TP(True Positive )

(2)若一个实例是正类,但是被预测为负类,即为假负类FN(False Negative )

(3)若一个实例是负类,但是被预测为正类,即为假正类FP(False Positive )

(4)若一个实例是负类,并且被预测为负类,即为真负类TN(True Negative )

准确率(Accuracy)

预测正确的结果占总样本的百分比(正对角线/总和),准确率是常用的一个评价指标,但是不适合样本不均衡的情况。

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

精确率(Precision)

又称查准率,在被所有预测为正的样本中实际为正样本的概率,即正确预测为正样本(TP)占预测为正样本(TP+FP)的百分比。

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

召回率(Recall)

又称为查全率,在实际为正的样本中被预测为正样本的概率,即正确预测为正样本(TP)占正样本(TP+FN)的百分比。

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

F1 Score

精确率和召回率又被叫做查准率和查全率,可以通过P-R图进行表示。精确率和召回率是相互影响的,精确率升高则召回率下降,召回率升高则精确率下降,如果需要兼顾二者,就需要精确率、召回率的结合F1 Score。

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

上图P-R曲线中,平衡点就是F1值的分数。

P-R曲线(Precision-Recall Curve)

P-R曲线是描述精确率和召回率变化的曲线

如何理解P-R(精确率-召回率)曲线呢?或者说这些曲线是根据什么变化呢?

以逻辑回归举例,其输出值是0-1之间的数字。因此,如果我们想要判断用户的好坏,那么就必须定一个阈值。比如大于0.5指定为好用户,小于0.5指定为坏用户,然后就可以得到相应的精确率和召回率。但问题是,这个阈值是我们随便定义的,并不知道这个阈值是否符合我们的要求。因此为了寻找一个合适的阈值,我们就需要遍历0-1之间所有的阈值,而每个阈值都对应一个精确率和召回率,从而就能够得到上述曲线。

根据上述的P-R曲线,怎么判断最好的阈值点呢?首先我们先明确目标,我们希望精确率和召回率都很高,但实际上是矛盾的,上述两个指标是矛盾体,无法做到双高。因此,选择合适的阈值点,就需要根据实际问题需求,比如我们想要很高的精确率,就要牺牲掉一些召回率。想要得到很高的召回率,就要牺牲掉一些精准率。但通常情况下,我们可以根据他们之间的平衡点,定义一个新的上述指标:F1分数(F1-Score)。F1分数同时考虑精确率和召回率,让两者同时达到最高,取得平衡。

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

ROC(Receiver Operating Characteristic)

接收者操作特征曲线ROC空间将假正例率(FPR)定义为 X 轴,真正例率(TPR)定义为 Y 轴。是反映敏感性和特异性连续变量的综合指标,ROC曲线上每个点反映着对同一信号刺激的感受性。下图是ROC曲线例子。

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

横坐标:1-Specificity,伪正类率(False positive rate,FPR,FPR=FP/(FP+TN)),在所有实际为负例的样本中,被错误地判断为正例之比率。表示模型虚报的程度!

纵坐标:Sensitivity,真正类率(True positive rate,TPR,TPR=TP/(TP+FN)),在所有实际为正例的样本中,被正确地判断为正例之比率。表示模型预测覆盖的程度!

在一个二分类模型中,假设采用逻辑回归分类器,其给出针对每个实例为正类的概率,那么通过设定一个阈值如0.6,概率大于等于0.6的为正类,小于0.6的为负类。对应的就可以算出一组(FPR,TPR),在平面中得到对应坐标点。随着阈值的逐渐减小,越来越多的实例被划分为正类,但是这些正类中同样也掺杂着真正的负实例,即TPR和FPR会同时增大。阈值最大时,对应坐标点为(0,0),阈值最小时,对应坐标点(1,1)。

真正的理想情况,TPR应接近1,FPR接近0,即图中的(0,1)点。ROC曲线越靠拢(0,1)点,越偏离45度对角线越好

理所当然的,我们希望虚报的越少越好,覆盖的越多越好。所以TPR越高,同时FPR越低,也就是ROC曲线越陡,那么模型的性能也就越好。

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

【day1-赛题理解-零基础入门金融风控之贷款违约预测挑战赛】

TPR和FPR分别是基于实际表现1、0出发的,也就是说在实际的正样本和负样本中来观察相关概率问题。因此,无论样本是否均衡,都不会被影响。

例子,总样本中有90%的正样本,10%的负样本。TPR能够得到90%正样本中有多少是被真正覆盖的,而与那10%无关。同理FPR能够得到10%负样本中有多少是被覆盖的,而与那90%无关。ROC曲线无视样本间的不平衡问题,这就是为什么用TPR和FPR作为ROC、AUC指标的原因。

AUC(Area Under Curve) 

被定义为 ROC曲线 下与坐标轴围成的面积,用于判断模型的优劣。连接对角线的面积刚好是0.5,对角线的含义也就是随机判断预测结果,正负样本覆盖应该都是50%。显然这个面积的数值不会大于1。又由于ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围在0.5和1之间。AUC越接近1.0,检测方法真实性越高;等于0.5时,则真实性最低,无应用价值。使用AUC值作为评价标准是因为很多时候ROC曲线并不能清晰的说明哪个分类器的效果更好,而作为一个数值,对应AUC更大的分类器效果更好。

从AUC判断分类器(预测模型)优劣的标准:

  • AUC = 1,是完美分类器,采用这个预测模型时,存在至少一个阈值能得出完美预测。绝大多数预测的场合,不存在完美分类器。
  • 0.5 < AUC < 1,优于随机猜测。这个分类器(模型)妥善设定阈值的话,能有预测价值。
  • AUC = 0.5,跟随机猜测一样(例:丢铜板),模型没有预测价值。
  • AUC < 0.5,比随机猜测还差;但只要总是反预测而行,就优于随机猜测

AUC评判标准细分的话可参考如下

  • 0.5-0.7:效果较低。
  • 0.7-0.85:效果一般。
  • 0.85-0.95:效果很好。
  • 0.95-1:效果非常好。

5.小结

赛题理解是开始比赛的第一步,赛题的理解有助于对竞赛全局的把握。通过赛题理解有助于对赛题的业务逻辑把握,对于后期的特征工程构建和模型选择都尤为重要。

  1. 在开始比赛之前要对赛题进行充分的了解。
  2. 比赛什么时候开始,什么时候结束,什么时候换B榜数据。
  3. 和该比赛有没有类似的比赛可以参考借鉴。
  4. 线上提交结果的次数往往是有限的,提前了解每日可以提交的次数。
  5. 比赛使用的是什么评价指标,可以选择相同的评价指标作为线下验证的方式。