数据准备与预处理:数据采集规范、缺失值处理、异常值识别与剔除、时间序列对齐、数据分区
数据准备与预处理是模型验证异常波动复盘的基石。原始数据往往存在采集口径不一致、缺失、异常、时间错位等问题,若直接用于复盘分析,极易导致归因偏差或误判。本章将系统讲解数据准备阶段的五大核心环节,确保复盘结论建立在干净、对齐、可复现的数据基础之上。
3.1 数据采集规范
数据采集规范决定了后续所有分析工作的上限。在模型验证异常波动复盘场景中,数据采集需遵循以下原则:
- 统一数据字典:所有字段名称、类型、长度、枚举值必须由数据治理团队统一维护,避免因字段歧义导致归因错误。
- 明确采集频率与时间戳:区分业务时间(transaction_time)与入库时间(etl_time),复盘时以业务时间为准。
- 版本控制:每次模型迭代或特征工程变更后,数据采集脚本应同步版本化,确保可回溯。
- 采集链路监控:对数据源、采集通道、ETL 任务设置告警,一旦出现数据延迟或丢失,立即标记并记录。
实践建议:在复盘报告中,数据采集部分应至少包含“数据源清单”、“采集时间窗口”、“版本号”三要素,便于后续审计。
3.2 缺失值处理
缺失值在风控模型中普遍存在,处理不当会扭曲波动归因。根据缺失机制,采用不同策略:
| 缺失类型 | 定义 | 推荐处理方式 | 复盘场景注意事项 |
|---|---|---|---|
| 完全随机缺失(MCAR) | 缺失与观测数据无关 | 直接删除或均值/中位数填充 | 需确认删除后样本量仍满足统计检验要求 |
| 随机缺失(MAR) | 缺失与其他观测变量相关 | 多重插补(MICE)或模型预测填充 | 插补模型需独立验证,避免信息泄露 |
| 非随机缺失(MNAR) | 缺失与缺失值本身相关 | 敏感性分析 + 业务规则填充 | 必须记录填充逻辑,作为复盘归因的潜在因素 |
关键提醒:在异常波动复盘中,缺失率突然升高本身可能就是波动原因。建议将“缺失率变化”作为独立特征纳入复盘分析。
3.3 异常值识别与剔除
异常值识别需区分“业务真异常”与“数据质量异常”。前者可能是欺诈或极端风险事件,后者才是需要剔除的脏数据。
3.3.1 常用识别方法
- 统计法:Z-score(|Z|>3)、IQR(Q1-1.5*IQR 或 Q3+1.5*IQR)
- 模型法:孤立森林(Isolation Forest)、LOF(Local Outlier Factor)
- 业务规则法:如年龄>120岁、交易金额为负数等
3.3.2 剔除原则
- 先标记,后剔除:保留原始数据,新增异常标记字段。
- 分层剔除:按时间窗口、客群、产品线分别计算阈值,避免全局阈值误杀。
- 记录剔除比例:若剔除比例超过 5%,需评估是否因数据采集或特征工程异常导致。
复盘案例:某信贷模型在 2024Q2 出现坏账率飙升,初步归因为模型失效。经异常值排查发现,某第三方数据源在 4 月 15 日返回了全量空值,导致模型输出极端分数。剔除该批次数据后,模型表现恢复正常。
3.4 时间序列对齐
时间序列对齐是异常波动复盘中极易出错但至关重要的环节。模型输入特征、标签、外部宏观指标往往来自不同时间系统,必须统一对齐。
3.4.1 对齐要点
- 统一时间基准:所有数据以业务发生时间(而非入库时间)为基准。
- 滞后窗口对齐:特征必须使用标签时刻之前的数据,避免未来信息泄露。
- 频率重采样:日频、周频、月频数据需统一为同一频率,常用方法为向前填充(forward fill)。
- 时区处理:涉及跨时区业务时,统一转换为 UTC 或业务所在地时区。
检查清单:每次复盘前,请确认特征时间戳 ≤ 标签时间戳,且外部指标时间戳与标签时间戳对齐。
3.5 数据分区(训练/验证/测试)
数据分区是模型验证的基础,在异常波动复盘中,分区策略直接影响归因结论的可靠性。
3.5.1 分区原则
| 分区 | 用途 | 在复盘中的角色 | 常见比例 |
|---|---|---|---|
| 训练集 | 模型参数学习 | 提供基准表现分布 | 60% |
| 验证集 | 超参数调优 & 模型选择 | 监控调优过程中的波动 | 20% |
| 测试集 | 最终泛化能力评估 | 复盘时作为“未见数据”参考 | 20% |
3.5.2 时间序列数据分区特殊要求
对于时间序列数据,不能使用随机划分,必须按时间顺序分区:
3.5.3 复盘场景下的分区策略
- 滚动窗口分区:对于持续监控的模型,采用滚动时间窗口(如最近 6 个月训练,最近 1 个月验证,最近 1 周测试)。
- 保留波动期数据:若已知某段时间存在异常波动,应将其单独划入测试集,用于验证模型对异常事件的鲁棒性。
- 禁止数据泄露:任何分区都不能包含未来信息。在复盘时,需检查特征工程是否无意中使用了未来数据。
复盘检查项:在异常波动复盘报告中,必须明确标注数据分区的时间范围、分区比例、以及是否包含已知波动期。这是判断归因结论是否可靠的基础。
3.6 数据准备阶段常见问题与避坑
| 常见问题 | 后果 | 解决方案 |
|---|---|---|
| 采集口径不一致 | 归因时无法区分是模型问题还是数据问题 | 建立数据字典并定期审计 |
| 缺失值填充未记录 | 复盘时无法复现原始分布 | 所有填充操作写入数据血缘日志 |
| 异常值剔除比例过高 | 样本代表性下降,归因偏差 | 设置剔除比例告警阈值(如 5%) |
| 时间对齐忽略时区 | 跨天数据错位,波动归因错误 | 统一使用 UTC 时间戳 |
| 时间序列随机分区 | 未来信息泄露,模型表现虚高 | 强制按时间顺序分区 |
最终提醒:数据准备不是一次性工作。在异常波动复盘中,每次发现新的波动原因,都应回溯数据准备阶段,检查是否存在数据质量问题被遗漏。数据干净,复盘才能精准。