机器学习算法原理系列篇1:金融风控中的机器学习

持续更新的微信订阅号,更多的内容请关注订阅:

在这里插入图片描述

我们将采用倒叙的手法来讲诉机器写学习原理和应用这个故事。
首先我们简单描述一个机器学习常用的领域:金融风控。

  1. 金融风控流程与重点

互联网金融公司,其风控流程因为业务不同而各有所不同。而业务类型,如果按照借款用途来划分,有消费贷款,企业贷款,供应链贷款,融资租赁等。 也可以按照担保类型,则可以分为一般信用类,消费场景类,车辆抵押类,房产抵押类,第三方担保类等。业务类型也可存在线上和线下的区别。线下业务主要以线下门店业务员展开业务,而线上业务者基本上所有步骤通过互联网为载体而发生。金融风控流程按照大的流程又主要分为贷前审批和贷后管理。贷前风控主要关心客户是否满足借贷的资格,而贷后管理更多关注贷后催收等工作。

以典型的线上信用贷款涉及到的贷前风控流程为例,下图所示为风控流程的几个主要模块。

在这里插入图片描述

上图所示几个模块包含的主要功能分别为:
客户申请:客户通过网页或者App填写资料,从把客户的相关信息传至后台。这个阶段采集的资料一方面是为了获得客户的基本属性,比如姓名,身份证,手机号,家庭住址,共工作地址,职业,教育程度,收入等重要信息,从而为后面的风控阶段做好准备。另一方面,一些简单和直接的反欺诈被前置,比如通过人脸识别,判断照片和身份证匹配程度,判断照片和公安部数据库匹配程度,判读申请人是否是真实的申请人活体而不是静态的照片或者视频录制信息。
业务准入:为了达到简化步骤和减小风控成本的目的,可以在客户录入信息的同时,根据前端动态的得到的信息,提前客户是否满足贷款业务的基本要求。比如年龄是否过大,是否为在校学生,是否具有稳定工作等。一旦不满足业务的基本要求,可以提前中断客户的申请过程。
反欺诈:客户收集到的数据被传入后台以后,首先需要判断客户是否具有欺诈的嫌疑。这类判断既包括专家规则,也包含模型预测,比如:姓名,身份证,手机号是否匹配,家庭地址或者工作地址是否核验成功,过往多头借贷次数是否太多,是否和黑产中介或者高危客户的社交关系过于紧密等。
信用评估:通过反欺诈审核的客户进入信用评估阶段。信用评估用到的维度可能涉及客户基本资料(比如性别,年龄,收入,教育程度), 社交类数据(腾讯,支付宝),通话行为数据,网络浏览行为数据,多头借贷历史数据,历史逾期记录,消费支持数据等。
客户审批:根据上述步骤的评分或者规则结果做出审批决策,批准或者拒绝贷款客户。
信用政策(客户定价):对于批准的客户,针对不同的业务类型,具体的贷款金额可以对于所有用户一致,也可以根据用户的信用评分给与不同的贷款金额。

从风控建模的角度,我们阐述几个重要的观点。

1.1 反欺诈与信用评估、

信用风险和欺诈风险的区别关键在于客户一开始的还款意愿。信用风险指的是客户借款时候本来的目的是愿意还款的,但是因为后期缺乏还款能力或者个人守信习惯而导致的逾期。欺诈风险指的是客户一开始就没有打算还款的主观目的。反欺诈在分类上又可以分为第一反欺诈和第三反欺诈。第一反欺诈指的是,申请者利用自己的信息申请贷款从而达到骗贷的目的。第三反欺诈指的是,冒充他人信息申请贷款从而达到骗贷的目的。

预防欺诈风险主要防范虚假申请信息,恶意骗贷历史用户,黑产中介机构,大量多头借贷,以及互联网社交风险。预防信用风险,主要查看个人借贷历史,是否按时偿还,是否有严重逾期情况等。但是在国内个人征信历史比较缺乏的现实环境中,尤其是网贷群体,欺诈风险和信用风险往往交织在一起,不能简单的区别开来。

1.2 客户营销和风控管理

获客渠道和获客方式的不同,对应的风险管理也应该有所不同。这是因为不同的客户群体对应的潜在风险也是不一样的。营销和风控在某种程度上是在对立的两面的。从营销角度来说,永远是越多潜在的客户申请对业务可能越有利,尤其考虑到获客成本的问题,是每一次拒绝客户都是必然的损失。从风控的角度而言,是希望风险控制越严越好,这样逾期率才可能降低。

但是风控并非越严越好,除了考虑通过率过低导致的营销成本增加,另外的原因是风控流程会改变客户群体的组成,从而改变逾期的风险。这是所谓的逆向选择风险。比如,为了防止欺诈风险,在申请流程上增加一些繁琐的密码验证和生物识别方法,会是好客户流失到其他操作更简单的申请平台,但是坏客户因为自身的申请条件反而原因承担额外的流程。这样的结果是,初期营销的客户群体和后面进入审核阶段的客户群体好坏比相差非常大,而且是坏客户的比例极大提高,为风控埋下隐患。

风控管理也必须意识到,对于总体的业务而言,风控并不是最终的目的,如何面对正确的客户群体营销,合理的设置申请流程,提高客户群体的好坏比才是根本目的。业务最终是为盈利,在提高客户总量的同时兼顾合理的风控才是正确的方法,而不是反其道而行之。

那么没有提前预计到的客户群体好坏比的改变对于风控管理的危害体现在什么地方呢?这里我们举一个例子。美国著名的金融科技公司Capital One 早期获客渠道是通过有针对性给与筛选的客户发送信件。通过精准的客户群体营销以及杰出的量化分析方法,Capital One 业务增长强劲并且逾期率很低。随着第一波互联网的兴起,Capital One 也开始尝试互联网获客,但是最终的结果却非常糟糕,逾期率从之前的个位数变为两位数。究其原因,同样的风控算法被直接运用到非常不一样的客户群体,导致了Capital One的第一次互联网业务以失败而告终。

1.3 建模中的拒绝推断

建立新模型或者优化已有的模型都需要使用业务积累的客户数据。但是业务的流程决定了这些数据只是前期审核通过的客户数据。这些客户中,有的表现为好样本,有的表现为坏样本。依据已有客户的好坏标签,才能建立量化模型,从而寻找客户好坏和客户特征直接的关联关系。 这个流程如下图所示:

在这里插入图片描述

上图所示的在审核阶段通过的和被拒绝的客户群体其好坏分布理论上是不一致的,或者说审核通过的客户好坏分布和所有进件客户也会不一样。如果他们的分布一致,那么就说明审核机制没有起到真正的作用,其效果和扔色子一样。原则上来说,被拒绝客户群体中坏客户所占比例应该远大于被审核通过客户群体中的坏客户比例。 但是这样就会导致一个问题,即新建的模型基于的数据分布和审核阶段面对的所有客户群体分布是不一致的。一旦新模型被部署到审核阶段,可以预料到会产生一定的偏差。对于不同的业务,这样的偏差可能很大也能很小。但是作为风控管理的重要一环,我们必须对这个固有的偏差有所了解。下图展示了基于全样本数据和只用审核通过数据建立的两个不同模型在逾期率预测上的可能出现的区别。可以看出相比全样本建立的无偏差模型,审核通过数据模型在高风险端有很大程度的低估。而对于高风险的低估,对任何业务的收益都会有严重的影响。

在这里插入图片描述

是否需要考虑这种偏差对业务的影响,我们可以首先通过逆推法来验证。在获得新模型以后,假如新的模型偏差较小,那么新模型对之前拒绝的样本的风险预测也应该比较合理。即拒绝样本的风险值应该比所有样本平均值高一定的阈值,比如三倍。如果达不到这一水平,说明只用申请通过样本做出的样本没有达到我们的预期效果。

为了消除因拒绝样本丢失而引起的固有偏差,我们可以通过几种拒绝推断(reject inference)的办法。至少有以下三种不同的拒绝推断策略:
A/B测试: 在成本允许的情况下,在客户审核阶段,按照一定的比例,随机的挑选一部分客户。这些被挑中的客户,不经过任何风控审核直接发放贷款。其贷后表现是没有任何偏差的样本数据。可以才看出来,这些客户的逾期率一定比通过风控审核的客户高,从而带来一定的成本。但是得到的无偏差数据可以有效的为后期建模提供便利。
购买拒绝客户在其他平台上的表现: 挑选一部分之前被拒绝的客户,为了获得这部分人的风控表现,可以用第三方数据对这部分人重新进行风控审核,可以得到是否有过逾期的行为。 一旦有了这些客户在其他平台的贷后表现,可以有效补充建模的准确些。
统计方法: 通过一些数学和统计手段,对拒绝客户数据进行处理,减小误差。常用的方法有实验法,分包/赋值法,和扩张法等。

下面我们介绍通过统计手段进行拒绝推断的具体方法。

1.3.1 分包或者赋值法(Parceling)

假设审核通过的客户样本数据为A, 审核拒绝的客户样本数据为B。 通过数据A和A中的好坏标签, 我们得到模型model A。 为了合理的处理B中的数据,以便在model A中能够被使用,从而减小偏差,有下面两种不同方案:
(1) 对于B中的每一个样本x
(2) 产生一个随机数r
(3) 用model A 得到x为好客户(y=1)的概率p
(4) 如果 p 大等于 r, 把x标记为好客户,否则标记为坏客户。
通过上诉步骤,对B中的每一个数据得到标签以后, 把B和A数据合并,重新建模得到最终的模型。
第二种方案:
(1) 对于B中的每一个样本x
(2)用model A, 预测x 分别为 y=0 和 y=1 的概率 p0 和 p1,并且p0+p1 = 1
(3)把x 按照 p0的权重放入新的数据集 B‘,并且标签为y=0
(4) 把x 按照 p1 的权重放入新的数据集 B‘, 并且标签为y=1
上诉步骤完成以后,把B’ 和 A 数据合并,重新建模得到最终的模型。

上面两种方案,第一种显然随机性更高,两种方案可以都尝试下确定哪个效果更优。

1.3.2 扩张法(Augmentation/Reweighting)

同样假设审核通过的客户样本数据为A, 审核拒绝的客户样本数据为B。 通过数据A和A中的好坏标签, 我们得到模型model A。另一个合理的假设是,如果运用model A来预测好坏概率,对于A和B中的客户,如果model A预测的概率相近,我们相信他们有相似的风险特征。基于这样的假设,扩张法的具体步骤为:
(1) 用model A对A和B中的所有数据进行预测,得到每个客户为好客户的概率
(2) 把A和B中的所有数据按照概率分段,比如概率在0到0.1之间的客户作为第一段,以此类推。
(3) 对于每一段中的数据设置权不同的权重因子,但是同一段中的数据具有相同的权重,权重w = 该段中审核通过加上审核拒绝的客户总数/该段中审核通过客户的数量。
(4) 将A和B中所有数据按照所处概率端权重因子加权以后,重新建模,得到最终的模型。

  • 4
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
《Python金融大数据风控建模实战:基于机器学习》是一本介绍如何使用Python进行金融大数据风险控制建模的实践指南。本书主要包括以下内容。 首先,本书详细介绍了使用Python进行金融大数据处理的基础知识。读者将了解如何使用Python进行数据清洗、特征工程以及数据可视化等操作。这些基础知识对于建立可靠的金融风险模型至关重要。 其次,本书介绍了机器学习金融风控建模的应用。读者将学习常用的机器学习算法,包括逻辑回归、决策树、随机森林等。同时,本书还介绍了如何使用交叉验证和网格搜索等技术来选择最佳的模型参数。 另外,本书还提供了一些实际案例,介绍了如何使用Python进行金融大数据风控建模的实战经验。这些案例包括信用评级、欺诈检测等实际应用场景,读者可以通过实际案例来学习如何将机器学习算法应用于真实的金融风控问题。 最后,本书还介绍了一些工具和库,如pandas、numpy和scikit-learn等,这些工具和库能够帮助读者更高效地使用Python进行金融大数据风控建模。 总的来说,《Python金融大数据风控建模实战:基于机器学习》是一本非常实用的书籍,对于想要学习如何使用Python进行金融大数据风控建模的读者来说,具有很高的参考价值。通过阅读本书,读者可以了解到如何使用机器学习技术来解决金融风险问题,了解如何应用Python工具和库进行数据处理和模型建立,并通过实际案例来提高实践能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值