《海外现金贷复贷风控实战》Week 10
复盘:反欺诈关联图与特征挖掘
这是海外复贷系列直播的第 10 周。
上一周,Justin 把老客规则、风险模型、额度与经营安排接成一笔完整的决策。本周,我们单独展开其中一类重要信息:客户与其他客户、设备、手机号、银行卡之间的关联。
一个设备被多人使用,可能是家庭共用,也可能是批量代办;一批客户来自同一个 IP,可能只是用了同一处公共网络。图画出来,线很多,离“这些申请应该拒绝”还有一段距离。
Week 10 要讲清楚的,是怎样把一条关联变成能够核实、能够回溯的风险证据。
本文根据 Week 10 课堂笔记、关联图 Notebook 与特征明细表整理。代码和文中数字来自课堂模拟,不代表线上经营效果;
一、同样共用,风险为什么不同?
Justin老师先讲节点、边和属性。
客户、手机号、证件、设备、银行卡、IP,可以作为不同类型的节点;注册、登录、申请、绑定、填写联系人,则说明这些节点之间发生过什么。属性进一步补充时间、次数、核验状态和风险表现。
这里最先要处理的,往往是数据质量。
拿不到设备标识时填入的统一默认值,或者被当成真实地址存下来的本机 IP,可能把大量没有实际关系的客户连接起来。这个节点看起来很重要,实际却是在反映采集异常。它还会扩大查询范围,让图越来越难计算。
真实共用也需要区分。课堂模拟了家庭共用、公共 IP,以及设备和银行卡同时复用等不同结构。只看“连接了多少人”,这些情况容易被放进同一个风险层;把发生的行为、时间和实体类型补回来,才有进一步判断的依据。
Notebook 给了一个直观对照:20+名客户共用一个 IP,如果直接把客户两两连接,会生成 190 条无向边。密集结构可以由一处正常公共网络制造出来,不能据此确认欺诈团伙。
本次演示因此没有把 IP 单独用于共用实体的客户投影,但仍保留原始证据。这是教学处理方式,真实业务还要判断哪些公共节点应降权、隔离或进入审计,不能把所有高连接节点一删了之。
二、联系人箭头,不能随手改成双向
同样是两个人被连起来,边的业务含义可能完全不同。
A 填写 B 的号码作为紧急联系人,记录的是 A 发起的填写行为。它不代表 B 也填写了 A,更不代表 B 为 A 的借款作了确认。
把号码进一步映射成客户,也需要依据。只有当时存在唯一、有效的核验归属,才能把“A 填了这个号码”转成“A 指向客户 B”。号码归属不明,就保留原始号码关系;不能用今天查到的归属去补历史。
于是,A → B → C 表示沿联系人方向,A 可以到达 C。反过来,C 未必能到达 A。入度关心多少不同客户指向本人,出度关心本人指向多少不同客户,两者回答的问题不同。
共用设备则是另一种关系。A 和 B 都使用设备 D,说明两人存在共用事实;在原始行为图里,两个箭头都指向设备,并没有一条从 A 顺着箭头走到 B 的路径。
需要研究共用结构时,可以另建一张客户之间的关联视图,并明确写上“共用设备”。这类对称关联,不能被解释为双方互填联系人。
同理,三度关联要说明是沿哪个方向、经过哪类关系,是最短距离恰好为三度,还是三度以内。统计人数时还要排除本人、按客户去重,不能把同一个人的多次登录当成多个邻居。
课堂也比较了连成一条链与形成有向环的区别。强连通关心沿箭头是否能够相互到达;忽略方向后连在一起,只能说明处于同一片关联范围。算法找到一个群体以后,仍要回到具体行为,不能直接把“同一社团”改名为“同一欺诈团伙”。
三、回溯时,要还原当时看得到的关系
直播中,有同学反复追问边的属性。Justin 用时间说明了它为什么重要。
假设某条边在 10 月 1 日才建立,回溯 9 月 30 日的申请时,这条边还不存在。用今天的完整图回看过去,可能把当时的一条链补成一个环,让模型提前看到了后来才发生的关系。
配套代码进一步区分了三个条件。
-
1. 事件已经发生,不能把截止时点之后的登录、绑卡或联系人变化提前算进去。 -
2. 系统当时已经获知,发生得早但后来才收到的数据,也不能回填成当时可用。 -
3. 关系在当时仍然有效,已经失效的绑定关系需要按有效期处理。
例如,课堂笔记快照截止到 10 月 20 日,一条 10 月 19 日发生、10 月 21 日才收到的联系人事件,就不能进入这次快照。事件时间早,并不等于当时系统已经知道。
标签也服从同样的原则。邻居在申请之后才被确认欺诈,不能提前变成申请时的“已知欺诈邻居”。
反过来,之后成熟的核验结果,可以用于评价这次预测。特征截止与标签观察,是两个不同时间段。
代码统一使用的窗口只是演示。设备使用、号码绑定和证件关系的有效期未必相同,落地时要分别定义。保存每日快照的价值,就是以后能够重建当时的判断,而不只是留下一张今天看来很完整的图。
四、关联坏点,还要看标签覆盖
图特征可以从人数开始,但不能只停在人数。
一个客户连接了多少邻居,其中多少已经确认欺诈,多少有明确核验结果,还有多少只是未知,这几项要一起保存。
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
没有查到欺诈标签,不能直接写成“关联客户全部正常”。也可能只是尚未核验,或者反馈还没有回来。
如果统计已知标签中的欺诈占比,分母应是有明确标签的人数;同时保留标签覆盖率,才知道这个占比建立在多大范围上。没有有效分母时,应保留缺失,不能补一个看起来安全的零。
答疑里,Justin 和学员还讨论了失联、FPD30 等标签来源。它们可以对应具体的预测任务,但逾期或失联不应在没有进一步依据时,一律改称已经确认的欺诈。训练目标如果混在一起,模型分数的解释也会跟着混。
同样,欺诈确认结果与图上衍生出的疑似群体需要区分。若只是因为关联到坏点就给邻居打上“已确认欺诈”,再拿这些标签验证同一套关联规则,容易把自己的判断当成独立证据。
教学输出里也保留了这种提醒:一名高分客户连接了 5 名共用邻居,其中有已知欺诈节点,还存在设备与银行卡的多类型共用,最终模拟核验结果却是非欺诈。
多种证据组合起来,值得提高核验优先级;结论仍要经过核实。
五、先把图特征送进熟悉的模型
这节课的实操没有要求大家直接训练图神经网络。
演示先按时点构图,再把入度、出度、分层关联、共用实体、历史标签覆盖和社团结构等信息,汇总成客户级宽表,交给一个 LightGBM 模型训练。
这与已有表格模型的工作方式能够衔接。策略同学需要说清希望识别什么行为,模型同学则需要把它变成可重建的字段。没有图数据库,也可以先用已有关系表完成一部分关联分析。
特征明细表的作用,是把定义继续写细。当前逾期金额和历史最大逾期,近 7 天申请次数和累计放款次数,都是不同属性;“已设计”、“已计算”、“已入模”也要分别记录,不能因为表里列了字段,就默认系统已经能提供。
验证方式还要考虑关系本身。
如果同一批高度关联的客户,被按行随机拆到训练集和测试集,两边可能共享大量相似背景。本次 Notebook 先按原始图的关联分量整体分组,让同一群体留在同一集合。这能检查一类跨集合的问题,但还不是时间外验证;正式上线前,仍要到未来时期检查表现。
直播答疑中,我也追问了样本量。对这类探索,节点总数只是一个起点,真正需要核对的还有有效关系、成熟标签,以及不同群体能否支持验证。不能只凭“图里已经有多少节点”,就决定必须上更复杂的模型。
本课只有一个模型,没有提供加入图特征前后的对比实验。它展示了怎样组织数据和训练,不能据此宣布图特征已经带来多少真实增益。
六、模型分数高,要怎样决定核验谁?
Justin 提醒,反欺诈评估不能只停留在 AUC、KS,还要看召回率和精确率。
把它放到核验资源里,会更容易理解。
Notebook 的现有笔记输出中,测试集有 377 名客户,其中 34 名的最终标签为欺诈。按分数最高的约 10% 安排核验,选出 38 人,命中其中 22 人。
精确率是 22 ÷ 38,约 57.9%,回答送去核验的人里,有多少确实命中;召回率是 22 ÷ 34,约 64.7%,回答全部欺诈客户里找回了多少。
两个分母不同,后面的动作也不同。
这 38 人里,还有 16 名非欺诈客户。如果把高分核验队列直接当成拒绝名单,就跳过了本来需要完成的核实。同时,仍有 12 名欺诈客户没有被这档容量选中,不能因为队列命中率还可以,就忽略漏掉的人。
提高核验容量、调整分数门槛或增加其他证据,都会改变命中、漏识别和人工工作量。要比较的是相应代价下能找回多少风险,以及给正常客户增加了多少阻力。
这些数字用于解释方法,没有证明真实平台可以取得相同表现。模型分数也没有经过独立概率校准,不能把分数 0.8 直接解释成实际有 80% 的欺诈概率。
七、上线之后,先看图有没有变
图特征上线,除了分数分布,还要检查关系怎样进入系统。
设备标识缺失是否突然增加,号码到客户的映射是否失败,孤立客户占比有没有变化,某类节点的连接人数是否异常抬升,这些变化都可能先影响特征,再影响核验队列。
没有关联,可能是缺少数据;连接很多,也可能是默认值或公共节点混了进来。把这两种情况直接解释成“低风险”和“高风险”,都会带偏后面的动作。
评分时保留特征版本、快照时点和可追溯的事件,核验人员才能知道这条关系从哪里来。核验之后,再回流明确结果与获知时间,继续检查成熟标签下的命中、漏识别和误伤。
这节课的代码还没有部署线上服务。真正落地时,需要让训练、测试和线上读取的口径保持一致,也让关系计算的耗时、数据缺失和异常处理能够被监控。
路飞小结
直播里,我提到这节内容对没有模型背景的同学会有些难跟。节点、边和各种算法名词集中出现,很容易记住名词,却没来得及想清楚一条关系到底说明什么。
复盘时,我更希望留下一个具体习惯:看到一条高风险关联,先打开对应的原始事件,核对谁发起、什么时候可见、号码归属是否有效,以及风险标签从哪里来。
系列导航
这是《海外现金贷复贷风控实战》系列的阶段性复盘,已发布前文包括:
-
《我为什么要做一门海外现金贷复贷风控实战课》 -
《你的复贷率,可能正在说谎》 -
《同样是海外现金贷老客,为什么有人值得经营,有人正在拖垮复贷坏账?》 -
《复贷不是给老客开绿灯:一个客户再次申请时,先看什么?》 -
《海外复贷调额策略:固定调额、上探调额、倒逼调额,究竟该在什么时候用?》 -
《墨西哥现金贷的高息困局,究竟该如何破局?》 -
《调额度、定价格之后,复贷策略到底有没有变好?》 -
《海外复贷模型第一课:老客建模,绝不是把新客模型再跑一遍》 -
《海外复贷模型第二课:用户级看长期,订单级看当下》 -
《海外复贷模型第三课:能不能借、借多少、值不值得经营?》 -
《海外复贷风控实战:模型有了,策略该怎么接?》
AI 协助说明
本文由路飞整理课堂内容成稿,AI 协助完成文字整理、排版与配图。课程事实以课堂材料为准,文中判断与补充为路飞个人观点。
如果你正在寻找下一步
不同读者,适合的路径并不一样:
想建立海外风控基础:可以从路飞的海外风控入门系列专栏开始;
想提升海外首贷或复贷实战能力:可以了解海外风控实战训练营;
正在准备海外风控相关岗位求职:可以根据自身情况评估是否需要一对一求职陪跑;
如果你是出海甲方团队,正在做市场进入、风控优化或风险运营,也可以先从问题诊断开始。
#海外风控 #风控策略 #风控模型 #金融科技 #出海金融 #海外现金贷
#印尼现金贷 #菲律宾现金贷 #泰国现金贷 #墨西哥现金贷

