3. 数据质量审计:数据完整性、准确性、一致性、时效性的审计方法与常见问题
数据质量,说白了就是模型的命根子。我在风控这行干了十几年,见过太多模型因为数据问题翻车。你模型再牛,算法再先进,数据是垃圾,出来的结果就是垃圾。今天咱们就聊聊数据质量审计的四个核心维度:完整性、准确性、一致性、时效性。
3.1 数据完整性审计
完整性,就是该有的数据有没有。我遇到过最离谱的一次,某分行上报的客户数据,身份证号字段空了30%。你想想看,这模型还怎么跑?
审计方法
- 空值率检查:对每个关键字段统计空值比例。我个人习惯设定阈值,比如身份证号空值率超过5%就要预警。
- 必填字段校验:检查业务规则中定义的必填字段是否都有值。比如贷款申请单,借款人姓名、金额、期限这些必须填。
- 记录数核对:源系统记录数与目标系统记录数是否一致。我曾经发现过ETL过程中丢数据的案例,整整少了2万条记录。
常见问题:
- 历史数据迁移时字段映射丢失
- 前端录入界面未做非空校验
- 批量导入时格式错误导致数据被丢弃
3.2 数据准确性审计
准确性,就是数据对不对。嗯,这里要注意,完整不等于准确。比如身份证号填了18个1,这数据是完整的,但准确吗?显然不。
审计方法
- 格式校验:身份证号是否符合18位规则,手机号是否为11位数字,邮箱是否包含@符号。
- 逻辑校验:比如贷款金额不能为负数,年龄不能超过150岁。我在项目中遇到过一笔贷款金额为0的记录,明显是录入错误。
- 交叉验证:将数据与权威源系统比对。比如客户收入数据,可以跟税务系统或社保系统做交叉验证。
避坑指南:我曾经在审计一个零售信贷模型时,发现客户年龄字段有大量超过100岁的记录。查了半天,原来是前端日期控件默认值没清空,用户没改就直接提交了。所以,前端校验和后端校验都得做,缺一不可。
3.3 数据一致性审计
一致性,就是同一个数据在不同系统里得对得上。你想想看,核心系统里客户叫张三,信贷系统里叫张三四,这模型怎么认?
审计方法
- 跨系统比对:同一客户在不同系统中的姓名、证件号、联系方式是否一致。
- 字段值域一致性:比如性别字段,A系统用0/1表示,B系统用M/F表示,需要确认映射关系是否正确。
- 时间戳一致性:同一笔交易的创建时间、更新时间在不同系统中是否一致。
| 审计项 | 源系统A | 源系统B | 是否一致 |
|---|---|---|---|
| 客户姓名 | 张三 | 张三 | ✅ |
| 证件号 | 110101199001011234 | 110101199001011235 | ❌ |
| 贷款金额 | 100,000.00 | 100,000.00 | ✅ |
注意事项:一致性审计不能只看字段值,还要看业务含义。比如两个系统都叫"贷款余额",但一个包含利息,一个不含利息,那比对结果就没意义。
3.4 数据时效性审计
时效性,就是数据够不够新。风控模型讲究的是"实时"二字,你用上个月的数据去判断今天的风险,那跟算命有什么区别?
审计方法
- 数据新鲜度检查:查看数据仓库中最新数据的日期,与当前日期对比。我建议T+1的数据延迟是底线,关键指标最好实时更新。
- 批处理时间检查:ETL作业是否按时完成,是否有延迟。我曾经发现某个批处理作业因为资源竞争,每天延迟6小时,导致模型用的都是前一天的数据。
- 数据有效期检查:某些数据有有效期,比如征信报告通常要求3个月内有效。超过有效期的数据不能用于模型决策。
常见问题:
- 源系统数据更新后,目标系统未及时同步
- 批处理作业失败后未触发告警,导致数据停滞多日
- 数据缓存策略不合理,导致模型读取到过期数据
3.5 数据质量审计框架
下面这张图是我自己总结的数据质量审计框架,涵盖了从数据采集到模型应用的完整链路。说白了,就是四个维度贯穿始终,每个环节都不能掉链子。
3.6 数据质量审计报告模板
审计完了,得写报告。我习惯用下面这个模板,简单明了,老板一看就懂。
数据质量审计报告(示例)
审计日期:2025-01-15
审计范围:客户信息表、贷款申请表、还款记录表
1. 完整性审计结果
- 客户信息表:身份证号空值率 3.2%(阈值5%,通过)
- 贷款申请表:贷款用途字段空值率 12.5%(阈值5%,未通过)
- 还款记录表:记录数核对一致(通过)
2. 准确性审计结果
- 身份证号格式校验:异常记录 156 条(占比0.8%)
- 贷款金额逻辑校验:负数记录 23 条(已标记为异常)
- 交叉验证:收入数据与税务系统一致率 97.3%
3. 一致性审计结果
- 跨系统客户姓名比对:不一致记录 89 条(占比0.5%)
- 字段值域映射:性别字段映射关系正确(通过)
4. 时效性审计结果
- 数据新鲜度:最新数据日期 2025-01-14(延迟1天,通过)
- 批处理作业:昨日作业延迟 2 小时(需优化)
5. 整改建议
- 贷款用途字段:前端增加非空校验
- 身份证号异常记录:安排人工核查
- 跨系统姓名不一致:排查数据同步逻辑
个人经验:数据质量审计不是一次性工作,要建立常态化机制。我建议每个月做一次全面审计,每周做一次快速检查。发现问题及时整改,别等到模型上线了才发现数据有问题,那时候就晚了。
好了,数据质量审计这块就聊到这儿。记住四个维度:完整性、准确性、一致性、时效性。每个维度都有对应的审计方法和常见问题,你在实际项目中可以对照着来。数据质量过关了,模型才有意义。