4. 实验设计原则:随机分流机制、样本量计算与流量分配策略
Champion / Challenger 实验的核心在于通过科学的设计,确保评估结果的统计显著性与业务可解释性。本章聚焦实验设计的三大支柱:随机分流机制、样本量计算与流量分配策略,为后续效果评估奠定方法论基础。
4.1 随机分流机制
随机分流是实验的基石,其目标是将用户或申请随机分配到 Champion(对照组)与 Challenger(实验组),消除选择偏差,使两组在实验开始前具备可比性。
4.1.1 分流单元与层级
分流单元决定了随机化的粒度,常见选择包括:
| 分流单元 | 适用场景 | 注意事项 |
|---|---|---|
| 用户 ID | 用户级策略(如额度、利率) | 同一用户多次申请时保持分组一致 |
| 申请单 ID | 单次决策(如规则、模型) | 同一用户不同申请可能进入不同组 |
| 设备指纹 | 反欺诈策略 | 需考虑设备共享场景 |
4.1.2 分流算法
推荐使用确定性哈希分流,保证同一分流单元在实验期间始终进入同一组,避免“污染”。
# 伪代码:基于用户 ID 的确定性分流
import hashlib
def assign_group(user_id, experiment_id, split_ratio=0.5):
hash_key = f"{user_id}:{experiment_id}"
hash_val = int(hashlib.md5(hash_key.encode()).hexdigest(), 16)
return "Champion" if (hash_val % 100) < (split_ratio * 100) else "Challenger"
实践要点:分流算法应支持动态调整流量比例,且 Champion 组流量不低于 50%,以保证对照组的稳定性。
4.2 样本量计算(基于统计功效)
样本量不足会导致实验无法检测到真实效果(假阴性),样本量过大则浪费流量与时间。计算基于统计功效(通常设定为 80%)与显著性水平(通常设定为 5%)。
4.2.1 核心参数
| 参数 | 符号 | 典型值 | 说明 |
|---|---|---|---|
| 显著性水平 | α | 0.05 | 犯第一类错误(假阳性)的概率 |
| 统计功效 | 1-β | 0.80 | 正确拒绝原假设的概率 |
| 最小可检测效应 | MDE | 5% ~ 20% | 业务上认为有意义的最小变化 |
| 基线转化率 | p0 | 历史均值 | Champion 组的预期指标值 |
4.2.2 样本量计算公式(两比例 Z 检验)
n = ( (Z_α/2 + Z_β)^2 * (p0*(1-p0) + p1*(1-p1)) ) / (p1 - p0)^2
其中:
Z_α/2 = 1.96(α=0.05,双尾)
Z_β = 0.84(功效=80%)
p0 = 基线转化率
p1 = 预期实验组转化率(p0 + MDE)
示例:若基线通过率 p0=30%,MDE=5%(即 p1=35%),则每组所需样本量约为 1,200 个申请。若 MDE 缩小至 2%,样本量将激增至约 7,500 个。
4.3 实验周期与流量分配策略
实验周期需平衡统计充分性与业务时效性。流量分配策略则决定如何将用户划分到不同实验组。
4.3.1 实验周期确定
周期 = max( 达到最小样本量所需天数 , 覆盖完整业务周期天数 )
- 最小样本量天数:根据日均申请量计算。
- 完整业务周期:至少覆盖一个完整的“申请-审批-放款”周期,通常为 7~14 天;若涉及还款表现,需延长至 30~90 天。
4.3.2 流量分配策略对比
| 策略 | 描述 | 优点 | 缺点 |
|---|---|---|---|
| 固定比例 | 全程 Champion:Challenger = 50:50 | 简单、稳定 | 流量消耗大 |
| 动态调整 | 根据中期结果调整比例 | 减少 Challenger 风险 | 需中期分析,增加复杂度 |
| 多臂老虎机 | 基于实时反馈动态分配 | 流量利用率高 | 实现复杂,需强化学习支持 |
4.3.3 流量分配流程图
4.4 实验设计避坑清单
常见陷阱:
- 分流污染:同一用户在不同渠道被分入不同组,导致效果混淆。解决方案:使用用户级分流并锁定。
- 样本量不足:未考虑 MDE 与基线波动,导致实验无结论。解决方案:实验前使用历史数据模拟计算。
- 周期过短:未覆盖完整业务周期,忽略时间效应(如周末、月末)。解决方案:至少运行 7 天,并检查日度指标稳定性。
- 多重比较:同时评估多个指标未做校正,增加假阳性。解决方案:使用 Bonferroni 校正或设定主要指标。
4.5 实验设计检查表
| 检查项 | 完成状态 | 备注 |
|---|---|---|
| 分流单元已确定(用户ID/申请ID) | ☐ | 建议使用用户ID |
| 分流算法已实现确定性哈希 | ☐ | 需支持动态比例调整 |
| 样本量已基于 MDE 与功效计算 | ☐ | 功效≥80%,α=0.05 |
| 实验周期已覆盖完整业务周期 | ☐ | 至少 7 天 |
| 流量分配策略已选定 | ☐ | 推荐固定比例 50:50 |
| 主要评估指标已定义 | ☐ | 避免多重比较陷阱 |