1. 课程导论:什么是特征服务、为什么样本偏差是特征服务中的核心问题、课程目标与前置知识
1.1 什么是特征服务
特征服务(Feature Service)是机器学习基础设施中负责特征生产、存储、分发与在线计算的中间层平台。它将离线训练与在线推理之间的特征逻辑统一管理,使模型团队能够以服务化方式获取实时特征,而无需关心底层数据管道与存储引擎的细节。
一个典型的特征服务架构包含以下核心组件:
| 组件 | 职责 | 典型技术选型 |
|---|---|---|
| 特征存储 | 统一存储离线/在线特征数据,支持低延迟读取 | Redis、Feast、ByteHouse |
| 特征计算引擎 | 执行特征变换、聚合、时间窗口计算 | Flink、Spark、ByteFUSE |
| 特征注册中心 | 管理特征定义、版本、血缘与元数据 | Feast Registry、自研元数据中心 |
| 在线服务网关 | 接收推理请求,组装特征并返回 | gRPC、RESTful API |
| 监控与告警 | 追踪特征延迟、缺失率、分布漂移 | Prometheus + Grafana |
关键认知: 特征服务不是简单的"特征缓存",而是连接离线训练世界与在线推理世界的桥梁。离线特征与在线特征之间的任何不一致,都会直接导致样本偏差。
1.2 为什么样本偏差是特征服务中的核心问题
样本偏差(Sample Skew / Data Skew)在特征服务语境下,特指离线训练样本与在线推理请求之间特征分布的系统性差异。这种偏差一旦进入生产环境,会导致模型预估结果与真实表现严重偏离,造成业务损失。
特征服务中样本偏差的主要来源可归纳为以下四类:
- 时间窗口偏差:离线特征使用历史数据计算,在线特征使用实时数据计算,两者时间窗口不一致。
- 特征计算逻辑偏差:离线特征由批处理引擎(Spark)计算,在线特征由流处理引擎(Flink)计算,代码实现存在细微差异。
- 数据缺失处理偏差:离线训练时对缺失值采用全局填充策略,在线推理时因实时数据延迟导致填充策略不同。
- 特征版本偏差:离线训练使用旧版本特征,在线服务已升级到新版本特征,两者分布不一致。
| 偏差类型 | 离线表现 | 在线表现 | 影响程度 |
|---|---|---|---|
| 时间窗口偏差 | 使用 T-1 全量数据 | 使用近 5 分钟实时数据 | 高 |
| 计算逻辑偏差 | Spark SQL 聚合 | Flink 窗口聚合 | 极高 |
| 缺失处理偏差 | 全局均值填充 | 零值填充或跳过 | 中 |
| 特征版本偏差 | 特征 v1.0 | 特征 v1.1 | 高 |
⚠️ 生产事故警示: 某头部电商平台因特征服务中时间窗口偏差未检测,导致 CTR 模型在线预估偏差达 23%,持续 4 小时未被发现,造成数百万广告收入损失。样本偏差检测不是"锦上添花",而是特征服务的"安全底线"。
1.3 课程目标与前置知识
课程目标
本课程旨在帮助特征平台工程师与机器学习工程师建立一套可落地、可自动化、可扩展的样本偏差检测体系。完成本课程后,你将能够:
- ✅ 理解特征服务中样本偏差的 6 种常见模式及其根因
- ✅ 设计并实现离线-在线特征分布对比的检测流水线
- ✅ 使用统计检验(KS 检验、PSI、JS 散度)量化偏差程度
- ✅ 构建实时监控仪表盘,自动触发偏差告警
- ✅ 制定偏差修复策略,形成检测-告警-修复的闭环
前置知识要求
| 领域 | 具体要求 | 推荐学习资源 |
|---|---|---|
| 机器学习基础 | 理解特征工程、模型训练/推理流程、过拟合与分布漂移概念 | 《机器学习实战》第 2~5 章 |
| 数据工程基础 | 熟悉批处理(Spark)与流处理(Flink)基本概念 | 《数据密集型应用系统设计》第 10~12 章 |
| 编程能力 | 熟练使用 Python,了解 SQL 与基本统计学知识 | Python 数据分析(Pandas + NumPy) |
| 特征平台认知 | 了解特征存储、特征注册、在线服务的基本架构 | Feast 官方文档 / Tecton 架构白皮书 |
💡 学习建议: 本课程包含大量实操代码与配置示例。建议你准备一个 Python 3.8+ 环境,并安装 scipy、pandas、numpy、scikit-learn 等常用库。每章末尾的"动手练习"部分强烈建议亲自完成。
课程章节概览
本课程共 30 章,分为四个模块:
- 基础篇(第 1~6 章):样本偏差理论、特征服务架构、检测指标与统计方法
- 检测篇(第 7~16 章):离线-在线对比流水线、实时监控、自动化告警实现
- 实战篇(第 17~24 章):电商 CTR、金融风控、推荐系统等场景的偏差检测案例
- 进阶篇(第 25~30 章):大规模特征服务偏差检测、A/B 测试与偏差修复策略