2. 数据源接入与探查:常见授信数据源、数据质量探查、数据字典管理
授信决策引擎的底层燃料是数据。在构建任何特征之前,必须系统性地完成数据源接入与质量探查。本章聚焦三类核心任务:识别常见授信数据源的结构与价值、执行数据质量探查(缺失率、异常值、唯一值)、建立可维护的数据字典管理体系。
2.1 常见授信数据源全景
个人信贷场景中,数据源通常分为四大类:征信类、多头借贷类、电商消费类、运营商类。每类数据在特征工程中的角色不同,接入方式与探查重点也各有差异。
| 数据源类型 | 典型字段 | 特征工程价值 | 探查难点 |
|---|---|---|---|
| 征信(央行/百行) | 信贷记录、逾期历史、查询次数、担保信息 | 还款意愿与能力核心指标 | 缺失率高、更新滞后、字段标准化复杂 |
| 多头借贷 | 近7/30/90天申请机构数、放款机构数、拒绝次数 | 资金饥渴度与共债风险 | 数据时效性敏感、重复申请识别 |
| 电商消费 | 月均消费金额、消费类目、收货地址稳定性、退货率 | 收入稳定性与消费画像 | 数据稀疏、类目编码不一致 |
| 运营商 | 在网时长、通话活跃度、联系人稳定性、套餐金额 | 身份真实性、社交稳定性 | 数据量大、字段噪音多、隐私合规要求高 |
实战提示: 接入顺序建议优先征信与多头,这两类数据对风险区分度贡献最大;电商与运营商数据作为补充画像,在长尾客群中效果显著。
2.2 数据质量探查:缺失率、异常值、唯一值
数据质量探查是特征工程的“体检”环节。未经过探查的数据直接入模,会导致模型偏差、过拟合或线上效果崩塌。核心探查维度包括:
- 缺失率(Missing Rate):字段缺失比例。缺失率超过70%的字段通常需要剔除或做二值化标记。
- 异常值(Outlier):超出业务合理范围的值。例如年龄>120、消费金额为负数、申请次数超过1000次。
- 唯一值(Unique Count):字段中不同值的数量。唯一值过少(如性别)或过多(如用户ID)都会影响特征有效性。
以下是一个典型的数据质量探查报告片段(Python伪代码):
import pandas as pd
import numpy as np
def quality_report(df):
report = pd.DataFrame({
'字段名': df.columns,
'数据类型': df.dtypes.values,
'缺失率': (df.isnull().sum() / len(df)).values,
'唯一值数': [df[col].nunique() for col in df.columns],
'异常值标记': [
'是' if any((df[col] < 0).any() if np.issubdtype(df[col].dtype, np.number) else False) else '否'
for col in df.columns
]
})
return report
# 示例调用
# report = quality_report(loan_data)
# print(report[report['缺失率'] > 0.5]) # 输出高缺失字段
避坑提醒: 唯一值数不等于特征区分度。例如“手机号前7位”唯一值很多,但可能对风险无区分;而“近3个月逾期次数”唯一值少,却是强特征。探查时需结合业务含义判断。
2.3 数据字典管理:从混乱到有序
数据字典是特征工程的“说明书”。缺乏统一管理的数据字典会导致字段含义混淆、计算口径不一致、跨团队协作困难。一个标准的数据字典应包含以下要素:
| 字段名 | 中文含义 | 数据类型 | 取值范围 | 缺失处理策略 | 来源系统 | 更新频率 |
|---|---|---|---|---|---|---|
| appl_cnt_7d | 近7天申请机构数 | int | 0~50 | 缺失填充0 | 多头数据源 | T+1 |
| avg_consume_amt | 近3个月月均消费金额 | float | 0~100000 | 缺失填充中位数 | 电商数据源 | T+7 |
| net_age_days | 在网天数 | int | 0~10000 | 缺失填充-1 | 运营商数据源 | T+1 |
数据字典管理的最佳实践:
- 版本控制:每次字段变更(新增、修改口径、下线)都记录版本号与变更原因。
- 自动化校验:在数据接入管道中自动比对字典与实际字段,发现不一致时告警。
- 血缘追踪:记录每个特征字段从原始数据到衍生特征的完整计算链路。
核心原则: 数据字典不是一次性的文档,而是伴随特征工程全生命周期的活资产。建议使用YAML或JSON格式存储,便于程序化读取与版本管理。
2.4 数据源接入与探查流程总览
下图展示了从数据源接入到质量探查、再到数据字典落地的完整流程。该流程是后续特征衍生与特征筛选的基础。
2.5 数据探查常见陷阱与应对
在实际项目中,数据探查阶段容易踩入以下陷阱:
- 陷阱一:只看全局缺失率,忽略分段缺失。例如某个字段在好客户中缺失率5%,在坏客户中缺失率80%,直接填充均值会严重扭曲特征分布。应对策略:按目标变量分层计算缺失率。
- 陷阱二:异常值一刀切。例如将“近7天申请次数>20”直接剔除,但这类客户恰恰是高风险群体。应对策略:异常值单独编码为特征,而非简单删除。
- 陷阱三:唯一值过高直接丢弃。例如“设备ID”唯一值接近样本数,但经过聚合(如该设备关联的申请人数)后可能成为强特征。应对策略:先做聚合衍生,再评估唯一值。
实战技巧: 建立数据质量探查的自动化流水线,每次新数据源接入时自动生成探查报告,并对比历史基线。当缺失率或异常值比例出现显著波动时,触发人工审核。
完成数据源接入与质量探查后,特征工程团队将获得一份经过验证的“干净”数据资产,为后续的特征衍生与筛选奠定坚实基础。