1. 课程导论:PSI漂移概念、规则引擎与Kafka结合的价值、课程目标与前置知识
1.1 什么是PSI漂移?——模型稳定性的核心指标
群体稳定性指标(Population Stability Index, PSI) 是衡量模型评分分布随时间变化程度的量化指标,广泛应用于信贷风控、反欺诈、营销响应等场景。PSI 通过比较模型在 期望(训练/基准)样本 与 实际(生产/当前)样本 上的分数分布差异,判断模型是否发生“漂移”。
PSI 计算公式:
PSI = Σ (Actual_i - Expected_i) × ln(Actual_i / Expected_i)
其中 i 为分数分箱序号,Expected_i 为基准样本在第 i 箱的占比,Actual_i 为当前样本在第 i 箱的占比。
PSI = Σ (Actual_i - Expected_i) × ln(Actual_i / Expected_i)
其中 i 为分数分箱序号,Expected_i 为基准样本在第 i 箱的占比,Actual_i 为当前样本在第 i 箱的占比。
| PSI 取值范围 | 漂移程度 | 建议动作 |
|---|---|---|
| PSI < 0.1 | 无显著漂移 | 模型可继续使用,定期监控 |
| 0.1 ≤ PSI < 0.25 | 轻度漂移 | 触发告警,排查特征分布变化 |
| PSI ≥ 0.25 | 严重漂移 | 立即告警,启动模型重训或回滚 |
PSI 漂移的常见诱因包括:客群结构变化、宏观经济波动、数据采集逻辑变更、特征工程失效等。若不及时检测,漂移将导致模型预测能力下降,直接造成业务损失。
1.2 规则引擎与Kafka结合的价值
传统 PSI 监控方案通常采用定时批处理(如每日跑脚本),存在 延迟高、扩展性差、难以实时告警 等痛点。将 规则引擎 与 Apache Kafka 结合,能够构建一套低延迟、高吞吐、可编排的实时漂移检测管道。
| 维度 | 传统批处理方案 | 规则引擎 + Kafka 方案 |
|---|---|---|
| 数据接入 | 离线文件导入 | Kafka 实时流式接入 |
| 计算模式 | T+1 定时计算 | 滑动窗口 + 事件驱动 |
| 告警延迟 | 小时级 ~ 天级 | 秒级 ~ 分钟级 |
| 规则编排 | 硬编码逻辑 | 规则引擎可视化编排 |
| 扩展性 | 单机瓶颈 | Kafka 分区 + 规则引擎分布式 |
核心价值总结: Kafka 提供高可靠、可重放的事件总线;规则引擎提供声明式规则定义与动态编排能力。两者结合使得 PSI 漂移检测从“事后复盘”升级为“实时感知”,大幅降低模型失效带来的业务风险。
1.3 课程目标与前置知识
课程目标
- 理解 PSI 漂移原理:掌握 PSI 计算公式、分箱策略、阈值设定方法。
- 掌握规则引擎核心概念:规则定义、条件编排、动作执行、规则优先级。
- 熟练使用 Kafka 流处理:生产者/消费者 API、Kafka Streams、窗口聚合。
- 构建端到端漂移告警系统:从数据接入、规则计算到告警通知的完整链路。
- 生产级优化与运维:性能调优、容错机制、监控告警。
前置知识要求
| 知识领域 | 具体要求 | 推荐学习资源 |
|---|---|---|
| Java 基础 | 熟悉面向对象编程、集合框架、多线程 | 《Java核心技术》 |
| Kafka 基础 | 了解 Topic、Partition、Consumer Group 概念 | Kafka 官方文档 |
| 规则引擎基础 | 了解 Drools / EasyRules 等基本用法 | Drools 官方指南 |
| 数据统计基础 | 理解分布、分箱、百分比计算 | 《统计学习方法》 |
注意: 本课程不从头讲解 Kafka 安装部署或 Java 语法基础。建议学员提前搭建好 Kafka 单机/集群环境,并具备基本的 Java 开发能力。课程中涉及的所有代码示例均基于 Java 11 + Kafka 3.x + Drools 7.x。
课程章节概览
- 课程导论:PSI漂移概念、规则引擎与Kafka结合的价值
- PSI 漂移检测原理与分箱策略详解
- Kafka 流处理基础与消息模型
- 规则引擎核心概念与 Drools 入门
- 规则引擎与 Kafka 集成架构设计
- 实时 PSI 计算规则编写
- 告警规则编排与动态更新
- 生产级部署与性能调优
- 案例实战:信贷评分卡漂移监控
- 课程总结与进阶方向