风控日报 — 2026-09-09

📊 原料:43 条入文件(GitHub 仓库搜索 32 条 + arXiv 11 条全部无关——与 09-08 批次完全一致(2609.053xx/054xx,API 缓存第 2 日重复),11 条逐一比对同 ID 同题。arXiv 全噪声小计:连续 42 期(07-17→09-09)全噪声,累计 855 条中 1 条相关,噪声率 99.9%)。剔除构成:13 条已覆盖/重复(FFraud-com 邮箱+IP 库[07-14 ★已收录]、tarka[09-01 ★★]、lucidfence[08-07]、RazorPulse[09-05 ★★]、marketplace-phaas-tracker[08-14 已入图]、anti-fraud-monitor[06-23 ★★]、wl.traders.p2p[09-04 ★]、TemporalStore[09-05]、si126048 舆情[09-08]、phase-rs[游戏规则引擎]、warden-desk[09-05]、Muskan motif[09-08]、temporal/游戏/厂商类若干)+ 2 个已确认恶意仓库残留不重复验证(defi-risk-screening[07-26]、Digressive-pulse731/fraud-detection-api[07-26])——今日 0 新确认恶意仓库(09-08 后重新起算 2 日),恶意仓库累计维持 26 个;Infrai astroturf 无第 6 例(昨日 #4/#5 两仓仍在但无新增,采集流内无指纹命中)+ 9 条过薄/域外剔除(FraudSight 单句无内容、portfolio-risk-engine 投资 VaR 域外、Devansh261 两行 README、agentstack vscode 域外、Duel-Masters 卡牌游戏、sushilpatil sem 项目、legichain×2 厂商 SDK stub、youseifsamirshabaan Kafka/Spark 教学与 09-08 Imperator 同栈重复族)。今日筛出 8 条工程高信号。今日主题一是对抗鲁棒性换轨:从评估框架到训练方法——AdaMule 第一次把对抗攻击约束在金融物理定律内(资金守恒/时序因果),并把"误伤合法商家"显式建模为训练约束;主题二是泄漏叙事同日正反两面——Vignesh 把 3 类泄漏 bug 写成分类学(正面),jeganathan 把 PR-AUC=0.999+0 误报当战绩(反面),"评估即证据链"谱系有了反例档案。


今日高信号

1. OmDhone/AdaMule-GNN-Fraud-Defense — 对抗鲁棒 GNN 换轨:把攻击者约束在金融物理定律内(反洗钱/水mule 网络的对抗鲁棒图检测研究原型;核心缺口:传统 GNN 假设静态对手,而 mule 团伙主动重构拓扑逃逸(structuring 拆分低于阈值、伪装成高连接合法商户聚合器、利用拓扑歧义);三个差异化设计:① 金融约束引擎——扰动必须满足金额边界/速率/资金守恒/时序因果(钱未收到不能转出);② 合法性保护正则——用商户画像元数据区分"不规则但合法"(节日爆发型小商户)与"伪装欺诈",hard negatives 显式入训练;③ min-max 交替重训练——成功的逃逸结构被收割并动态加固;攻击者动物园 Random/Heuristic/Gradient/PPO-RL,基线 GCN/GAT/CARE-GNN+AdaMule)【信号:★★★】

OmDhone/AdaMule-GNN-Fraud-Defense(0★, Python, 09-08 单日新建, 2.5MB, MIT)定位"research prototype",README 有完整的 research-gap 论证段:无约束图扰动、同质静态网络、"任何爆发拓扑必欺诈"三条平凡假设各自错在哪。

风控视角:对抗谱系(08-26 LOAFO 静态基准→08-28 lurescope 单轮逃逸→09-01 GAUNTLET RL 闭环→09-02 LiveFire 参数化→今日 AdaMule)的第 5 样本,但换轨了——前四例都是评估框架(怎么测鲁棒性),AdaMule 是训练方法(怎么加固),且第一次把攻击面约束在金融物理内:攻击者不能无中生有造钱、不能时间旅行。这个"领域约束对抗"直接补了国内对抗样本研究的缺环——无约束扰动在真实支付网络不可执行,测出来的鲁棒性是假的。合法性保护正则把"误伤正常商家"从事后阈值问题变成训练目标内的显式约束,是误杀治理的新表述。验证补记:README §11 有实证结果表(Clean/Attack 下的 recall/F1/FPR 分模型)且 §12 有诚实局限章节(合成数据/纯防御定位)——但表格里 "Full Robust" AdaMule 的 recall 掉到 0.3333,prose 却用正面措辞包裹("完全消除 hard-negative 误报"),表格透明、行文 promotional,读表不读话;tests/ 有 7 个真实断言测试文件(资金守恒/时序因果约束测试),但 pytest 徽章 href 为空、无 CI workflow。⚠️ 单日新仓、合成图实验、结果表数字未经第三方复现、README 内 clone/citation URL 还是占位符(github.com/example/adamule)。与 反欺诈体系 的 mule 环检测和 风控模型 的对抗训练直接相关。→ GitHub

2. SyedHuzaifa12/sentinel-upi-risk-engine — 老仓 README 追平代码:APP 欺诈框架 + "chargeback 特征即事后泄漏"准入论述(08-17 收录时 README 滞后(还在描述旧 Django+RF 版、声明"无漂移检测"实则已实现);今日 README 完全重写为设计叙事:UPI 欺诈主体是 APP(Authorised Push Payment)欺诈——受害者被社工后自愿授权,设备指纹/PIN/地理全部真实 → 两条推论:chargeback/高风险国家名单类特征=事后结果泄漏(payment 已完成才有值),即使存在类似物也明令禁用;检测只能靠行为偏离双家族——收款方(mule fan-in 突发多付款人/账户年龄/过路速率)+ 付款方(首付此 VPA/金额 z-score/collect-request 发起的支付=APP 诈骗典型诱导模式);allow/warn/review/block 决策在钱动之前)【信号:★★】

SyedHuzaifa12/sentinel-upi-risk-engine(0★, 08-15 建→09-08 推送, 13.5MB, 08-17 曾以 ★★ 收录)今日推送为 README/DESIGN.md 对齐代码的重写——代码主体(PIT 测试/冷热双校准/成本矩阵/PSI 漂移)08-17 已评,今日新的是设计论述层。

风控视角:两个取用点。其一,"老仓进化"首个样本——07-11 edge-upi 证明了 wiki 引用的仓库会事后恶化(变脸武器化),sentinel-upi 证明了反向也存在:收录时 README 滞后、事后追平。仓库引用的"无永久可信性"是双向的,收录时保存 README 摘要的做法(09-05 已立)两个方向都适用。其二,chargeback 特征禁用是"防泄漏纪律"从训练集设计扩展到特征准入清单的表述样本——"该特征在支付完成后才有值"是特征评审的一票否决项,国内对照就是把"已退款/已拒付/已挂失"类字段显式写进特征准入负面清单。APP 欺诈的行为偏离双家族(收款方 mule fan-in + 付款方偏离)是与国内"账户侧+交易侧"特征分层同构的印度 UPI 表述。与 支付风控 的交易前校验和 风控模型 的特征治理相关。→ GitHub

3. Vignesh-Hariharan/fraud-detection-pipeline — 3 类泄漏 bug 分类学:15 特征输给 6 特征的根因调查(dbt + Snowflake Cortex ML 在 1.3M Sparkov 交易上的全栈管道;核心叙事:6 特征基线反超 15 特征全量模型,挖根因得到三类泄漏 bug——(a) 全数据集上的 point-in-time 聚合、(b) 标签衍生输入、(c) ID 列直传分类器——Key Learnings 章节逐个复盘;README 自我定位:"leakage analysis, not the precision number, is the point";Slack 高风险告警、CI、MIT、03-21 建仓至今 3.5 个月仍维护(09-08 dependabot commit))【信号:★★】

Vignesh-Hariharan/fraud-detection-pipeline(0★, Python, 350KB, MIT, CI 徽章)与 09-08 cher-ry(PR-AUC=1.00 泄漏调查)同叙事族但增量明确:cher-ry 是单次调查的过程叙事,Vignesh 给出可复用的泄漏三分类(PIT 聚合/标签衍生/ID 直传)。

风控视角:"泄漏即 bug 报告"谱系 +1,且升级为分类学——三个 bug 类别可直接抄进特征评审 checklist:任何聚合特征问"窗口是否只用决策时点前数据"、任何强预测特征问"是否由标签/结果字段派生"、任何标识符问"是否该进模型"。15 特征输给 6 特征也是"特征越多越好"反例的干净展示——坏特征不只是无效,是通过泄漏主动污染评估。数仓内建模路线(Snowflake Cortex ML)与 09-05 GretchenK20 的 dbt+外置模型双轨构成对照样本。与 风控模型 的评估纪律和 特征平台 的特征评审相关。→ GitHub

4. jeganathan-duraisamy/fraud-risk-detection — 反面锚点:PR-AUC 0.999 + 0 误报当战绩(6.3M+ 交易、0.13% 欺诈率;Random Forest vs Logistic Regression 对比表:PR-AUC 0.999、Precision 1.00、Recall 1.00、0 误报、1643 笔欺诈漏 4 笔;全部作为成就展示,README 无任何局限性章节;正确论述了 PR-AUC vs Accuracy 的选择理由(不平衡数据 accuracy 无意义))【信号:★★(反面教学锚点)】

jeganathan-duraisamy/fraud-risk-detection(0★, Python, 185KB, 03-08 建→09-08 推送, 无 license)的指标表本身就是教材:0.13% 欺诈率上"零误报+100% 召回"几乎必然指向数据结构问题而非模型优越。验证确认:全 README(154 行)无任何局限性章节,指标全部作为成就展示。

风控视角:"评估即证据链"谱系的反例档案——与 09-08 cher-ry(把 PR-AUC=1.00 定性为 bug 报告)同日相对:同样的完美指标,一个当 bug、一个当战绩,认知姿态的差异比指标差异更值得记录。验证确认数据集 AIML Dataset.csv 即 PaySim 合成数据集(README 从未声明 synthetic)——PR-AUC 0.999+0 误报是 PaySim 的经典伪影(TRANSFER/CASH_OUT 类交易的确定性"全额转空"模式,类间几乎线性可分),不是真实世界性能;README 的 "Leakage Prevention" 章节是方法论声明而非局限披露。面试现成素材:给定 PR-AUC=0.999 你下一步做什么?查数据是否合成(PaySim 全额转空模式)、查重复样本、查时序切分、查特征准入——四步排查本身就是答案。收录为反面锚点,不为引流。与 风控模型 的评估纪律相关。→ GitHub

5. Haritha-ashok28/finbank-lakehouse — Medallion 教学族补上治理层:Databricks + Unity Catalog + 同一引擎跑历史与实时(Azure Databricks 批流一体欺诈检测湖仓,虚构加拿大数字银行 FinBank;完整 Medallion(Bronze/Silver/Gold)+ Unity Catalog 治理(catalog/schema/table 级权限与血缘);自研规则欺诈引擎在历史回放与实时流上同一套代码运行;活体交易模拟器按需生成欺诈场景供演示;AI/BI dashboard 发布链接(租户门控,待验证);MIT,09-05 建→09-08 推送)【信号:★★】

Haritha-ashok28/finbank-lakehouse(0★, Python, 713KB, MIT)是 Medallion 欺诈教学族第三个样本(09-05 GretchenK20 dbt+Snowflake、09-08 Imperator Delta+PySpark、今日 Databricks+Unity Catalog)。验证确认:Unity Catalog 治理真实落地(external locations、列掩码 notebook、访问矩阵),自研 4 规则欺诈引擎批流同一套代码(applyInPandasWithState),dbldatagen 模拟器,21 个 pytest 测试 + GitHub Actions CI;项目姿态诚实——明确拒绝使用数据集中不可验证的欺诈标签、记录了真实踩过的 bug。

风控视角:增量在平台治理层——前两例补的是计算/存储分层,本仓补 Unity Catalog 的数据权限与血缘治理,正好对应国内风控数据分级(特征表谁能看/谁能导出/血缘可追溯)的平台化诉求;"同一规则引擎跑历史+实时"是批流一致(防止离线策略与在线策略漂移)在欺诈检测里的直接表述;活体交易模拟器是测试/演示数据供给的工程化(对比 09-02 起多个仓的静态 CSV)。⚠️ 作品集项目、规则引擎仅 4 条规则深度有限;README 宣称 dashboard "无需 Databricks 账号即可查看"——验证实测该链接重定向到登录页(租户门控),此宣称不实。与 风控数据架构 的湖仓分层和 实时风控引擎 的批流一致相关。→ GitHub

6. soahum189/Real-Time-Transaction-Fraud-Detection-Engine — 全家桶参考架构:ensemble+SHAP+Kafka 打包,GNN 独立未融合(多模型加权集成(XGBoost 10%/LightGBM 75%/CatBoost 15%)+ GNN(HeteroGraphSAGE,独立运行未入集成)+ Kafka(Redpanda)流 + SHAP 可解释 + 工作台为 Streamlit(React 前端开发中);自报 590,540 笔 IEEE-CIS、418 特征、P50 191.8ms/P99 274ms;Optuna 110 trials、DLQ+Prometheus/Grafana;Known Limitations 章节坦承 GNN 精度弱(AUC-PR 0.10)与 checkpoint 缺失;MIT;09-08 单 commit 新建)【信号:★】

soahum189/Real-Time-Transaction-Fraud-Detection-Engine(1★, Python, 327KB, MIT)是"全家桶"型作品集:把当前欺诈检测的流行组件一次配齐。

风控视角:收藏级参考架构图——ensemble+流+可解释的工程叙事完整(时间序切分、Optuna、死信队列、监控全套),且 Known Limitations 坦承短板反而是加分项;但验证发现两处 README 头部宣传与正文表格的落差:GNN 在自己的表里标着 "Standalone"(AUC-PR 0.10 诚实披露)——"ensemble+GNN" 是营销式并置而非架构融合,可作为"README 第一屏 vs 实测表格"的对照教学样本;延迟声明 P50 达标但 P99 274ms 超预算线,全部数字自报无基准工件。作为架构对照样本收录,不作为实现参考。与 反欺诈体系 的体系结构和 实时风控引擎 的延迟预算相关。→ GitHub

7. kartiknaik35/Insurance-Fraud-Detection — 理赔团伙图检测的正确思路 + 投影式数据的教训(表格 ML(XGBoost/RF/LR)+ GNN(GCN/GraphSAGE via PyTorch Geometric)+ Flask 台;核心思路:欺诈者成环(假医生/假患者/假事故,经共享保单号/地址/设备/邮箱域连接),图可见表格不可见;数据集为 IEEE-CIS 重标为保险理赔(列名映射表:TransactionID→ClaimID、card→Policy 等))【信号:★】

kartiknaik35/Insurance-Fraud-Detection(0★, 3.8MB, 09-08 单 commit)的建环思路正确,但数据是投影式练习。

风控视角:垂直领域需要垂直数据的干净反例——列名映射改变不了数据生成过程:图上的"ring"是卡交易的共享设备/邮箱模式,不是真实理赔勾连(理赔欺诈的环结构在医生-患者-修理厂-事故场景里完全不同)。与 09-08 cher-ry(真实理赔数据+泄漏调查)对照食用:同样是保险欺诈图检测,数据真实性决定结论价值。GCN/GraphSAGE 建环的代码骨架本身可参考。与 反欺诈体系 的图算法相关。→ GitHub

8. makefeier/insider-compass — 反诈的受害者侧武器化:把"求人办事"知识结构化为防坑引擎(OpenSquilla 平台 skill(24KB, v1.0.1, 09-08 新建, MIT);主张:报价水分/行业黑话/销售话术/流程黑箱这些靠"熟人"才能拿到的信息可以方法论化——四类结构:信息差清单/黑话翻译表/话术对抗卡/流程地图,七件套加节奏时机表与证据留存规范;防坑/止损/维权三模式按用户所处阶段路由;"零硬编码数据"主张)【信号:★】

makefeier/insider-compass(1★, 09-08 新建, MIT)是反诈供给的 consumer-facing 路线:不在平台/银行侧做检测,而是把诈骗/套路剧本反向武器化给潜在受害者。验证确认:确为 SKILL.md-only(全仓库=LICENSE+README+SKILL.md+banner.svg,无代码系统);"零硬编码数据"有自洽答案——信息源地图章节说明联网按查询采集(裁判文书网/黑猫投诉/12315/政府原文/属地 12345)+ 带日期的记忆快照,并用 9 条可靠性机制(链接核验/三色置信标签/拒答规则)治理出处。

风控视角:"话术对抗卡"(对方话术→背后意图→你照着说的应对)本质是诈骗剧本的反向知识库——与 09-04 Muhafiz-AI(四语诈骗文本检测)同为反诈 consumer-facing 样本,但一个做检测、一个做用户武装;国内对照是反诈中心 APP 的"骗局剧本库",本仓把剧本结构化成了可路由的模式库,其"出处治理+置信分级"的做法对任何 LLM 驱动的风控知识库都有参考性。⚠️ 域外(消费保护≠金融风控)、skill 形态无代码系统、知识质量依赖联网采集源的可靠性(待验证)。与 反欺诈体系 的反诈生态相关。→ GitHub


技术趋势

  • 对抗鲁棒性换轨:评估框架 → 训练方法 + 领域约束:AdaMule 不再问"模型扛不扛住攻击",而是"攻击在金融物理下长什么样"——资金守恒、时序因果、速率边界构成扰动约束集,合法性保护正则把误伤合法商户变成训练目标内的显式项。对抗谱系第 5 样本,也是第一个训练侧答案。
  • 泄漏叙事同日正反两面:Vignesh 把 3 类泄漏 bug(PIT 聚合/标签衍生/ID 直传)写成可复用分类学(正面),jeganathan 把 PR-AUC 0.999+0 误报当战绩展示——验证确认其数据集为 PaySim 合成数据且 README 从未声明(反面实锤)——"评估即证据链"谱系首次收录反例档案;认知姿态(把完美指标当 bug 还是当奖杯)比指标本身更有信息量。
  • 老仓 README 追平代码(与变脸相反的首例):sentinel-upi 08-17 时 README 滞后、今日完全重写对齐——与 07-11 edge-upi"收录时干净事后变脸"构成仓库可信性的双向案例;"chargeback=事后结果泄漏、禁入特征集"的准入论述是防泄漏纪律从训练集设计扩展到特征准入的新表达。
  • Medallion 湖仓教学族补上治理层:finbank 的 Unity Catalog(权限+血缘)补齐 dbt/Delta 两例之后的平台治理缺口;"同一规则引擎跑历史+实时"是批流一致的新样本。
  • 反诈 consumer-facing 路线再+1:insider-compass 把诈骗剧本反向结构化给用户(对照 09-04 Muhafiz-AI 的检测路线)——反诈供给正在检测侧与用户侧两线展开。
  • 威胁情报零日:0 新恶意仓库(连续第 2 日),残留 2 个不重复验证;Infrai astroturf 无第 6 例(昨日 #4/#5 两仓仍存活但无新增,采集流内无指纹命中)。
  • arXiv 连续 42 期全噪声:今日 11 条与 09-08 批次逐条相同(2609.053xx/054xx,API 缓存第 2 日),累计 855 条中 1 相关(99.9%)。

行业案例

  • Azure Databricks + Unity Catalog 银行欺诈湖仓:finbank 以虚构加拿大数字银行为载体的批流一体+治理全套
  • Snowflake Cortex ML 数仓内建模:Vignesh 的 dbt+Cortex+Slack 告警管道(对比外置建模双轨)
  • 印度 UPI APP 欺诈检测框架:sentinel-upi 的行为偏离双家族(收款方 mule fan-in + 付款方偏离)与 chargeback 特征禁用论述
  • 开源反诈知识引擎:insider-compass 的"话术对抗卡"模式库(OpenSquilla skill 生态)

值得深入

  1. AdaMule 的约束引擎实现与 §11 结果表:资金守恒/时序因果怎么落到代码(图扰动时怎么校验,tests/ 已有约束测试可对照),PPO 攻击者的 reward 设计,以及 recall 0.3333 与 prose 叙事的落差怎么解释——领域约束对抗能否复现。
  2. sentinel-upi 重写后的 DESIGN.md:APP 欺诈特征家族的完整定义与 cost matrix——印度 UPI 语境的完整设计文档(自报 PR-AUC 0.8455 + 真实世界 0.3-0.7 基准注释的诚实口径也值得抄)。
  3. Vignesh 的 Key Learnings 章节:3 类泄漏 bug 的复现步骤与修复(含 V2 point-in-time 重建的实测差值)——特征评审 checklist 的直接素材。
  4. finbank 的 Unity Catalog 配置:catalog/schema 权限怎么映射到风控数据分级(external locations/列掩码/访问矩阵 notebook)——湖仓治理的参照配置。