4、数据清洗与预处理:缺失值处理、异常值检测、数据标准化与归一化方法
在催收触达场景中,原始数据通常来自多个业务系统(贷前审批、贷中监控、历史催收记录),存在字段缺失、录入错误、量纲不一致等问题。若直接用于构建 Collection Score 模型,会导致评分偏差、触达策略失效。本章聚焦数据清洗与预处理的三个核心环节:缺失值处理、异常值检测、标准化与归一化。
4.1 缺失值处理
催收数据中常见的缺失字段包括:联系人数量、最近一次还款日期、收入证明、紧急联系人接通状态。缺失比例超过 60% 的字段建议直接剔除;缺失比例在 5%–60% 之间的字段需采用插补或模型预测填充。
| 缺失比例 | 推荐策略 | 催收场景示例 |
|---|---|---|
| < 5% | 删除缺失记录 / 均值填充 | 年龄、性别(少量缺失直接删除) |
| 5% – 30% | 中位数 / 众数填充 | 收入等级(用同客群中位数填充) |
| 30% – 60% | KNN 插补 / 回归预测 | 最近联系时间(用相似逾期天数样本预测) |
| > 60% | 直接剔除字段 | 次要联系人关系(缺失过多无建模价值) |
实战建议:催收数据中“最近一次还款日期”缺失时,不要简单填充为“无”,应结合逾期天数构造“还款间隔缺失”标志位,保留缺失信息作为独立特征。
4.2 异常值检测
异常值会严重扭曲 Collection Score 的分数分布,导致高逾期客群被误判为低风险。催收场景中常见的异常值包括:联系次数异常高(如单日拨打 200 次)、逾期天数为负、收入金额为 0 或负数。
推荐使用 IQR(四分位距) 和 Z-Score 两种方法联合检测:
- IQR 法:适用于偏态分布(如联系时长、逾期金额)。定义 Q1 – 1.5×IQR 和 Q3 + 1.5×IQR 为正常区间,超出即视为异常。
- Z-Score 法:适用于近似正态分布(如年龄、信用分)。|Z| > 3 的样本标记为异常。
注意:不要直接删除所有异常值。催收场景中“极端高联系次数”可能对应失联后紧急催收的真实行为,应结合业务规则判断是否保留。
4.3 数据标准化与归一化
Collection Score 模型通常融合多个量纲不同的特征(如逾期天数 0–365、联系次数 0–200、信用分 300–850)。若不进行标准化,量级大的特征会主导模型权重,导致评分失真。
4.3.1 归一化(Min-Max Scaling)
将数据缩放到 [0, 1] 区间,适用于分布有明确上下界的特征(如年龄、逾期天数)。公式:
X_norm = (X - X_min) / (X_max - X_min)
4.3.2 标准化(Z-Score Scaling)
将数据转换为均值为 0、标准差为 1 的分布,适用于无明显边界或存在异常值的特征(如联系时长、收入)。公式:
X_std = (X - μ) / σ
| 方法 | 适用场景 | 催收特征示例 | 注意事项 |
|---|---|---|---|
| Min-Max 归一化 | 特征有明确上下界,无极端异常值 | 逾期天数(0–365)、年龄(18–70) | 新数据超出原范围时需重新计算 min/max |
| Z-Score 标准化 | 特征分布近似正态,或存在合理异常值 | 联系时长、历史还款金额 | 不改变数据分布形状,保留异常信息 |
| Robust Scaling | 特征存在较多异常值 | 单日联系次数(存在极端拨打行为) | 使用中位数和 IQR,对异常值不敏感 |
实战技巧:在催收触达场景中,建议对“逾期天数”使用 Min-Max 归一化,对“联系时长”使用 Z-Score 标准化。若同时使用多个模型(如逻辑回归 + 树模型),标准化对逻辑回归影响更大,树模型可跳过此步。
4.4 数据清洗完整流程
在实际催收触达项目中,建议按以下顺序执行数据清洗与预处理:
- 字段筛选:剔除缺失率 > 60% 的字段,保留业务强相关字段。
- 缺失值填充:按缺失比例选择均值/中位数/KNN 插补,并生成缺失标志位。
- 异常值检测:使用 IQR + Z-Score 联合标记,结合业务规则决定删除或保留。
- 标准化/归一化:根据特征分布选择 Min-Max、Z-Score 或 Robust Scaling。
- 数据验证:检查处理后数据的分布、相关性,确保无信息泄露。
案例:某催收项目原始数据包含“最近联系时间”字段,缺失率 45%。使用 KNN 插补(k=5)后,模型 AUC 从 0.72 提升至 0.78;同时生成“联系时间缺失标志”作为独立特征,进一步将 AUC 提升至 0.80。