4. 数据准备

授信策略仿真与回放能否可信,首先取决于数据准备是否严谨。很多团队把精力放在模型与规则上,却忽略了数据口径、时间边界和标签定义,最终导致回放结果“看起来很美”,上线后却严重偏离。本章围绕历史数据来源、数据清洗、缺失值处理、时间切片、样本选择与标签定义六个环节,给出可落地的工程方法。

一、核心原理:数据准备决定回放的可信边界

授信策略回放的本质,是用历史时点的客户信息,重演当时的审批决策,并观察后续表现。因此数据准备必须满足三个原则:时点一致性、口径一致性、可追溯性。时点一致性要求任何特征只能使用决策时点之前可获得的数据;口径一致性要求历史数据与当前生产数据的字段含义、计算逻辑一致;可追溯性要求每个样本都能回溯到原始申请、原始征信报告和原始决策记录。

数据准备不是简单的“取数+清洗”,而是对业务时间轴的一次重建。时间轴错了,后续所有仿真都失去意义。

二、历史数据来源与数据清洗

历史数据通常来自四类系统:申请与审批系统、核心放款与还款系统、征信与三方数据平台、人工调查与影像资料。建议按“申请主键+客户主键+时间戳”建立宽表,并保留原始快照。

数据域 典型字段 常见问题 清洗动作
申请信息 申请时间、金额、期限、渠道 重复申请、时间格式混乱 去重、统一时区与格式
客户信息 年龄、职业、收入、地区 单位不统一、枚举值漂移 映射码表、异常值截断
征信数据 查询次数、逾期记录、负债 报告版本差异、字段缺失 版本对齐、缺失标记
表现数据 放款、还款、逾期、结清 状态更新延迟、口径不一 按观察期统一口径

清洗时建议保留“清洗前—清洗后—规则编号”三列日志,便于审计。例如:

rule_id: R012
field: monthly_income
action: clip_upper
threshold: 500000
reason: 超过阈值视为录入错误
affected_rows: 128

三、缺失值处理与时间切片

缺失值不能一律填充。应先区分“业务上不存在”“未采集”“采集失败”“真实为空”四类。对于征信查询次数缺失,若因未授权导致,应单独标记为“无征信”,而不是填0。常用策略包括:缺失指示变量、中位数/众数填充、模型预测填充、直接剔除。建议在回放中保留缺失指示变量,因为缺失本身可能携带风险信息。

时间切片是回放的关键。常见切片方式有:按自然月、按观察窗口、按决策时点滚动。例如,以每月最后一天为决策时点,使用此前12个月表现定义标签,使用此前6个月行为构造特征。切片时必须避免“未来信息泄露”。

决策时点 T:2024-06-30
特征窗口:2023-12-31 ~ 2024-06-30
表现窗口:2024-07-01 ~ 2024-12-31
标签定义:表现窗口内是否发生M1+逾期
建议为每个样本生成 feature_start、feature_end、decision_time、performance_start、performance_end 五个时间戳,任何特征计算都必须落在 feature 窗口内。

四、样本选择与标签定义

样本选择要明确总体:是全部申请、通过申请、放款客户,还是特定渠道客户。回放策略时,通常使用“通过且放款”样本评估风险,使用“全部申请”样本评估通过率与收益。若要做拒绝推断,还需对拒绝样本进行加权或推断。

标签定义必须与业务目标一致。常见标签包括:FPD(首次还款逾期)、M1+、M3+、坏账、提前结清、复贷。定义时要明确观察期、表现期、逾期天数口径和结清状态。例如:

  • FPD30:首期还款日逾期超过30天。
  • M1+:任一账期逾期超过30天。
  • 坏账:逾期超过90天或核销。
  • 观察期:放款后前3个月;表现期:放款后第4至12个月。
误区:用当前最新标签回测历史策略。若标签包含决策时点之后才发生的信息,回放结果会严重高估或低估策略效果。必须严格按时间切片构造标签。

五、案例与复盘

某消费金融团队回放一套新审批规则,发现通过率提升8%,但坏账率下降。复盘发现:标签使用了“当前是否结清”,而历史样本中大量客户在决策时点后已结清,导致好坏定义被未来信息污染。修正后,按决策时点后12个月表现重新定义标签,通过率提升仅2%,坏账率略有上升。该案例说明:数据准备阶段的时间边界比模型本身更关键。

建议在数据准备完成后,输出一份《数据准备说明书》,包含数据来源、清洗规则、缺失处理、时间切片、样本口径、标签定义和已知限制。该说明书应作为回放报告的附件,确保策略、风险、审计三方对数据口径达成一致。

数据准备的目标不是“数据干净”,而是“数据在业务时间轴上可解释、可复现、可审计”。