乐趣区

关于风险控制:图数据库在中国移动金融风控的落地应用

本文整顿自中国移动算法工程师——汪海涛在 NebulaGraph 2022 年度用户大会上的分享,现场视频见 B 站:https://www.bilibili.com/video/BV1Ae4y127a8/

各位朋友上午好,我是来自中国移动的算法工程师汪海涛。接下来我次要聊一聊图数据库在中国移动,特地是金融风控场景的落地利用。

为什么中国移动要建设图平台?

全国 9 亿用户,每天产生大量数据

中国移动有十分多的数据,全国的用户每天都会产生海量的数据。 如何从这么大数据量外面挖掘出有用的信息,而后用到金融风控场景?这就是咱们须要做的事件

之前,咱们是以手机号为维度去提取特色,而后去做一些模型或规定判断一个手机号是否是有守约危险。但仅仅基于手机号很难综合去思考危险状况,因而咱们就想采纳图计算技术去综合看一个手机号以及四周的其余手机号的信息,而后独特评判它的危险。

最开始是基于生产金融的场景,从比如说像蚂蚁金服、微信以及京东白条这样一些产品切入,通过用户通话数据、短信数据、设施等多维度的一些信息,去判断用户危险。但中国移动数据量这么大, 不论咱们要做什么,最大的诉求就是须要有一个十分高性能的平台去撑持数据分析

为什么抉择 NebulaGraph 图数据库?

JanusGraph vs TigerGraph vs NebulaGraph

咱们最早是采纳了 JanusGraph 加上 Spark 去建设咱们平台,然而通过一些测试,咱们发现 JanusGraph 的查问性能以及导入性能都比拟个别,而后 GraphX 的话,它的计算性能其实也比拟个别,特地是它须要的内存量特地大,因而咱们起初又开始去调研了市场上很多的图产品,并且对一些图产品做了测试,包含国外的产品,像 TigerGraph 之类的等等,然而因为一些非凡起因,中国移动是在美国商务部的实体清单上,所以很多外国的产品咱们是没法去洽购和应用的。

因而最初,咱们是抉择国内的几家厂商进行了一些测试和比拟, 最初抉择了以 NebulaGraph 作为图数据库,而后以 Plato 作为图计算引擎这样一个整体的架构

中国移动是如何搭建图平台的?

图平台建设详情

咱们整体的架构大略是这样的——

最底层是咱们的数据源 ,中国移动建设有一个全国大数据中心,次要包含通话数据、地位数据、生产数据、设施数据、用户数据和 APP 数据等等,咱们每月把这些数据抽取到 HDFS 外面,而后把其中有用的数据抽取到 NebulaGraph 数据库外面,那么这里用的就是 Nebula 的一个导入工具,这是咱们图数据存储这一层。

再上一层是计算剖析层 ,这也是咱们建模和业务剖析人员次要应用的一些框架。首先第一个是 Plato,它是腾讯之前开源的一个图计算引擎,然而据我所知腾讯当初曾经不保护这一套引擎了,因而咱们也是专门找一些工程师,而后去保护这外面的一套框架,以及修复一些小 bug 之类的。

那么它蕴含的算法其实很多的,这里我次要是列举了两个社区发现算法:Louvain 算法和 HANP 算法。它外面还蕴含一个 LPA 算法,因为 LPA 算法的话是 HANP 算法一个简化版,所以这里我没有列出来。

而后外面还有一个咱们有可能前面会用到的对于随机游走类的算法,次要是基于随机游走失去一个节点序列,会为咱们前面用于图神经网络训练做一个后期数据预处理的工作。

第三个是 GNN,就是图神经网络。图神经网络是最近几年衰亡的一个畛域,咱们当初次要是基于这些模型做一些简略的产品,看看能不能获得比以往的办法更好的一些成果。最初就是基于 NebulaGraph 查询语言,次要就是 GO 语句和 FETCH 语句做一些简略查问。

再上一层的话就是应用层 。首先是关联危险分,关联危险分次要是基于配套的社区发现算法来做的。第二个号码危险分和最初一个催收剖析次要是基于 Nebula 的查问语句来做的,次要就是查问用户跟一度、二度联系人以及一些守约用户,或是催收专用号码进行一些被动或被动的呼叫。第三个信用评分卡是基于图神经网络来做的,次要是用逻辑回归或者决策树之类的模型,心愿通过图神经网络做一些进步。

图数据结构介绍

  • 点数据

点数据次要是有四类,第一个是手机号,手机号也是咱们最重要的点数据,次要是包含比方这手机号它是属于哪个市的,是否产生过停机等等,还有一些生产信息。第二个是地理位置,次要基于基站。第三个身份证,作为惟一身份证辨认,可能也会有年龄或学历之类的标记。最初是设施信息,个别手机会有一个设施值,有对应的型号、设施零碎等。

  • 边数据

目前边数据的话,一个是用户跟用户的通话数据,第二个是手机号和身份之间的对应关系,第三个是手机号和设施之间对应关系,第四个是手机号跟地理位置之间对应关系,那么这些是咱们在图数据库外面保留的一些数据。

图技术在中国移动有哪些利用?

利用 1:号码危险分

首先是号码危险分模型, 次要用在羊毛党辨认这个场景 。咱们会依据用户的通话流量地位以及手机行为信息去判断一个号码有没有可能是个羊毛党,次要通过四个模块——

第一个是接码模块,咱们会跟一些里面数据公司单干,判断一个号码有没有可能是一个接码号码,如果是,咱们会认为这个号码是薅羊毛的可能性就很大。

第二个行为异样号码,比如说这个手机号是否当月一次通话都没有,而后是不是每月都根本只有固定的月租这样的生产。这种号码咱们认为它可能是一个小号,或者是专门用来去薅羊毛的号码。

第三个是地位异样,比如说这个手机是否一个月下来就是在一个地位素来没有动过,可能只是放在家里偶然用一下,不会带进来这种。对于这种号码的话,咱们认为它的危险也是绝对比拟大的。

第四个是染灰模块,图技术次要就是用于这个模型 。基于前三个模块的后果,咱们首先取得了一批曾经确定的羊毛党用户,那么咱们可不可以发现他的一些独特特色?比如说可能有几个羊毛党(号码)是属于同一个用户的,那么咱们是不是能够看看这个用户上面其余手机号是不是也可能是羊毛党?

另外,如果发现有一堆手机号是之前在同一个设施上应用过,咱们可能也会认为这个设施上对应的其余手机号也可能会是一些羊毛党。业余的羊毛党会采纳卡池这种设施专门去薅羊毛,用图技术就能够疾速发现并辨认。

利用 2:关联危险分

而后是关联危险分,艰深来说就是「近朱者赤近墨者黑」。

在平时交际圈,如果你的守约可能性比拟低,那么四周人可能守约性也会比拟低。基于这样一种想法,咱们次要做法就是首先基于挪动所有用户构建一个关系网络,而后采纳一些社区发现类的算法去开掘这个社区中集体的评分以及集体之间的关系,通过对这个社区打分,去辨认出这个社区是否是欺诈或低信用社区。

关联危险分的次要利用场景就是欺诈畛域,比方信贷欺诈、交易欺诈、营销欺诈、领取欺诈以及账户欺诈等等多个方面

利用 3:图神经网络(GNN)

最初是对于图神经网络的一些利用, 次要是用于金融风控信用评分卡的场景 。过来咱们用做信用评分卡大部分都是先提取用户特色,再训练一个逻辑回归模型或者是角色数字类的模型。

那么当初,咱们想通过图神经网络做一些模型,通过用户之间通话数据,比方近三个月被动通话、被动通话以总通话次数是否达到要求,去判断要不要保留这样一条边。

咱们大略提取 100 多个次要的特色去录模,这里的模型相对来说比较简单,目前是尝试了一个双塔的模型,右边的是对于图神经网络聚合的这样一个模型,左边用户特色自身的一个全连贯网络做了这样 MLP 的模型。右边的神经网络聚合,是比较简单也是最罕用的——GCN、GraphSAGE 和 GAT 这三个模型。

另外咱们当初采纳的是一个同构图的网络建模,前面可能会思考异构图,比如说思考用 HAN 这样的一些异构图的模型去建模,把用户的身份证和设施以及地位信息这些点都演绎进来,而后一起进行建模。

图数据利用的将来瞻望

1. 数据血统

中国移动大数据中心会提供给大略 30 多家客户的 50 多个我的项目进行独特的建模,建模工作里蕴含的数据维表会特地多,因为咱们会给每个用户都匹配数据,而后帮他们生成特色,最初会把后果表也保留在数据库外面,大略当初有 1000 多张数据表,平时根本靠人工治理,前面看看能不能通过数据血统的形式去做一个演绎。

2. 图神经网络

中国移动除了大数据中心,还有人工智能核心,那里有很多的 GPU 资源进行人工神经网络的训练,然而目前模型训练效率比拟低下,所以前面看看怎么用图数据技术去解决这个问题。


NebulaGraph Desktop,Windows 和 macOS 用户装置图数据库的绿色通道,10s 拉起搞定海量数据的图服务。通道传送门:http://c.nxw.so/blVC6

想看源码的小伙伴能够返回 GitHub 浏览、应用、(^з^)-☆ star 它 -> GitHub;和其余的 NebulaGraph 用户一起交换图数据库技术和利用技能,留下「你的名片」一起游玩呢~

退出移动版