3、数据采集与整合:内部数据源、外部数据源与ETL流程
催收模型的特征工程始于数据。原始数据分散在多个异构系统中,必须经过系统化的采集、清洗与整合,才能形成可供建模使用的宽表。本章聚焦于内部数据源(还款记录、申请信息)、外部数据源(征信、多头借贷)以及数据仓库搭建与ETL流程,构建催收特征的数据底座。
3.1 内部数据源
内部数据是催收模型最核心、最可控的特征来源,主要包括以下两类:
| 数据类别 | 关键字段 | 特征衍生方向 |
|---|---|---|
| 还款记录 | 应还日、实还日、应还金额、实还金额、逾期天数、还款渠道 | 还款意愿评分、逾期模式识别、还款能力指数 |
| 申请信息 | 年龄、收入、职业、学历、居住地、联系人信息 | 人口统计学画像、稳定性评分、欺诈风险标记 |
| 历史催收记录 | 催收时间、催收方式、催收人员、客户承诺、承诺履约情况 | 催收响应度、承诺可信度、最佳联系时段 |
实践要点:还款记录中的“逾期天数”是催收模型最基础的标签来源。建议按合同维度汇总,同时保留每期还款的时间序列结构,以便提取趋势类特征(如逾期天数是否逐期恶化)。
3.2 外部数据源
外部数据弥补了内部数据的盲区,尤其在评估借款人当前负债水平和信用环境方面不可或缺。
3.2.1 征信数据
征信报告提供借款人跨机构的信用历史,核心字段包括:
- 信贷记录:贷款笔数、信用卡张数、授信总额、已用额度、逾期记录
- 查询记录:近1/3/6/12个月机构查询次数(硬查询)
- 公共记录:法院执行信息、欠税记录、行政处罚
3.2.2 多头借贷数据
多头借贷指借款人在多个平台同时申请或持有贷款,是逾期风险的重要预警信号。常用指标包括:
- 多头平台数:近7天/30天/90天申请平台数量
- 共债指数:当前在贷平台数 / 总授信机构数
- 借贷密集度:单位时间内的申请次数(如日申请≥3次标记为异常)
合规提醒:外部数据采集必须遵循《个人信息保护法》及征信业相关法规。征信数据需通过持牌机构查询,多头借贷数据应使用脱敏后的聚合指标,避免采集具体平台名称。
3.3 数据仓库搭建与ETL流程
数据仓库是特征工程的存储与计算中枢。ETL(Extract, Transform, Load)流程将原始数据转化为结构化、可复用的特征宽表。
3.3.1 数据仓库分层架构
推荐采用经典的四层架构,各层职责清晰,便于追溯与复用:
3.3.2 ETL核心流程
ETL流程是数据从源系统进入数据仓库的完整链路,每个环节都直接影响特征质量:
- Extract(数据抽取):
- 内部数据:通过JDBC/API直连业务库,采用增量抽取(基于时间戳或CDC)
- 外部数据:通过SFTP/API获取文件或接口响应,校验数据完整性
- Transform(数据转换):
- 清洗:处理缺失值(填充/剔除)、异常值(截断/标记)、重复记录(去重)
- 标准化:统一日期格式(YYYY-MM-DD)、金额单位(分转元)、编码映射
- 衍生:计算基础指标(如逾期天数、还款间隔、查询频率)
- Load(数据加载):
- 采用分区表策略(按日期/客户ID哈希分区),提升查询性能
- 加载后执行数据质量校验:记录数比对、关键字段非空率、分布合理性
3.3.3 ETL调度与监控
| 环节 | 工具/技术 | 监控指标 |
|---|---|---|
| 任务调度 | Airflow / DolphinScheduler | 任务成功率、执行时长、依赖等待时间 |
| 数据质量 | Great Expectations / 自定义规则 | 字段空值率、唯一值比例、值域范围 |
| 异常告警 | Prometheus + Alertmanager | 数据延迟超过阈值、加载行数波动>20% |
特征工程前置条件:ETL流程输出的DWS层应包含以下基础特征宽表——
customer_daily_agg(客户日汇总)、contract_monthly_agg(合同月汇总)、external_credit_snapshot(外部征信快照)。这三个表是后续特征衍生的起点。
3.4 数据整合策略
内部与外部数据在整合时需解决两个核心问题:身份匹配与时间对齐。
- 身份匹配:以内部客户ID为主键,通过身份证号、手机号、设备指纹等关联外部数据。建议建立统一的客户标识映射表(ID Mapping),避免多源数据关联错误。
- 时间对齐:外部数据(如征信查询日期)与内部数据(如还款日)的时间窗口必须一致。特征提取时,以“观察点日期”为基准,只使用该日期之前的数据,防止未来信息泄露。
常见陷阱:在整合多头借贷数据时,容易将“当前查询时间”与“贷款申请时间”混淆。务必使用数据源提供的“数据产生时间”而非“数据入库时间”作为时间戳,否则可能引入未来信息。