机器学习如何应用于金融领域?

去年P2P公司遇冷后,纷纷转型称会用大数据、机器学习等科技手段服务金融,摇身一变成为时髦的Fintech金融科技公司。但实现过程并不简单,让机器代替人去处理数据做判断,在国内金融领域才刚刚起步。

机器学习如何应用于金融领域?

CreditX氪信是一家用机器学习做风投的公司,在金融领域拥有不少实验经验和思考。最近氪信创始人朱明杰在朗迪中国峰会发表演讲,谈及了将机器学习应用于金融的难点,以及如何提升模型的可解释性。下文编辑自演讲内容,有删减。

我做了十多年的机器学习,用机器代替人去处理数据做决策和判断。过去十多年的机器学习,成功的应用都是在互联网上,搜索,广告,推荐,可以说互联网率先达到了数据时代。而到金融创新这个领域,如何实现互联网级别的机器学习和人工智能,大家都刚刚起步,我今天想讲讲我们CreditX在金融领域实践互联网级别机器学习的一些经验和思考。

金融风控的痛点

我一直认为,“科技进步是被业务需求逼出来的”。过去我们在互联网行业靠算法和机器,都是被逼的,为什么,因为数据量实在太大了,你想去淘宝搜个手机壳,让阿里的同学人肉从上亿的商品里帮你找出最喜欢最合适的,那根本不可能。传统金融场景里,一笔100万的贷款主要靠风控人员和关系,那是可行的;而到了银行的信用卡中心,积压的申请审核,让审批人员每周加班,都批不完。

那现在互联网金融要面临更加普惠的场景,比如几百块钱一笔的手机贷,靠铺人力一定是行不通的。所以,这已经不单单是提升运营效率问题,而是必须要把活儿交给机器,让机器来学习人的风控经验,机器人变成风控专家。

金融领域应用机器学习与人工智能的难点

第一个问题是数据太少。因为金融数据非常稀疏,而且现在的很多金融产品形式在以前没有发生过,所没有十几年的数据积累。换句话说就是缺少训练数据,这又被称为冷启动,缺数据。另外,金融领域出现坏账情况少则一个月多则数月,数据积累需要等很久,相比之下,互联网搜索领域内可以迅速拿到点击反馈,两者差别很大。所以数据缺失是阻碍机器来学习人类经验的巨大障碍。

第二个是数据太多。这里指的是数据特征维度多,超过了人的处理能力。传统金融只有十几维度的特征变量,人工调公式即可应对。但现在面临这么多维度的数据,大家也想了很多很好的愿景,讨论很多数据都可以用。但为什么用不上呢?问题在于我们有什么办法可以有一个很强的表达能力将这些很原始的,也可以叫弱变量的数据特征利用起来。将弱特征数据组合起来,与结果联系起来,让人的直观经验可以理解,让风控专家去反馈。

在金融场景内,不能像互联网机器学习一样是一个黑盒子,一堆数据扔进去,等结果来反馈迭代。金融场景内,特别强调模型的可解释性,这样才能把人的风控经验和直观感受跟数据表现结果关联起来。在此基础上,我们才能说把人的经验介入到利用数据进行机器学习建模的操作中去。做到特征要能够追溯回去,尤其是金融的反馈结果要等很久,需要人能够快速干预反馈。

如何解决金融风控冷启动问题

数据太少

对于数据太少和产生太慢的问题,冷启动问题是一个非常典型的case。我们在互联网行业经常面临缺少数据的问题,也积累了成熟的经验,就是把人的因素叠加到机器学习过程中去。我们做搜索广告时,会请人标注数据,然后通过标注数据的专家来指导算法工程师调优算法,改进排序结果。而在金融场景里,我们有很多现成的经验以及经验丰富的风控人员,这些专家有很强的风控知识。

理论上讲,如果有几百个风控专家,不用发工资,我们做手机贷也可以做下去,但实际情况是我们必须靠机器去学习人的风控经验。所以我们通过半监督学习的方法,把业务风控专家和实际的信贷结果在online学习中做一个结合。在这个过程中,风控人员可以实时的介入,不停地根据输出结果做一些调整,然后非常实时地反馈到模型训练的迭代提升的过程当中。

这就说我们特别重视人的因素。现在大家都在讲人工智能,人工智能的本质是什么?在我的理解其实就是让机器学习人的经验。以前我们依赖几个经验丰富的风控人员,现在我们可以让机器把人的经验学过来,然后让机器来做一个自动的决策。

金融的业务结果和样本非常珍贵。比如,我之前在房贷业务上积累了一些样本,然后换到一个新的消费信贷业务上,或者从一个消费信贷业务切换到另一个新的业务。这些珍贵的样本数据不能丢掉,但怎么去用呢?我们可以做到尽可能利用已有的经验和知识,把generic的风险核心模型和domain knowledge分开,再去根据业务的场景信息,以及场景内的先验知识结合起来,在此基础上学习和复用跨领域跨场景的知识,并且可以做到知识积累。

深度学习技术解决特征工程的难点

数据太多

接下来我们来看“数据太多”。我将这个问题分为两个部分来看。

首先是数据的特征维度很多。我们关心的是如何将大数据和金融风控的问题挂钩起来,这里面其实是需要非常强大的特征加工和表达能力。这是传统的线性回归统计建模方法很难去完成的。我们的办法有很多,这里面包括大家现在热度很高的“深度学习”。深度学习的本质是通过数据特征的处理去学习人处理知识和数据的方式。为了解决数据太多的问题,让人能看透浩瀚的原始数据,在模型的前端,我们尝试了不同的深度特征编码方法,非监督学习的方法对原始数据进行预处理,从而实现特征的降维,将浩瀚的原始数据和最后结果挂上钩。

模型的可解释性

其次是模型的可解释性。金融专家特别关心模型的可解释性。这里面有两个意义:

如果给信贷对象一个打分的结果,如果不能解释,这个很难和申请人去沟通的;

另外,我们所面临的是一个非常复杂的环境,如果对于风控结果仍然是黑盒进黑盒出的话,风险是很难去把控和估计的。

如果模型出了问题,造成的风险漏洞是我们不能承受的。在互联网金融业务这么快速成长的背景下,很有可能公司的业务都做不下去。所以,互联网内黑盒进黑盒出的方法就不适用于金融场景,需要有一个可解释的local模型去做到。我们的实践经验是,利用LIME去捕获结果或者局部结果中的关键变量,然后让风控专家迅速的抓到是哪些特征导致结果的变化。

氪信取得的效果

我们把互联网的技术经验,在金融场景内做了一些艰难的尝试,并得到了一些实践经验,包括从最开始的数据获取处理,到人的介入参与,到对复杂模型的干预过程,最后形成我们的practice。

从效率上说,我们的一个合作伙伴得到了很好的效果。他们做了一个金融信贷场景,部署在氪信的系统和模型上跑,只需要3-4个业务风控兼运营的人员,风控的大部分工作交给机器去做。

另外从效果上看,我们利用DNN模型做出来一个结果,可以看到结果比传统的LR模型ks值从0.19提升到0.43。数字和结果是我们做模型的人最直接的一个答案,这里面没有什么可以讲概念的。

大家之前对大数据期望值很高,又屡屡失望,现在其实对数据科技来说是一个很好的时机。因为大家真的需要能够有运用数据的能力,用机器解决金融实际问题,这也是我们这个时代的机会和风口,也是一个新的开始。

Author

梦车间创客文化空间创始人,《3D打印——改变世界的新机遇新浪潮》、《创意之钥—Android手机交互应用开发》、《Android3D游戏开发与应用案例详解》作者,90年后创客!