本文来自网易云社区。

最近一段时间,公司许多产品的风控团队跟我们做了很多技术上的交流,大家对严选的风控体系很有兴趣。因此,我们打算在KS平台上给同学们介绍下这一年来严选风控体系的建立过程,抛砖引玉,期待引来大家的建议。

严选的风控体系最近半年的变化非常巨大。初期我们只是做了简单的下单频率控制,能满足部分业务场景,但是随着严选的迅速发展,灰产用户引发的资损情况变得越来越严峻。

图1 灰产用户卖严选券

到了今年7月份的时候我们开始腾出手来设计严选的风控体系。我们先后与美团,支付宝,阿里巴巴,京东等风控团队做了大量的技术交流,结合我们的情况确立了严选风控体系的建设目标:

1.     主动。立足于大数据,利用算法模型主动发现异常特征,提前识别。

2.     快速。严选大量的核心业务会同步依赖风控接口,因此我们认为风控接口的latency超过100ms,就没什么价值。核心风控接口(下单控制等)延迟的及格线应该是50ms。才能尽量降低对业务的影响。

3.     灵敏。用户的异常行为需要能实时反馈。当用户出现异常行为时(比如用户鼠标以匀速的状态在移动),所有风控模型都需要立刻重新评估他的信誉情况。并在毫秒级时间完成重新评估,从而保证能立刻拦截他之后可能的违规行为。

4.     灵活。风控与业务逻辑,运营策略等联系非常紧密。风控的策略需要能够做到随时变更,随时生效,与严选业务共同呼吸。

我们的目标是构建符合以上设计目标的现代化风控体系。

严选的风控体系架构

我们把严选的风控体系建设分成4个部分:团队建设,构建以数据为核心的风险识别与分析系统,高性能的异常行为拦截系统,黑科技。在这个体系中,风控的策略,模型,规则,拦截等是高举高打的正规作战方式;而黑科技则是剑走偏锋,谋奇效的方法。

图2 严选风控体系

上图是严选风控体系的一个简单示意图,围绕着风险控制的各个阶段,我们把工作简单划分成了3部分:风险识别,异常拦截,业务支持。风控系统架构是整个建设工作中最为简单,直白的一部分,最为关键和复杂的工作是把架构落地,产生价值。由于文字表达能力和篇幅的限制,我就不具体展开说明我们把上述架构落地的详细过程了。我们稍微介绍下我们系统是如何来实现风控:主动,快速,灵敏,灵活这4个设计目标的。

业务目标指导团队建设。为了完成以上4个设计目标,我们组建了包括模型研发,数据分析,系统研发,风控业务等角色的6人组小规模战斗团队,团队中大部分同学一人兼多角色,确保大家能充分理解各个模块的功能,减少角色之间的沟通,理解成本,提升战斗力和工作效率。

图3 严选风控两级防护模型--护城河+城墙

在开始之前,我先简单说明一下我们的风控模型之间的相互关系——我们把它们具像为护城河+城墙的防护关系。用户在过护城河的时候要被检查一下基础信誉,如有异常则会被拒绝入内,当用户尝试使用可能引发严选资损的业务时,还需要再次确认下是否有足够的信誉来进入对应的城门。如不满足,也会被拒绝在外。

主动 & 灵敏

风控业务本质上是基于大数据的一个数据产品。我们要实现主动和灵敏这两个设计目标,就需要把数据作为风控体系的核心,把思考点落在如何来玩好这些数据。幸福的是,我们底层的基础设施已经非常完备。严选的离线数据计算系统和实时数据计算系统(ATOM)等基础设施在今年9月份构建完毕。

怎么做到对风险的主动和灵敏?我觉得第一个重要的是要明确,我们系统要对什么风险主动,要对什么风险灵敏?对于严选业务而言,我认为是:资产损失。严选风控定义的资产损失包括两个部分:公司资产损失用户资产损失。严选风控的首要目标是保护这两者,减少他们的损失。

攻与防是风控的基调。我们听到了很多攻防双方见招拆招的例子,包括我们自己也积累了大量的这种例子。但我认为见招拆招其实是一种很被动的情况,防守一方一旦疲于应付,就会面临道高一尺,魔高一丈的局面。

我们的策略是避免沉迷在各种攻防细节中,主动构建安全的城墙和护城河。我们对每一个严选用户,他们使用的设备,使用的手机号,IP等建立了信誉度模型。模型为会每一个用户单独打分,评估他们的信誉情况,这套基础的信誉评估体系就是严选业务的护城河。当用户需要使用严选时,他首先需要走过这条护城河上的桥,通过的凭证就是他的信誉。

当用户走过护城河时,他面临的是一道城墙。严选风控系统为每个业务在城墙上单独开了一扇门,每扇门都会有单独的算法模型来评估用户的情况。当然,用户对护城河与城墙的存在正常情况下是不感知的,只有当他被拦截在外时才会发现:咦,你们怎么知道我要来干坏事?

我们通过护城河与城墙来构建用户与严选业务系统之间的安全距离。模型研发的同学大部分时候的工作都是在加固这两道防线。

我们的模型系统在7月份发布了第一版,按T+1的时效更新。由于模型依赖的交易数据,访问数据等都是T+1生成的,从而导致模型本身的时效不足,对用户异常行为的反应不够灵敏。这是一个致命的问题,严选负责实时计算的团队在今年8月份开展了严选DataHub项目。目标是把严选的核心数据源:MySQL,DDB,MongoDB,日志等所有数据实时化,在次之前,我们的实时计算平台只能把日志部分的数据实时化,而MySQL,DDB,MongoDB等产生的数据只能T+1通过sqoop导入到猛犸的方式来获取。

日志。我们简单的利用了flume+kafka的收集方案,通过严选DataHub数据交换服务可以方便的把严选产生的日志数据实时的接入实时计算平台。

MySQL & DDB。严选DataHub服务将自己伪装为MySQL数据库的镜像库(我们修改了开源服务canal来实现这个特性),利用MySQL主从同步协议,实时的获取了MySQL的binlog。同时通过一定的规则,将每张数据库表的实时变更消息以毫秒级的延迟映射到实时通道。完成这个项目后,我们风控依赖的关键数据库数据就足够灵敏了。

MongoDB。严选DataHub研发了MongoDB的OPLog实时获取,分析,解析与入HIVE库的服务。确保MongoDB产生的业务数据也能在严选实时平台上以毫秒级的延迟被访问到。

严选DataHub项目完成后,风控模型系统开始重构,完成了基于实时数据的模型,确保了整个风控系统的灵敏度。只要用户产生了异常行为,他的护城河通行证,城墙通行证上的信誉度都会在毫秒级内完成重新评估。在他干坏事之间就拦截他。

快速

风控系统对业务要做到有效支撑,非常关键的是系统的整体性能。我们的目标是关键业务的风控接口需要在50ms内完成,时效容忍度较高的业务需要在200ms内完成。我们知道风控系统决定是否拦截某个用户行为(比如下单),会有大量的规则需要计算,部分还可能有同步的模型计算,要完成这样的目标挑战不小。

我们的设计思路很简单,计算提前。严选的风控系统在用户一开始访问严选时,就在监控与计算他的行为,我们称为全链路监控与全链路计算。

用户每行动一步,实时平台上的风控任务就会开始调整他护城河的通行证以及所有业务的通行证的信誉值,并执行相应的规则引擎来判定他是否可以通过。也就是说,用户刚到严选门口浏览时,护城河门口与各个城墙门口都已经算好了他是否可以通过,并且这个通过的决策是时刻根据他的具体行为实时在调整的。比如,用户一开始用在淘宝买了一个全新的帐号,然后用了一个灰产专用虚拟机登录了下,当他尝试使用免单券去下单前,在下单业务的城墙门口已经张贴了一条告示:用户XXX违规使用异常的CPU架构,禁止使用免单券。城墙门口的守卫只需要根据他的名字去查下告示就行,O(1)的时间复杂度,可以确保查询足够快,不会导致城墙门口堆积了要办事的人群。

提前计算,全链路监控是确保整套风控系统对外接口高性能的关键。

灵活

严选风控面对的是频繁变化的业务场景,风控系统要有足够的能力应对这种变化,做到与严选共同呼吸。

因此,我们从架构上把风险识别与拦截做了拆分,风险的识别相对稳定,而风险的拦截规则是会频繁变更的。所以提高系统灵活性的关键是提高严选风控规则引擎的灵活性。我们采用了可视化的方式来编辑风险拦截的规则,可以确保风控的规则管理人员能在10分钟内完成拦截规则的变更。

一般公司会采用Drools规则引擎来描述和执行风控规则,Drools虽然使用方便,但表达能力和灵活度都比较差,因此我们采用了相对不一样的方式来描述风控规则。严选采用Groovy脚本语言Drools规则系统相结合的方式来作为严选的规则引擎。

Groovy脚本语言提供了非常强大的表达能力。ATOM实时计算平台提供了对这两个规则引擎的支持。

收尾 & 预告

在这里,我们主要给大家介绍了严选风控体系建设的概要情况以及我们的一些设计思想。我们还准备了另外两篇分享,分别是:

网易严选风控实践(中)-剑走偏锋,我们的搏击技法

网易严选风控实践(下)-一些值得探讨的问题

风控是一场不能输也没有结束时间的战斗,截个灰产群的聊天图,与大家共勉。

网易严选风控实践(上)-打造现代化的风控体系

网易严选风控实践(中)-剑走偏锋,我们的搏击技法

网易严选风控实践(下)-思考与探讨

网易云新用户大礼包:https://www.163yun.com/gift

本文来自网易云社区,经作者陈炬授权发布。

网易严选风控实践(上)-打造现代化的风控体系相关推荐

  1. 网易严选ServiceMesh实践

    本文作者:国云(网易严选中台技术团队负责人,容器化负责人) 2008年加入网易,长期从事一线的研发与管理工作,擅长技术架构及技术体系建设,曾参与或负责过网易博客.网易邮箱.网易有钱等多个核心产品的研发 ...

  2. 以网易严选为例,人工智能实战系列之预训练语言模型

    导读:随着Bert的发布,预训练 ( pre-train ) 成为NLP领域最为热门的方向之一,大规模的无监督语料加上少量有标注的语料成为了NLP模型的标配.本文将介绍几种常见的语言模型的基本原理和使 ...

  3. NLP判断语言情绪_网易严选nlp预训练语言模型的应用

    随着2018年底bert的发布,预训练(pre-train)成为nlp领域最为热门的方向之一,大规模的无监督语料加上少量有标注的语料成为了nlp模型的标配.本文将介绍几种常见的语言模型的基本原理和使用 ...

  4. 预训练语言模型在网易严选的应用

    导读:随着Bert的发布,预训练 ( pre-train ) 成为NLP领域最为热门的方向之一,大规模的无监督语料加上少量有标注的语料成为了NLP模型的标配.本文将介绍几种常见的语言模型的基本原理和使 ...

  5. 网易严选 x 网易有数:数据产品+数据中台双引擎模式实践

    导读:作为一个"平台+品牌"双模式并存的电商品牌,网易严选(下文简称严选)的数据数据链路天然很长,这给数据化决策和数据化运营带来了不一样的挑战,严选如何打造数据支撑体系支撑业务发展 ...

  6. 网易严选画像建设实践

    文章作者:卢若浩 网易严选 内容来源:作者授权 出品平台:DataFunTalk 导读:在数字化转型的浪潮下,企业越来越重视自身数据资产的沉淀和应用.画像作为一种重要的数据资产形式,受到了越来越多的关 ...

  7. 网易严选搜索推荐实践之:“全能选手”召回表征算法实践

    今天给大家带来网易严选人工智能部算法专家潘胜一先生所做的分享<网易严选搜索推荐实践之:"全能选手"召回表征算法实践.pdf>.潘先生所在的团队主要负责搜索推荐,搜索推荐 ...

  8. 网易严选如何打造数仓规范和评价体系

    数据为王的时代,数据量从最初的几十 G,慢慢沉淀到几十 T,甚至几十 PB 的量.数据工程师,也从最初的 ETL 工程师慢慢成长为数据全栈工程师:采集.同步.模型.离线.实时.规范.平台.工具.产品. ...

  9. 数据湖:网易严选的数据湖实践

    文章目录 一.业务背景 二.数据架构 三.现状 &目标 四.数据湖是解法? 1.数据湖 vs 数据仓库 2.数据湖的优势 五.落地实践 六.数据集成 七.数仓建设 八.特征工程 九.未来规划 ...

最新文章

  1. 《spring揭秘》读书笔记三
  2. 一个故事讲清楚BIO NIO 异步
  3. 用URLGather来管理和保存你的页面
  4. 【AI视野·今日CV 计算机视觉论文速览 第190期】Fri, 9 Apr 2021
  5. 第三章 springboot + jedisCluster(转载)
  6. Landsat7大气校正后图像变色
  7. nvm npm exit status 1:乱码
  8. Internet Explorer之后的前端开发
  9. 素数表(Eratosthenes)
  10. 趋势追踪交易课堂:复盘的意义和方法
  11. 《测绘程序设计实习》实验报告(MFC,C++)
  12. 【ESP32_8266_BT篇(三)】GATTATT协议规范
  13. 记录一次使用Redis中ZSet和List分页
  14. Cobalt浏览器简介
  15. Robust Lane Detection from Continuous Driving
  16. 华为设备vlan聚合配置命令
  17. 基于matlab的汽车牌照识别研究
  18. python抓取网页信息保存为xml文件_用Python抓取XML文件
  19. python选项菜单_Python TKinter菜单和选项
  20. UE4自定义点击区域的Button

热门文章

  1. python使用matplotlib绘制鼠标路径
  2. 帧率、码流与分辨率相关知识
  3. 软件测试具有哪些优势
  4. 基于STM32电子钟语音报时
  5. 莫名惊诧:中国客户被FUCK
  6. What、Why、How?解读Webpack官方文档
  7. 送外卖送快递很丢人吗,为什么有些人看不起他们
  8. java计算机毕业设计家教到家平台MyBatis+系统+LW文档+源码+调试部署
  9. java计算机毕业设计基本web蓝桥杯名师工作室MyBatis+系统+LW文档+源码+调试部署
  10. Retrofit2学习项目_2