速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

汽车金融风控流程设计和机器学习实践

  • 2019-06-17
  • 本文字数:5095 字

    阅读完需:约 17 分钟

汽车金融风控流程设计和机器学习实践

本次分享内容大纲:

01. 汽车金融风控流程设计


汽车金融风控流程设计中需要关注的五个节点:获客、反欺诈、信用评估、额度、利率,整个风控流程的设计一直是围绕这几个点来设计的。



除了上述几点,还需考虑俩个重要因素:


  1. 数据的完整性:是指可获得的客户数据,包括银行征信数据,第三方数据等,来补充我们的评估维度,维度越丰富,对前端客户提交申请的资料依赖就会越少,这样就会简化我们的风控流程,提高审批效率。


其次,数据完整性还会影响到风控节点的设计,因为每个节点都需要依靠数据来支撑,数据越丰富,设计节点的自由度越高。


  1. 客群特征:通常我们需要做些精细化的审批,对于不同质量的客户提供不同的风控流程。比如,资质比较好的客户,会提供相对来说比较简单的流程;资质比较差的客户,会做一些更精细化的审批,把他们的风险做一个精细化的分层。另外还需要把客户按照不同的风险特征,作为不同的渠道进行分流,就是接下来的差异化审批。



差异化风控流程设计,不止在汽车金融领域,在其他业务中也是一个重要的思路。为什么要做差异化审批?因为我们可以把整个风控流程看成一个评估的准则或者标准。对于不同客群,不可能使用同一套标准对他进行评估,通常会基于产品、场景、渠道上的差异对客群做划分,相对来说不同客群,他们的质量和风险特征是不一样的,需要我们在整个流程设计上做不同的分支,以及模型的搭建过程中,需要使用分客群来进行建模。


1. 汽车金融整体风控流程设计


前面介绍的是风控流程设计中比较关注的一些原则及关键点,接下来讲下基于上述各环节的基础上,我们在行业实践经验的一些总结。



这张图就是我们在汽车金融整体风控的一个流程图,它覆盖了整个汽车金融生命周期的各个环节。大致分为五个环节:


  • 准入 & 渠道评级

  • 反欺诈

  • 信用评估

  • 贷中监控

  • 贷后催收 & 回溯评级


详细内容见上图。


2. 贷前整体流程



首先讲下贷前的流程设计,这张图是比较简单的,真正在业务实践中,我们会在这张图中进行一些增删,比如橙色部分我们可以增加一些准入条件、分析客群,这张图比较通用一些,主要分为三个部分:


  • 反欺诈

  • 信用评估

  • 额度定价



接下来是信息核验常用的一些维度。



反欺诈规则常用的维度,包括:


  • 黑名单:通常金融客户会有自己维护的内容黑名单,同时可能也会和同行等其他金融机构进行分享,这是很重要的一部分。

  • 申请行为:申请行为异常,这个通常是根据自己内容积累的数据,也有与其他机构共享的数据。

  • 不良信息:是否有不良记录。

  • 实名信息:指客户在历史的申请中是否使用了多个身份信息。

  • 消费行为:有的公司在要求客户提交资料的时候,附上银行流水和消费的相关资料。

  • 团伙欺诈:以上几个环节是对用户行为进行评估,团伙欺诈是对关系进行评估,通常会通过三要素等维度,进行关联,发现与他有关联的高风险客户或者在短时间内有相似行为的客户。



在做模型搭建,或者信用评估、反欺诈之前会做客群的划分。在汽车金融领域首先会做这样的一个划分(不同机构划分的可能不一样):首先是厂商的汽车金融,然后是融资租赁、直租、二手车、商用车、车抵贷等。因为建模之前通常会要求样本是独立同分布的,不同的客群,他们的样本特征,包括分布特征都会不一样,所以需要做分客群的建模。其实这一步,也可以放在整个风控流程的最前面。



做完模型之后,最重要的是怎么使用它,这里展示了使用的方式,通常需要把它转化成这样的一个表。这张表展示的是每个评分区间它的坏账率和 KS 值,通过这张表来划分一个阈值来审批。阈值的划分,通常是基于业务的需求。



除了欺诈和信用风险评估,通常还会做额度的策略。通常会把信用的评估和个人的评估做一个交叉,对客户进行风险细分,图中左上角表示偿还能力强,信用风险低,右下角表示偿还能力差,这样可以把用户分为 A、B、C、D 四个等级,A 区的客户资质比较好,足够强的偿还能力,信用风险比较低,那么就会对这部分用户提高额度空间。对于最差的区间,会提高首付比,降低额度空间,这样就会提高违约的成本。


3. 贷中管理



刚才讲的是贷前的环节,汽车金融和其他产品相比有个比较明显的特点,就是风险释放周期长,图中展示了大致的风险释放周期,我们可以看到过了 18 个月,也仅仅是释放了 70%的风险。所以,这要求我们做好贷中监控的环节。需要及时监控客户的还款状况,还有信用风险的变化,以及偿还能力的变化,提前做好预警,或者催收前置。对于资质比较好的客户,我们可能会做一些存量的营销。


4. 贷后催收



最后是贷后环节,一个粗暴的方式是按照账目来分 M1、M2、M2+这样分给不同的催收员,来专门催收。


更精细化的方式,是催收评分卡,根据客户的还款意愿来贴标签,搭建这样的评分卡,来评估客户的还款意愿,指定更精细化的催收策略。

02. 汽车金融风控中的机器学习实践

接下来分享汽车金融风控中建模的一些实践经验。



机器学习是近几年比较火的词汇,在各个领域都有涉足,但实际上真正在商业领域有很成熟的应用场景的地方并不多,比如推荐系统、安防领域用的比较成熟。其次在金融风控的领域,应用也比较成熟。


机器学习通常可以分为四个部分:


  • 监督学习(supervised learning)

  • 无监督学习(unsupervised learning)

  • 半监督学习(semi-supervised learning)

  • 强化学习(reinforcement learning)


在汽车金融风控中,我们主要关注的是监督学习,也就是我们关注的模型是基于有标注的样本进行训练的。



在建模之前,我们需要对模型的目标进行设定。其中区分度和稳定性,是绝大部分场景对模型的要求。


  • 区分度:就是说你的模型要有足够的区分度,可以对目标客群和非目标客群进行清晰的划分。

  • 稳定性:就是要足够的稳定,实际业务中和建模建模样本上它们的表现要相似。

  • 排序能力:汽车金融领域有一个独特的要求,就是排序能力,就是评分分组要足够的均匀、正态、平滑,同时非目标客户的占比在评分上要尽量明显的单调。为什么这么做?这主要基于策略的制定,评分的策略上,主要是基于阈值的划分,如果排序能力不足,会导致评分阈值划分,稍微调控下,就会使策略结果急剧的变化。



这是我们在汽车金融领域建模的完整流程和方法论


  • 定义主题:主要是标签的设定。

  • 数据探索:这部分会做风险特征画像,看是否需要对样本进行分客群的建模;其次,需要做一些数据的清洗。

  • 特征建模:主要是对特征重要性进行排序,然后对特征的一个转换,因为大部分的模型可能都不擅长处理离散型的数据,所以这里会把离散型的数据转化成连续型的数据。

  • 建立模型:这部分需要选择和我们业务实际贴近的模型。

  • 验证模型:验证模型的质量和稳定性。

  • 实施模型:包括模型的上线部署和监控调优。


这是一个比较完整的建模流程。



说到模型,可能我们比较关注模型的使用,和模型搭建本身,还有非常重要的一点,就是模型管理体系。因为只有完善的模型管理体系,才能持续不断的输出高质量的模型。完整的模型管理体系详见上图,主要包括:数据集成、数据准备、模型开发、模型部署几方面。



在汽车金融领域,模型评估主要关注:


  • KS:指好坏区分度的一个指标,衡量的是模型的精准度。

  • PSI:主要描述模型分布的稳定性。

  • 模型分布:需要尽可能的满足正态分布,好坏客户在模型中区分明显,随着模型的增加或递减,坏客户占比有明显的单调变化。



逻辑回归和决策树模型是目前汽车金融风控中应用较为成熟的模型。


  • 逻辑回归:比较好理解,逻辑回归做完之后可以转换成一张评分表,这样就可以直接变成另外一种形式来展示,通过不同维度打分,最终对各个维度的分数进行求和,得到最终的评分。

  • 决策树:更好理解,它就是 if 和 else 这样的一个流程。



详细介绍下逻辑回归,因为具有相对稳定和可解释的优点,所以它目前是汽车金融风控建模中较为主流、传统的做法。


算法流程,首先对变量进行转换 WOE 分箱,作用是使模型更稳定以及提高非线性数据的拟合能力。但是整体来说,逻辑回归对高维数据,或者比较复杂的数据,处理能力相对比较弱,尤其是非线性数据。



决策树模型,它的拟合能力非常高,尤其是对非线性数据,它的缺陷是非常容易过拟合。解决方法:采用决策树集成算法进行处理,相对单个决策树来讲除了稳定性外,它的输出相对平滑,容易控制粒度。


集成算法通常分为三种:


  • Bagging:选取多个决策树取平均值

  • Boosting:提升模型,从弱学习开始(AdBoost,xgBoost),串行计算

  • Stacking:堆叠模型,聚合多个决策树


目前用的比较多的是 Boosting 算法,在汽车金融风控中用的比较成熟的就是 GBDT 算法。这种算法就是端到端的学习,我们只需要把我们的特征输入进去,不需要人工的干预,直接输出结果,开发难度低,但需要我们对模型理解更深入一些,这涉及到精细化调优。



GBDT 模型,是一堆决策树的串行集成,当前新生成的决策树,依赖于之前所有的决策树。并不是用决策树来拟合标签,而是用决策树来拟合当前模型负梯度的方向。为什么这样做,我们做了推导(见上图),有俩个 loss 函数的形式。第一行公式是对 loss 函数进行一阶展开,理解展开之后分成两项,第一项为常数项,我们忽略掉,为了保持每次增加新的决策树的时候,loss 函数能够逐渐减少,我们就要求第二项恒为负。如何恒为负?其实主要让这两项符号相反就可以了。


第二个是从数值优化的角度理解,我们可以把树看成数值,然后通过梯度下降理解它,直接按照梯度更新,结合下面的公式,就是当前模型等于之前树的集合+新的树。把两个公式结合在一起就可以推导出后面的公式。



然后是对 GBDT 的改进算法,就是通常所说的 XGBoost 算法,相对于 GBDT 做了如下改进:


  • 在 loss 函数里加入了正则项,提高了模型稳定性。

  • 在更新的过程中使用了二阶梯度,来保证训练更快、精准。

  • 缩减系数和列采样,提高泛化能力。

  • 分裂节点搜索,这里并没有采用遍历的算法,而是采用基于样本的梯度,来做分裂树的划分,作为搜索的节点,这样提高了搜索算法的性能。



除了 XGBoost,还有其他的一些改进算法,包括 LightGBM 和 CatBoost。如果数据量比较大,可以采用 LightGBM,如果需要在模型中处理类别变量,可以采用 CatBoost。



模型效果对比如上。



效果对比,使用传统模型和机器学习模型效果的对比。



大数据机器学习模型的价值:通过应用大数据模型,减少了人工审批环节,审批效率提高,且审批成本下降。



上图为,汽车金融大数据风控发展的趋势,主要包括如下几方面:


  • 业务扩展

  • 客群下沉

  • 数据复杂度上升

  • 自动化审批

  • 互联网大数据的使用

  • 机器学习

03. 自动化机器学习平台


当前风险建模所面临的困难:


  • 门槛高:尤其是机器学习模型。

  • 手动调参的效率低下:模型复杂度高,需要调整的参数非常多。

  • 周期长:尤其是逻辑回归模型的周期非常长,需要对数据做非常多的处理,包括分箱,调整等;然后机器学习虽然建模时间没有那么长,但是调参会特别耽误时间,并且需要经验的支撑。

  • 建模环境和生产环境的割裂,比如一个非常复杂效果非常好的模型建好之后,怎么部署,怎么应用比较麻烦,会涉及到各方面的开发。



基于上述痛点,我们做了一个集成到平台的尝试。上图为市面上,比较流行的框架,不算是成熟的商业产品,这些平台通常是工具型的,算法层面上,并不能提供直接的商业上的使用,只包含建模一个环节,并不包含整个流程。



基于上述原因,百融做了自己的自动机器学习平台,主要包含如下功能:


数据方案、样本方案、清洗方案、处理方案、模型方案、调参方案,并且这些方案都可以做到复用。在数据方案,不但可以上传本地的数据,还可以通过平台的方式对接各方的数据,并且针对不同的样本或者数据源,可以进行独立的清洗方案和处理方案,当模型建完之后,可以通过一键部署。



这是我们针对上述建模痛点,做的一些改进,首先是可交互环境。将建模过程中涉及的编程、数学、算法等细节进行封装,提供交互友好的图形化界面,简化建模流程,提高建模效率,降低建模门口。



工具链的高度整合。将数据分析、数据可视化、建模等工具整合在一起,实现数据挖掘平台、数据可视化平台等模型训练平台于一体。



最后,是把建模环境和生产环境无缝连接,将整个数据分析到模型部署全流程覆盖,降低建模复杂度,提高开发效率,缩减开发周期。

04. 总结

本次分享主要是为大家分享下百融在汽车金融风控领域的一些设计经验,以及我们在风控模型搭建中的技术积累和尝试的一些经验,然后总结了建模过程中遇到的问题,以及百融在解决这些问题中的一些尝试。


##作者介绍:


殷翔,百融云创风控建模总监。毕业于对外经济贸易大学,有超过 6 年的数据挖掘经验,目前在百融汽车金融中心负责风控建模,提供面向金融企业的风控解决方案。主导了各大银行、汽车金融的风控建模项目,覆盖金融业务全流程数据驱动管理,服务的客户包括工行、北现汽车金融、广汽汇理、东风标致雪铁龙、易商、灿谷、瓜子等。


本文来自 DataFun 社区


原文链接


https://mp.weixin.qq.com/s/0FoG0qPNVOGYndwTAsIoOw


2019-06-17 08:007015

评论

发布
暂无评论
发现更多内容

深度思考:已经开发8年的你,为何跳槽被多家大厂拒绝?为什么会迷茫Android开发还有什么能学习的

android 程序员 移动开发

深度探索 Gradle 自动化构建技术(四、自定义 Gradle 插件)

android 程序员 移动开发

漫谈MVVM(1)ViewModel_DataBinding核心原理(1)

android 程序员 移动开发

深入解析Flutter架构

android 程序员 移动开发

深入理解JobScheduler与JobService的使用

android 程序员 移动开发

漫谈MVVM(1)ViewModel_DataBinding核心原理(2)

android 程序员 移动开发

漫谈MVVM(1)ViewModel_DataBinding核心原理

android 程序员 移动开发

牛掰!阿里P7大佬爆肝半个月,把安卓源码解析编成了508页的PDF

android 程序员 移动开发

疫情下中年IT的焦虑

android 程序员 移动开发

深入理解HTTPS协议

android 程序员 移动开发

源码解析,Glide加载GIF图的原理竟然这么简单

android 程序员 移动开发

盘点2020年Android面试必备知识点

android 程序员 移动开发

炒冷饭之Https 建立链接

android 程序员 移动开发

玩转AppBarLayout,更酷炫的顶部栏(1)

android 程序员 移动开发

疫情结束后,会影响程序员年后找工作吗?

android 程序员 移动开发

灵魂拷问:Android开发初期之后怎么提升?怎么才能叫精通?方向在哪

android 程序员 移动开发

混合开发框架最全对比,为什么我更推荐Flutter?

android 程序员 移动开发

渣渣二本的辛酸面试之路:从深圳外包到杭州蚂蚁金服,4年小Android的爬坑历程

android 程序员 移动开发

温故而知新:重新认识Activity的生命周期

android 程序员 移动开发

滴滴国际化项目 Android 端演进

android 程序员 移动开发

疫情过后,想找工作的你还不看这份资料就晚了!!史上最强总结

android 程序员 移动开发

直播App中Android酷炫礼物动画实现方案(下篇):SVGA由来与Lottie的对比

android 程序员 移动开发

深度探索 Gradle 自动化构建技术(二、Groovy 筑基篇)

android 程序员 移动开发

EMQ 获评“最具潜力边缘计算企业”,推动边缘计算生态发展

EMQ映云科技

物联网 IoT mqtt

炸裂!一次Android实习经历告诉你:老爸不是张一鸣,该用什么技巧进字节

android 程序员 移动开发

用MVP模式构建Android代码

android 程序员 移动开发

【设计模式】第十三篇 - 享元模式 - 连连看的图片共享

Brave

设计模式 享元模式 11月日更

疫情下,中年IT的焦虑

android 程序员 移动开发

疫情被裁3个月,看我如何拿下腾讯offer(附面经+面试心得

android 程序员 移动开发

瞬息万变的技术圈与焦虑的技术人,进阶Android需要掌握的那几个关键技术!

android 程序员 移动开发

玩转AppBarLayout,更酷炫的顶部栏

android 程序员 移动开发

汽车金融风控流程设计和机器学习实践_AI&大模型_DataFunTalk_InfoQ精选文章