2. 切片复盘核心概念:切片(Slice)的定义、时间窗口、特征快照、模型版本对齐

切片复盘是实时风控 Model Serving 中定位“线上为什么拒”或“分数为什么跳变”的核心手段。它本质上是将一次模型推理请求的输入、上下文、版本、结果在某个时间点完整“冻结”并持久化,供事后回溯分析。本章围绕四个核心概念展开:切片(Slice)、时间窗口、特征快照、模型版本对齐。

2.1 切片(Slice)的定义

在实时风控场景中,切片(Slice)是指一次模型推理请求在特定时间点的完整状态记录。它不是一个简单的日志行,而是一个包含以下维度的结构化数据单元:

维度 说明 示例
请求标识 全局唯一 ID,用于关联上下游 req_20250321_001234
入参快照 请求到达时的原始特征值 user_id, device_id, ip, amount
上下文特征 实时计算后的衍生特征 近1小时交易次数, 设备关联风险分
模型版本 推理时使用的模型标识 risk_model_v2.3.1
推理结果 模型输出分数、决策标签 score: 0.87, decision: reject
元数据 时间戳、耗时、节点信息 ts: 1711000000, latency: 45ms
关键原则:切片一旦生成,不可修改(immutable)。任何复盘分析都基于这个“冻结”的快照,避免因后续数据变更导致归因偏差。

2.2 时间窗口

时间窗口定义了切片所覆盖的上下文时间范围。在实时风控中,特征往往依赖过去一段时间内的行为聚合,时间窗口的选择直接影响特征的有效性和切片复盘的准确性。

  • 固定窗口(Fixed Window):如“过去 1 小时”、“过去 24 小时”。窗口边界固定,适合统计类特征(交易次数、金额总和)。
  • 滑动窗口(Sliding Window):以请求到达时刻为终点,向前滑动固定时长。适合实时性要求高的场景(最近 5 分钟登录失败次数)。
  • 会话窗口(Session Window):基于用户行为序列的天然边界(如一次支付流程)。适合行为序列模型。
窗口类型 适用场景 切片复盘注意事项
固定窗口 日累计、周累计统计 注意窗口对齐,避免跨天边界数据漂移
滑动窗口 实时行为检测(如短时高频) 确保窗口内事件顺序正确,防止乱序
会话窗口 支付、登录流程 会话 ID 必须唯一且可回溯
实践建议:切片复盘时,必须记录每个特征实际使用的窗口起止时间戳,而非仅记录窗口类型。这能有效排查因时钟偏差或数据延迟导致的特征计算错误。

2.3 特征快照

特征快照是切片中最核心的数据部分,它记录了模型推理时所有输入特征的最终值。特征快照必须包含:

  1. 原始特征:请求中直接携带的字段(如 IP、设备 ID、金额)。
  2. 衍生特征:经过实时计算引擎加工后的特征(如“近 1 小时该 IP 关联的账户数”)。
  3. 外部特征:从第三方服务或离线批处理拉取的特征(如“黑名单命中标记”)。
  4. 特征元数据:每个特征的计算时间、数据源、是否缺失、是否超时。
常见陷阱:很多复盘失败的原因是特征快照只记录了“最终值”,而没有记录“特征是否来自缓存”或“特征计算是否超时”。这会导致线上和复盘时的特征不一致,产生误判。

2.4 模型版本对齐

模型版本对齐是切片复盘中最容易被忽视但影响最大的环节。它确保复盘时使用的模型与线上推理时完全一致,包括:

  • 模型文件:算法、权重、预处理逻辑。
  • 特征工程代码:特征衍生逻辑的版本。
  • 后处理逻辑:分数映射、阈值、决策规则。
  • 运行时环境:依赖库版本、操作系统、硬件(CPU/GPU)。

以下 SVG 图展示了切片复盘的核心数据流与版本对齐关系:

切片复盘核心数据流与版本对齐 实时请求 特征计算引擎 模型推理服务 切片存储 复盘分析 模型版本仓库 版本对齐(模型文件 + 特征代码 + 环境) 版本对齐关键要素 模型文件哈希校验 | 特征工程代码版本 | 运行时依赖锁文件 后处理规则快照 | 推理硬件/软件环境记录

2.5 四个核心概念的关系

切片、时间窗口、特征快照、模型版本对齐并非孤立概念,它们共同构成一次完整的复盘单元:

  • 切片是载体,承载了所有复盘所需的数据。
  • 时间窗口定义了特征计算的上下文边界。
  • 特征快照记录了窗口内的特征最终值及其元数据。
  • 模型版本对齐确保复盘时的推理逻辑与线上一致。

以下 SVG 图展示四者之间的依赖关系:

切片复盘四核心概念关系 切片(Slice) 承载所有复盘数据 时间窗口 特征快照 模型版本对齐 复盘分析 定义特征上下文边界 记录特征最终值及元数据 确保推理逻辑一致 基于切片进行归因

2.6 切片复盘的典型流程

基于上述四个核心概念,一次完整的切片复盘通常包含以下步骤:

  1. 触发切片生成:在模型推理请求到达时,根据配置决定是否生成切片(全量采样或按规则采样)。
  2. 冻结时间窗口:记录每个特征计算时使用的窗口起止时间戳。
  3. 捕获特征快照:将原始特征、衍生特征、外部特征及其元数据一并持久化。
  4. 记录模型版本:记录推理时使用的模型文件哈希、特征工程代码版本、后处理规则版本。
  5. 存储切片:将切片写入持久化存储(如 HDFS、ClickHouse、S3)。
  6. 复盘分析:加载切片,对齐模型版本,重放推理过程,对比线上结果与复盘结果。
工程化要点:切片生成对性能有影响,建议采用异步写入 + 采样策略(如 1% 全量 + 100% 拒绝样本)。同时,切片存储建议按时间分区,便于快速检索。

2.7 本章小结