前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我眼中的模型评估

我眼中的模型评估

作者头像
许卉
发布2019-07-15 17:22:57
7760
发布2019-07-15 17:22:57
举报
文章被收录于专栏:Data Analyst

模型验证样本是有要求的

模型验证样本需要与前面建模样本进行完全相同的处理,即:

  • 模型的验证样本同样需要进行数据清洗、缺失值填充、分类变量WOE转换等处理;
  • 在缺失值进行填补时,需要使用训练集的统计量而不是验证样本的统计量。例如训练集使用年龄的均值35岁作为填补缺失值,那么验证样本也应使用35作为填补缺失值,不可以随意进行缺失值的填补。

混淆矩阵有什么用

逻辑回归模型的几个衡量指标如洛伦兹曲线、ROC曲线、lift曲线来源于混淆矩阵,如果针对同一个问题构建不同的模型,当进行模型间效果比较时,经常会用到这三个曲线。

不单单是逻辑回归模型具有混淆矩阵,只要因变量为离散形式的模型都具有混淆矩阵,混淆矩阵不是为逻辑回归模型设置的,而是为分类选择模型而设置的,连决策树与神经网络都会有混淆矩阵

混淆矩阵中的数值是动态的数据,其中,A与D都是猜对的数据,理论上这两格中数据量越大越好,但是B与C的数据也是必不可少的,如果没有B与C部分的数据,则会造成过度拟合。一般,混淆矩阵会涉及到下面几个解读指数:

  • 正确率=(A+D)/(A+B+C+D),即猜对了比上总量;
  • 灵敏度=A/(A+B),即所有真实1中猜对的比例;
  • 特异度=D/(C+D),即所有真实0中猜对的比例;
  • 命中率=A/(A+C),即猜为1的数据中猜对的比例。

没人用决策树做信用评分模型

从模型稳定性角度来看,决策树不能做信用评分模型,原因涉及到决策树算法背后的搜索逻辑。决策树进行拆分时,其算法会以搜索的形式去寻找最优值,搜索的方式有穷举搜索与启发式搜索两种:

  • 穷举搜索即设置一个很小的间隔,进行逐值扫描,速度较慢,R和SAS中一般会先设置5000次穷举;
  • 启发式搜索为一种区间搜索,即将值分为不同区间,在区间内进行搜索。例如质数的搜索形式即为启发式搜索。

上面两种搜索形式,无论使用哪一种,都极有可能错过最优值,并非算法有问题,而是计算的方式存在问题,因此任何的统计软件都必须考虑截断误差,如果截断误差控制的不好,便很有可能会出现漏掉最优值的情况。

决策树最大的问题在于,每次计算规则都会发生变动,所以我经常在信用评分建模前用决策树进行风险分池,而绝不会用决策树去主导构建信用评分模型何谓风险分池,举个例子,例如某个客户信用卡逾期,但是经查询发现该人为本地首富,那么可以断定该人违约可能并非出于本意,很可能是发生了意外的情况导致违约,风险分池就是将这样的人与老百姓分池分开。

我眼中的ROC曲线

衡量模型效果的指标之一为ROC曲线,一般,ROC曲线的取值在[0.5,1]之间,如果:

  • [0.5,0.7)表示模型效果较低
  • [0.7,0.85)表示模型效果一般
  • [0.85,0.95)表示模型效果良好
  • [0.95,1)好到这种程度的模型一般不会存在,至少我从来没有遇到过

一般,ROC曲线还会出现如下两种不同的情况,分别适用于不同的业务场景:

  • 违约分值高处敏感: 如果建模后ROC曲线是这样的形态,说明模型在违约风险高人群中的预测能力很强,而对于违约风险低的人员预测能力较差。很多的业务场景会专门要求做出这样的模型,例如汽车金融,因为业务的特点会要求筛选出极高风险的客户,而对于大部分客户还是予以分期贷款的
  • 违约分值低处敏感: 如果建模后ROC曲线是这样的形态,说明模型在违约风险低的人群中预测能力很强,在高风险人群中的预测能力很弱,例如银行的信用卡中心,业务需要明确授予低风险的优质客户较高的额度,所以需要明确哪些客户的违约风险较低

营销场景最看重提升度曲线

提升度曲线也是衡量分类模型效果的指标之一,它衡量的是与随机选择相比,模型对于响应的预测能力的好坏程度。一般,提升度曲线越往上、下降越慢表示模型越好

通常,营销场景中会更多的用到提升度曲线,即可以先找找准最有可能是目标的客户进行电话推销,可以较为节约成本。而风险行业处于成本的考虑则不太使用提升度曲线。所以做互联网金融更为关注ROC曲线与KS曲线,而业务营销场景会更为关注Lift曲线

SAS EM中可以提供lift曲线。

信用评分模型最看重KS

一般,信用评分模型最为看中的模型指标不是ROC曲线、不是洛伦兹曲线,也不是lift曲线,而是KS。KS曲线用于表示模型对于好坏样本的区分程度。通常:

  • KS小于20,表明模型没有区分好坏的能力;
  • KS介于20-40之间,表明模型勉强接受;
  • KS介于41-50之间,表明模型有的区分能力;
  • KS介于51-60之间,表明模型有很好的区分能力;
  • KS介于61-75之间,表明模型有非常好的区分能力;
  • KS大于75,很可能建模出错,不太可能出现这么高的情况。

通常模型的监控工作只需要使用KS曲线进行监控即可,如果事后监控发现好坏样本之间的差异已经不太明显的时候,则说明模型已失效,需要重新进行模型修正、调整。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-03-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Data Analyst 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档