📊 数据是怎么炼成的
合成数据生成 · 全流程详解
从欺诈知识库到可训练模型,五个阶段各司其职。以下为难度80《暗线-团伙洗钱》真实生成样例。
🎁 难度80 完整数据包 · 免费下载
50,000 行客户数据 · 含字段字典 + 一键验证脚本 + 预跑报告 · 无需注册
⬇ 立即免费下载(2.7MB)
STAGE 1
欺诈知识库 · 定义「坏人长什么样」
作用:把公开的欺诈作案手法,变成机器可读的结构化知识
- 基于威胁猎人信贷欺诈报告、公安部/最高检典型案例、ACFE/Stripe 公开分析,提取 6 类欺诈:身份冒用 / 合成身份 / 包装贷 / 团伙洗钱 / 第一方违约
- 每类欺诈定义:攻击的业务环节、作案流程、七维行为特征(注册/登录/设备/IP/填表/申请/资金)、可被风控识别的风险信号
产出 → knowledge.py 知识库 · 6 类 × 全流程定义
STAGE 2
环境模拟 · 给每个客户配「身份+设备+网络」
作用:让每条数据背后有一个真实的「人」和环境,而不是裸数字
- 基础画像:年龄 18-70、月收入、贷款金额、信用分(分布对齐真实信贷数据)
- 设备指纹:device_id、设备年龄、是否模拟器/Root——黑产爱用云手机和新设备
- IP 环境:住宅/机房/代理网络 + 属地城市,与申报城市比对出「IP不符」信号
- 团伙模式:共享设备池与 IP 段,产生 accounts_per_device / accounts_per_ip 信号
产出 → environment.py · 设备/IP/地理三组环境画像
STAGE 3
行为序列 · 把欺诈演出来,而不是贴标签
作用:按时间线生成完整行为事件流——注册→登录→填表→申请→放款→取现→还款/违约
- 正常用户:地址匹配 90.1%、无违约 99.7%、自然的时间节奏
- 身份冒用:IP 属地不符、新设备、放款后 24h 内快速取现
- 合成身份:养号 ≥90 天才申请、机房/代理 IP(命中率 100%)
- 包装贷:前 3 期还款后断供——伪装最久,违约瞬间暴露
- 团伙洗钱:设备/IP 共享、资金汇入卡农收款账户(gang 检出率 100%)
- 对抗变体:30% 欺诈采用 covert 高级伪装——环境信号全部正常化,只留一个隐蔽异常(时间节奏/资金行为),模拟黑产对抗升级
产出 → sequences.py · 170 万条事件流 + 资金网络
STAGE 4
特征工程 · 把行为压缩成模型能吃的数字
作用:原始事件流太稀疏,聚合为 26 个客户维度特征,分 8 组
- 标识/标签:customer_id、risk_label(6 类欺诈标签)
- 基础画像:年龄、收入、贷款金额、信用分
- 设备/IP/地理:模拟器、Root、网络类型、IP 属地匹配
- 申请行为:填表时长(欺诈秒填 <90s)、注册到申请间隔(养号 >90 天)
- 资金行为:放款到取现间隔(欺诈 <24h)、取现拆分笔数、违约标记
- 团伙信号:账户-设备共享数、账户-IP 共享数、汇入卡农账户
- 时序窗口:24h 同设备申请数、7 天登录熵、事件密度、平均事件间隔
产出 → feature_engine.py · 100,000 × 26 特征矩阵
STAGE 5
质量验证 · 用模型证明数据能打
作用:每个成品包必须过「体检 + 模型验证」双关,不合格不出厂
- 体检:每类欺诈的风险信号命中率逐项核对(如养号≥90天 100%、违约 100%)
- 模型验证:LightGBM 训练识别 AUC——0.5=瞎猜,0.8+=有实用价值
- 防泄漏:只用「申请时点」特征训练,排除放款后才知道的字段,与真实风控流程一致
- 交付:数据包含 DATA_DICTIONARY 字段字典 + 一键验证脚本 eval_client.py + 预跑报告
产出 → validate.py + train_eval.py · 出厂合格证
难度80《暗线-团伙洗钱》· 样例数据(前 8 行)
真实生成样本 · 红色为欺诈客户 · 字段节选
| customer_id | risk_label | age | credit_score | device | IP类型 | IP属地匹配 | 填表秒数 | 养号天数 | 取现间隔h | 设备共享 | IP共享 |
| C000001 | normal | 34 | 712 | 正常 | 住宅 | ✓ | 312 | 2 | — | 1 | 1 |
| C000002 | normal | 27 | 688 | 正常 | 住宅 | ✓ | 245 | 1 | — | 1 | 1 |
| C000003 | gang_fraud | 31 | 645 | 模拟器 | 代理 | ✗ | 48 | 1 | 6 | 7 | 23 |
| C000004 | normal | 42 | 751 | 正常 | 住宅 | ✓ | 380 | 1 | — | 1 | 1 |
| C000005 | normal | 29 | 702 | 正常 | 住宅 | ✓ | 198 | 3 | — | 1 | 1 |
| C000006 | identity_fraud | 25 | 690 | 新设备 | 住宅 | ✗ | 52 | 0 | 9 | 1 | 1 |
| C000007 | normal | 38 | 735 | 正常 | 住宅 | ✓ | 290 | 2 | — | 1 | 1 |
| C000008 | loan_fraud | 33 | 658 | 正常 | 住宅 | ✓ | 160 | 1 | — | 1 | 1 |
效果验证 · 模型区分欺诈的能力
LightGBM 在「申请时点」特征上训练 · 难度80 · 预跑结果
AUC 0.8506 · 难度越高伪装越深,检出率随之下降——这是真实对抗难度,不是刷出来的数据。包装贷/身份冒用检出率低,正是因为 covert 伪装变体只留一个隐蔽异常。