M72:非 LLM 决策任务的规则与统计 Baseline
Baseline 是与部署任务和正确切分对齐的最简单可运行参照,它揭示数据本身、规则和统计信号能做到什么,也为复杂模型提供最低比较标准。
内容类型:预习教材(不代表已完成)
日期:2026-11-03
阶段:P1 · AI Model Engineering 90
周次:W11
节奏:周二最小实现
状态:教材已备;学习未完成
标签:baselinerulesstatisticsanomaly-scorereproducibility
一句话定义
Baseline 是与部署任务和正确切分对齐的最简单可运行参照,它揭示数据本身、规则和统计信号能做到什么,也为复杂模型提供最低比较标准。
学习目标
- 为 M71 所选任务实现或手算一个核心 baseline。
- 让 baseline 只使用预测时点可见的信息。
- 输出连续 score 与明确阈值分离,便于后续比较。
- 记录输入、公式和失败状态,不追求“看起来先进”。
核心知识
1. 三类任务的最小 baseline
若选择交易图异常,可用入度/出度、独立对手数、短时金额突增、交易循环或新邻居比例构成规则分数。例如把每项标准化后加权,但权重必须透明。若选择时间序列,可用最后值、移动平均、季节性 naive 或简单指数平滑。若选择排序,可用单个业务特征排序、BM25/相似度,或 logistic score。
Baseline 不必差。若简单规则已在目标区间稳定工作,复杂模型必须证明额外收益足以覆盖维护、延迟与解释成本。
2. Score 与 decision 分离
模型/规则先产生连续风险或相关性 score,决策层再根据阈值、容量和错误成本决定动作。把阈值写死在特征逻辑里,会让后续无法画 precision-recall 或调整调查容量。对排序任务,score 直接决定候选顺序,评估应按每个 query 计算 top-K 表现。
3. 训练统计只能来自训练窗
异常分数常需要均值、标准差、分位数或历史频率。这些统计只能用训练期/该实体预测时点之前的数据计算。全局未来分位数会把后续分布变化泄漏回过去。冷启动实体没有历史时,应有显式 fallback,而不是静默用未来数据填补。
4. Baseline 的价值在可诊断
每个分数组件应能单独查看,缺失数据要有状态。某账户分数高,是因为金额突增还是对手异常?某时序预测失败,是转折、季节变化还是缺测?可诊断性帮助 M73 判断神经模型究竟学习了新增结构,还是只复刻最显眼规则。
机制与推导
以交易图异常为例,可定义:
score = w1 * robust_z(log1p(out_amount_24h))
+ w2 * new_counterparty_ratio
+ w3 * cycle_indicator
robust_z 的中位数和尺度只从训练窗估计。分数先保留连续值,再在验证集上探索阈值。此公式只是结构示例,不代表合理权重;若选择其他任务,应替换为相应核心计算。
时序 baseline 可写 ŷ(t+h)=y(t) 或同季节位置值;排序 baseline 可写 score(q,d)=business_priority(d)。关键是输入时间边界、缺失处理和指标一致。
最小练习或观察步骤
- 准备 8~20 条合成样本,明确训练/测试边界。
- 选最多三个可解释特征或一个 naive 公式。
- 手算至少一个样本,确认单位、方向和缺失值。
- 实现返回连续 score 的最小函数。
- 用两个阈值或 K 值展示 decision 如何变化。
- 建立结果表结构;只有实际运行后再填数值。
常见误区
- 把 baseline 做成包含大量隐含规则的完整系统。
- 先看测试集再决定特征或阈值。
- 在全数据上计算均值、分位数和图统计。
- 输出只有高/低风险,不保留 score。
- 复杂模型只与“随机猜”比较,而不与业务规则比较。
- 合成样本结果被误写成真实业务性能。
金融与 Web3 场景连接
支付风控可从金额速度、设备变化和商户风险规则开始;AML 图可从对手数量、资金快速流转和环路指示开始;链上钱包可用新创建地址、交互合约类型与资金来源构造透明 baseline。任何地址标签都要带来源与时间,规则命中只是调查线索,不是主体违法结论。
自检问题
- 我的 baseline 使用了哪些预测时可见信息?
- 为什么 score 与 threshold 应分离?
- 哪些统计量必须只在训练窗拟合?
- baseline 的哪个组件最容易诊断?
- 复杂模型需要超过 baseline 的哪些方面?
专业课程对齐
- Stanford CS229:对应线性/逻辑回归、生成式学习与基础优化;用于理解简单统计模型的假设、损失和可解释系数,而不是把 baseline 等同于随便猜。
- Stanford CS329S:对应生产 ML 基线、数据检查和指标选择;帮助把模型 score、阈值 decision 与业务成本分开记录。
- Full Stack Deep Learning:对应端到端实验、误差分析和可复现训练;用于让规则、常数、统计模型共享相同数据与评估接口。
深入学习提示
先精读 CS229 中与任务匹配的最小模型:二分类可用逻辑回归,连续目标可用线性/稳健回归,排序可先用简单打分;再按 CS329S 检查训练统计、特征标准化和阈值是否只由训练/验证窗决定,最后用 FSDL 的实验记录方式保存配置与切片。至少建立两个 baseline:无信息基线(多数类、全局均值或流行度)与可解释规则/统计基线。分类时不要只报 accuracy,应按代价观察 PR-AUC、recall@precision、校准或阈值后的 $FP/FN$;排序任务观察与随机/流行度排序相比的增益。baseline 的价值是暴露数据和指标问题:若简单规则异常强,先检查泄漏;若全部模型接近随机,先检查标签噪声和可预测性,而不是立即增加网络深度。
每个基线都应留下一个可手算的小样本,便于快速核对实现、阈值与指标计算是否一致。
学后填写区
- 所选 baseline 与公式:
- 合成数据和切分:
- 手算样本:
- 实际结果(未运行请注明):
- 发现的边界与 M73 比较计划: