3. 数据源梳理:内部交易数据、用户行为数据、设备指纹数据、外部黑名单与征信数据

在支付风控体系中,数据是构建样本与特征的“原材料”。不同数据源在风险识别中扮演的角色差异显著:交易数据提供“发生了什么”,行为数据揭示“如何操作”,设备指纹锁定“从哪来”,外部数据则补充“这个人是谁”。本章将系统梳理这四类核心数据源的结构、关键字段、采集方式及在样本构建中的典型用途。

3.1 内部交易数据

内部交易数据是风控建模最基础、最核心的数据源,直接记录每一笔支付请求的金额、时间、渠道、对手方等要素。交易数据通常存储在关系型数据库(如 MySQL、PostgreSQL)或大数据平台(如 Hive、ClickHouse)中,以“交易流水表”为核心。

字段类别 典型字段 样本构建用途
交易标识 交易ID、订单号、商户号、支付渠道 唯一标识、关联外部数据
金额与时间 交易金额、币种、交易时间、结算时间 金额异常检测、时间序列特征
参与方 付款方ID、收款方ID、付款方账户类型 关联图谱、历史行为画像
状态与结果 交易状态(成功/失败/退款)、风控决策结果 标签定义(正负样本)
渠道与终端 支付方式(银行卡/余额/第三方)、终端类型 渠道偏好、设备关联
样本构建要点:交易数据中的“风控决策结果”字段是生成标签的关键来源。通常将“被风控拦截且确认为欺诈”的交易标记为正样本(风险样本),将“正常通过且无后续投诉”的交易标记为负样本(安全样本)。注意排除“人工审核通过但实际为欺诈”的脏数据。

3.2 用户行为数据

用户行为数据记录用户在支付前、支付中、支付后的操作序列,包括登录、浏览、点击、输入、退出等行为。这类数据通常以日志形式采集,存储在 Elasticsearch、Kafka 或 HDFS 中,具有高维、稀疏、时序性强的特点。

  • 登录行为:登录时间、登录 IP、登录设备、登录结果(成功/失败)、登录频次。
  • 浏览行为:页面停留时长、浏览商品/服务类型、点击路径、页面跳转序列。
  • 输入行为:输入速度、输入错误次数、复制粘贴行为、键盘/鼠标事件。
  • 退出行为:退出方式(正常退出/超时/强制关闭)、退出前操作。
特征工程价值:用户行为数据是构建“行为画像”和“行为序列特征”的核心原料。例如,通过计算“登录失败次数/总登录次数”得到登录异常率;通过分析“从登录到支付的时间间隔”识别机器人操作;通过“页面停留时长”判断用户是否熟悉操作流程。
用户行为数据采集与特征提取流程 原始行为日志 数据清洗 会话切分 特征提取 统计特征 序列特征 频域特征 异常特征 说明:统计特征包括均值、方差、最大值等;序列特征关注行为顺序与间隔;频域特征通过FFT提取周期性; 异常特征基于孤立森林或AutoEncoder检测行为模式偏离。

3.3 设备指纹数据

设备指纹数据用于唯一标识用户所使用的终端设备,是识别“设备农场”、模拟器攻击、设备篡改等风险场景的关键数据源。设备指纹通常由客户端SDK采集,通过服务端算法生成唯一标识(Device ID)。

采集维度 典型字段 风险识别价值
硬件信息 设备型号、CPU架构、内存大小、屏幕分辨率 识别模拟器(如分辨率异常)
系统信息 操作系统版本、内核版本、时区、语言 检测系统篡改(如root/越狱)
网络信息 IP地址、MAC地址、WiFi SSID、基站信息 关联地理位置、检测代理/VPN
应用信息 安装应用列表、应用签名、SDK版本 识别恶意应用、批量注册
传感器数据 加速度计、陀螺仪、磁力计 区分真实设备与模拟器
数据质量注意:设备指纹数据存在“指纹冲突”和“指纹漂移”问题。指纹冲突指不同设备生成相同指纹(通常由SDK算法缺陷导致);指纹漂移指同一设备在不同时间生成不同指纹(通常由系统升级或重置导致)。在样本构建时,建议对设备指纹进行“稳定性校验”,剔除指纹变化频率过高的设备。

3.4 外部黑名单与征信数据

外部数据是内部数据的重要补充,用于识别已知风险实体和评估用户信用水平。外部数据通常通过API接口、数据合作、第三方征信机构获取,具有覆盖广、更新快、标准化程度不一的特点。

  • 黑名单数据:
    • 设备黑名单:已知欺诈设备ID、模拟器设备指纹。
    • IP黑名单:代理IP、数据中心IP、已知攻击源IP。
    • 账户黑名单:被冻结账户、历史欺诈账户、羊毛党账户。
    • 手机号黑名单:虚拟运营商号段、一次性号码、黑产号码。
  • 征信数据:
    • 央行征信报告:信贷记录、逾期记录、查询次数。
    • 百行/朴道征信:互联网借贷、消费金融行为。
    • 多头借贷数据:同时在借平台数、近期申请次数。
    • 司法数据:失信被执行人、限制高消费、涉诉记录。
外部数据接入与特征融合架构 黑名单数据源 征信数据源 司法/工商数据 API网关 数据清洗 标准化 特征拼接与对齐 缺失值处理 特征存储(HBase/Redis)

3.5 多源数据关联与样本构建策略

在实际风控样本构建中,需要将上述四类数据源通过“用户ID”和“交易ID”进行关联,形成宽表特征矩阵。关联策略直接影响样本质量和模型效果。

关联维度 关联键 典型关联方式 注意事项
交易 + 行为 用户ID + 交易时间窗口 LEFT JOIN 行为日志表 时间窗口不宜过大(建议≤30分钟)
交易 + 设备 设备指纹ID INNER JOIN 设备指纹表 处理指纹冲突(取最新记录)
交易 + 外部黑名单 用户ID / 设备ID / IP LEFT JOIN 黑名单表 黑名单需按时间戳回溯
交易 + 征信 用户身份证号 LEFT JOIN 征信快照表 征信数据需脱敏处理
样本构建最佳实践:建议采用“时间穿越”策略——在构建特征时,只使用交易发生时刻之前的数据,避免未来信息泄露。例如,对于T日的交易样本,行为特征只统计T-1日及之前的数据,外部黑名单只使用T日之前已入库的记录。
-- 示例:多源数据关联SQL(伪代码)
CREATE TABLE risk_sample_wide AS
SELECT
    t.transaction_id,
    t.user_id,
    t.transaction_amount,
    t.transaction_time,
    b.login_count_1h,           -- 行为特征:过去1小时登录次数
    b.page_stay_avg_1h,         -- 行为特征:过去1小时平均停留时长
    d.device_risk_score,        -- 设备特征:设备风险评分
    d.is_emulator,              -- 设备特征:是否模拟器
    bm.is_ip_blacklisted,       -- 外部特征:IP是否在黑名单
    cr.credit_score,            -- 外部特征:征信评分
    CASE WHEN t.risk_result = 'blocked' THEN 1 ELSE 0 END AS label
FROM transaction_table t
LEFT JOIN behavior_table b
    ON t.user_id = b.user_id
    AND b.event_time BETWEEN t.transaction_time - INTERVAL '1 hour' AND t.transaction_time
LEFT JOIN device_table d
    ON t.device_id = d.device_id
LEFT JOIN blacklist_master bm
    ON t.ip_address = bm.ip_address
    AND bm.effective_date <= t.transaction_time
LEFT JOIN credit_report cr
    ON t.id_number = cr.id_number
    AND cr.snapshot_date = DATE(t.transaction_time);