以前做金融风控的时候,见过很多关于于模型和策略的争辩。纵览大风控领域下的三代风控手段:1)黑名单;2)策略;3)模型。可以发现“金融风控”这个老中医,其实还是很希望能吃到的。所以一些技术流派(尤其是互金平台)近几年的监督学习模型越上越复杂,原本的逻辑回归评分卡,发展到现在又出现了集成模型评分卡、神经网络评分卡,再辅以生成对抗网络、迁移学习等方法打磨模型,从而增强模型的防守能力...等等。
但是金融本身是一个“强业务驱动”的场景,这与“互联网广告”——诞生于大数据中的“技术驱动”业务不同。由于金融本身流程非常长(贷前准入、贷中管理、贷后处置...),每个环节都有营销、运营、风控共同参与。导致很多时候又困于 “业务导向”,简单地把数据与算法能做的事情,割裂成了策略 + 评分卡。如果从这样的视角去看风控,很容易陷入一些认知陷阱。比如:
第一种只关注于已有风险的记忆,是风控中最忌讳的刻舟求剑。第二种相对还好,虽然被现有框架限制了思路,起码考虑到了应对未知风险的问题。但长期这样去看待风控,很容易让自己先入为主地认为风控技术简单、没什么挑战性、技术积累不如其他正向业务...等等。
在我们看来,风控正是当前挑战性最大的机器学习落地场景之一。面对挑战,如果我们不胆怯,而是迎难而上去寻求理论突破。你会发现它可能是当前机器学习领域对算法鲁棒性和解释性要求最高、精度要求最极致、系统规模和时效性挑战最大、最能用钱衡量的工业级业务。
只不过相比于监督学习,更加蓝海的异常检测技术更适合它。如何跳出既有框架,设计出数据驱动同时又能抵御未知风险的模型体系(即攻守兼备),或许更应该是大数据时代下,风控技术从业者的追求。
无论是之前的金融风控,还是现在的广告风控,亦或者是细分领域的流量质量风控、内容风控安全,其内核都是一种“极致的安全感”。“提供安全感”是做风控架构设计和技术选型最重要的指导思想,每当我们对一个方案拿不定主意的时候,只需要问自己,如果未来线上的效果要拿命去赌,你现在会怎么选?就会很容易得到答案。
在追求极致的安全感的过程中,我们说了另一句话:能让老板睡得安稳的风控系统,决策逻辑一定是清晰透明的。这句话本身没有问题,但很多同学的误区是,把它解读成“风控只能使用浅层的组合策略和简单的模型”。仿佛黑盒模型将我们放在了“安全感”的对立面。
其实我们要求的“清晰透明”,只是指决策逻辑。而一个攻守兼备的风控体系中,决策逻辑只是技术透出给业务同学的那一环而已。大数据风控应该将重心放在如何实现自动化地进攻(覆盖现有风险)和防守(抵御未知风险)上面。
在到新的环境之前,我受到一些固化思维的影响,很难理解基于无监督、半监督的异常检测技术,在工业界如何保障线上精度(未来文章的重点)。其中影响我最深的就是评分卡思维,有点感慨的是——作为传统金融风控的杀手锏,现在想想却并非未来的风控核心。
可能一些同学看见评分卡就觉得Low。也难怪,统计特征+手动分箱调优+逻辑回归的建模方式,在现今集成学习和深度学习当道的工业届,显得有点落后,可以说完全没有吃到大数据带来的增益。但我觉得评分卡是专家时代的数据风控思想集大成者。这不是说它能多好的履行风控职能。
首先,它肯定承担不了“防守”的角色,毕竟是监督学习方法。其次,如果用一个机器学习的思维来看待它,对固定的测试集来说,用逻辑回归模型刷指标,肯定比不上集成模型来的轻松写意。也就是说,连应对风控场景的进攻型任务,它也比不上复杂一些的模型。那它存在的意义是什么?
其实,如果你把它理解成,专家系统(老中医拍脑袋定策略以求安全感最大化)中的,一种将历史数据变为决策逻辑的提效手段,你才能体会到它的魅力(这就呼应了前文说的“决策逻辑”要“清晰透明”)。风控场景下绝大多数监督学习的方法,都应该作为一种提效的工具。因为风控并非搜/推/广这种正向业务,我们存在的意义就是对抗,单纯从验证集去评估风控系统,是非常危险的事情。
真正的安全感应该来自于我们对自己风控体系的信心。而这种信心,在攻防场景下只会来自于我们对理论近乎苛刻的严要求和感知、洞察、处置等流程的高标准。
我们要明白一个道理:在攻防之间,黑样本的存在意义,只应该是一种对风控系统的“进攻”能力的评价手段。而不是把它变成你的进攻能力的根基。换句话说,我们不应该去记住黑样本的样子,而是理解作弊的本质,并从理论上去屏蔽它。毕竟从一个影响几十亿用户的工业级机器学习系统角度来讲,每一步都严格符合体感、每个环节都有数学理论支撑,才能带来安全感。这时黑样本自然仅充当离线检验和精度召回评价的角色。
评分卡中最重要的一个环节是对变量分箱后,根据每个分箱的正负样本比例趋势,做分箱合并(大多是合并为线性递增或递减),然后丢进逻辑回归中。刚开始的时候,我只会从机器学习角度去解释——因为逻辑回归只能处理全局的线性单调变量。但其实远不只是如此。
抛开“不能迷信模型”、“金融要业务导向”、“监管要求我们清晰透明”...等等辞藻。究其原因,还是因为风控的核心,就是要提供一种极致的安全感,所以在每一个步骤中,我们都要尽可能地保证稳定性符合先验知识、方法满足数学假设,选择更符合体感趋势的变量,尽可能用更少的变量、更少的参数去简化监督学习模型,从而得到更清晰的决策逻辑。
再重新来看一下评分卡的定位,是不是觉得和文章一开始提到的进攻和防守不太一样了?这里虽然评分卡可能对于现有风险的覆盖精度不能达到一些更复杂模型的水平,但它同样在最小化过拟合风险,尽可能去捕捉一种符合专家体感的风险趋势,给予风控人员极强的掌控感,从而带来了安全感。
所以,评分卡很好地承担了自己作为提效工具的角色。并且在监督训练框架下,能尽可能多的减少对历史黑样本的依赖。如果从这个角度来看,在非数据驱动的风控体系中,它算不算风控思想的集大成者?
我们通过一个广告领域的例子,来感受一下在大数据场景下,安全感是如何获得的。
现在假设你要识别一个广告的某个点击是否为作弊,有一个置信度非常高的逻辑:如果你能精准的预估到这个广告当天的点击数量,那超出的部分一定是作弊。
因为“点击增加”是作弊的结果,黑产是绝对绕不开的。而这就是个决策逻辑。这个逻辑足够简单,泛亚电竞官方对于无论懂不懂技术的同学来说都是清晰透明的,并且黑产无论如何都无法攻破,所以大家都有安全感。
然后,如果你还能用超高维度的弱相关变量,实现对点击数量的精准估计,比方说对一个连衣裙广告的点击,你不用性别、季节、加购、收藏这种推荐或者CTR预估常用的强特征,而是一系列超长又极其庞杂的行为信息组合来得到它的点击数期望,这在外部来说几乎是无法破解的。黑产因为没有广告平台内部的数据,几乎不可能通过伪装来影响到这个模型的预估结果。那么基于越高的维度、越复杂的模型,得到高度抽象的表示结果,反而会带来越多的安全感。
究其原因,因为广告点击的例子所做的事情是对正常(Normal)分布的刻画,而Normal分布不会和我们做攻防、搞对抗。所以拟合的效果越好,我们反而越有安全感。但在金融风控的例子中,评分卡拟合的是,历史出现过的黑样本和白样本的分隔界限,这近似于对黑样本进行记忆。所以无论是用SMOTE、强化学习、联邦学习、还是什么其他的数据增强方法,去扩充黑样本以及特征维度,只要还想着用监督训练去磨一个评分卡出来。就仍没有从工具思维中跳出来。毕竟监督学习的定位只是提效工具,严格意义上讲并不符合我们所推崇的风控攻防之道。
攻守兼备的风控系统,无论是对已有黑样本的召回,还是未知风险的感知,都能提供足够的安全感。而不是靠监督学习去提高效率、处置已有风险。换句话说,我们所推崇的风控理念是,利用超高维度的表示手段,把Normal的边界描绘清楚,再通过多种时空的异常检测技术,去感知、洞察、处置风险,从而让黑产无所遁形。
异常检测技术是机器学习的子领域。如果去搜索论文,可以发现有很多的算法,如 Isolation Forest、COPOD、XGBOD、Auto Encoder...等等。这些论文可以为我们带来很多思路上的启发,但是异常检测和传统监督模型,在应用层面最大的差异就是,你无法只通过构造一些特征和套用某种算法,去解决问题。毕竟单单是没有标签的特征子空间寻优问题就很让人头疼了。
用One-Class SVM来举例子,它要用一个超高维度上的球形面把正常样本包起来,从而刻画正样本的边界。那他的先验条件就是,要我们先找到合适的子空间投影,把正常样本投影到一个球内,而且黑样本应该分布在球表面及外部(再不济总要是与白样本分隔开的),并且保证未来正常样本的投影不会变形跑出这个界面。
发现这里面的悖论了么?如果你都能找到合适的子空间投影做到上述事情,而且有很强的信心服从那些苛责的条件,你也一样能通过简单的变换,把他投影到一个平面通过画一条线解决这个问题。那究竟是喂进One-Class SVM还是逻辑回归,区别在哪里呢?
所以说,工业界的异常检测,从来都不是套用某种离群点检测算法就能解决的问题。他的核心是基于业务出发的Normal刻画。在一个自洽且完备的闭环体系中,去构造Normal边界,是将小概率事件发生概率转化为异常程度的系统性方法。而这种系统性,更多的体现在业务角度的交叉检验上,而非纯数理论。
那为什么,我们还是尽可能使用无监督算法,去替换有监督的分类模型呢?答案在下面一节揭晓。
异常检测背后的方法多种多样(对虽然可能不是外界想象的样子)。于Normal的刻画,可能是深度神经网络,也可能是基于概率统计的数学方法。至于学术界的异常检测算法,无论是基于角度还是基于密度,大多只用来做Baseline或者是在最后进行提效的工具。不过同样是提效工具,相比于监督学习模型一个很大的区别是,半监督算法帮我们弱化标签信息(比如只作为辅助Loss而不是学习目标),无监督算法甚至可以完全不使用标签信息。如果离线效果同监督学习差不多,标签信息使用的越少,越可以从理论上为我们带来更多的安全感。
这就回答了上节的最后一个个问题,为什么我们还是倾向于使用异常检测算法作为提效工具,而不是监督学习算法。而在实际工作中,我们遇到的挑战远不止异常检测的体系设计,与Normal刻画问题,比如:
其中不乏一些很有趣的解决方法,以及一些值得深入探讨的问题,希望能在未来与大家分享。
如果感兴趣也欢迎加入我们(阿里妈妈,校招/社招,北京/杭州),请投递简历至: