Install
openclaw skills install a-b-test-planner改版犹豫不决?A/B测试怎么设计才有说服力?从假设定义、样本量计算到结果解读,全流程帮你搞定。支持贝叶斯、序贯检验、多臂老虎机,7步走完一个严谨实验,让你用数据拍板而不是拍脑袋。 触发词:A/B测试、AB测试、对照实验、样本量计算、实验设计、灰度发布、转化率优化、多臂老虎机、epsilon-greedy、UCB、Thompson采样、贝叶斯测试、序贯检验、增量实验、分层实验、分桶测试、分流策略、置信区间、p值、显著性检验、效果量、MDE、最小可检测效应、护栏指标、AA测试、方差缩减 排除:纯数据分析(无实验设计)、监控告警、日志分析、APM性能监控、竞品分析 上下文条件:用户明确有"两个方案对比"或"版本选择"的决策需求
openclaw skills install a-b-test-planner输入确认:
假设框架:
H0(零假设):A和B无差异
H1(备择假设):A和B有差异 或 B > A(单尾)
常见错误预警:
OEC(Overall Evaluation Criterion)主指标:
| 业务类型 | 推荐指标 |
|---|---|
| 电商 | 转化率、客单价、GMV |
| 内容平台 | 留存率、互动率、完播率 |
| SaaS | 注册转化、付费转化、NRR |
| 广告 | CTR、CVR、eCPM |
| APP | D1/D7/D30留存、LT |
护栏指标(Guardrail Metrics):
指标定义检查清单:
必设参数:
| 参数 | 建议值 | 说明 |
|---|---|---|
| 基线转化率p | 历史数据 | 通常3-5% |
| 最小可检测效应MDE | 相对提升5-20% | 业务可接受的最小差异 |
| 显著性水平α | 0.05 | 假阳性风险 |
| 统计功效1-β | 0.80/0.85/0.90 | 假阴性风险 |
| 测试周期 | 7天/14天/完整周期 | 覆盖完整用户周期 |
样本量公式:
n = 16 × p × (1-p) / MDE² (简化公式,α=0.05, β=0.2)
其中 MDE = p2 - p1(绝对值)
快速估算表:
| 基线p | MDE(相对) | MDE(绝对) | 每组样本量 | 总样本量 |
|---|---|---|---|---|
| 5% | 10% | 0.5% | 60,000 | 120,000 |
| 5% | 20% | 1.0% | 15,000 | 30,000 |
| 10% | 10% | 1.0% | 28,800 | 57,600 |
| 10% | 20% | 2.0% | 7,200 | 14,400 |
| 20% | 5% | 1.0% | 98,304 | 196,608 |
分流单位:
| 场景 | 推荐单位 | 说明 |
|---|---|---|
| 用户个性化 | user_id | 体验一致 |
| 页面级改动 | cookie/session | 跨设备体验 |
| 纯展示测试 | pageview | 样本量充足 |
| 订单相关 | device_id | 避免跨设备归因 |
层叠实验设计:
Traffic Layer 1: 80%
├── Experiment A: 50% / 50%
└── Experiment B: 50% / 50%
Traffic Layer 2: 20% (互不干扰)
分流均匀性检验(AA测试):
每日监控检查点:
1. 样本量进度:actual / target × 100%
2. 指标趋势:日间波动是否异常
3. 分流均匀:各组UV占比偏离 < 2%
4. 外部干扰:是否有运营活动/外部事件
预警规则:
序贯检验(可选):
显著性判断:
| p值 | 结论 |
|---|---|
| p < 0.01 | 高度显著,强烈推荐 |
| p < 0.05 | 显著,可采纳 |
| p >= 0.05 | 不显著,无充分证据 |
| p > 0.95 | 极可能无差异,可采纳对照组 |
效果量评估:
Cohen's d = (p2 - p1) / sqrt(p(1-p))
- |d| < 0.2: 微小
- |d| < 0.5: 小
- |d| < 0.8: 中等
- |d| >= 0.8: 大
置信区间解读:
95% CI: [L, U] = [3.1%, 3.9%]
解读:有95%的把握,真值落在此区间
异质性处理效应(HTE):
结论分类:
| 结论 | 条件 | 建议 |
|---|---|---|
| 全量发布B | p<0.05, 效果量可观, 护栏指标正常 | 直接发布 |
| 渐进发布 | p接近0.05, 护栏有风险 | 10%→30%→50%渐进 |
| 继续观察 | 样本量不足60% | 延长周期 |
| 放弃实验 | p>0.2, 趋势不明 | 复用实验资产 |
| 发布A | B无提升或护栏指标下降 | 保持原方案 |
发布后监控:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🧪 A/B测试方案 | {实验名} | v1.4.0
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
## 📌 业务背景
{一句话描述实验动机}
## 🎯 假设与指标
**核心假设**:{H0/H1定义}
**主指标**:{OEC名称} | 当前基线:{X}%
**MDE设定**:{X}%(相对提升{X}%)
**护栏指标**:{指标列表} | 底线:{阈值}
## 📊 参数计算
| 参数 | 值 |
|------|-----|
| 显著性水平α | 0.05 |
| 统计功效1-β | 0.80 |
| 基线转化率p | {X}% |
| MDE | {X}% |
| **每组样本量** | **{N}** |
| **总样本量** | **{2N}** |
| 预估周期 | {X}天 |
## 🚰 分流设计
**分流单位**:{user_id/session/pageview}
**分流比例**:A组 {X}% | B组 {X}%
**层叠设计**:{是/否} | 共享层:{X}%
**AA测试**:{是/否} | 预热期:{X}天
## 📡 监控计划
**日检查点**:
- 样本进度预警线:{X}%
- 指标波动告警:{X}σ
- 节假日处理:{方案}
**序贯检验**:{启用/禁用}
## 📈 结果分析框架
**显著性阈值**:p < 0.05
**效果量标准**:Cohen's d > 0.2
**置信区间**:95% CI
**异质性分群**:{新用户/渠道/设备/...}
## ✅ 决策树
IF p < 0.05 AND 效果量 > 0.2 AND 护栏正常 → 全量发布B ELIF p < 0.05 AND 护栏有风险 → 渐进发布 + 继续观察 ELIF p >= 0.05 AND 样本量 >= 80% → 放弃实验,保留原方案 ELSE → 延长周期或扩大样本
## 📅 发布后监控
**监控周期**:全量后 {X} 天
**护栏告警阈值**:{指标} {阈值}
**回滚触发条件**:{条件}
**回滚操作**:{步骤}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
**输入**:
- 现状:红色购买按钮,点击率3%
- 方案B:绿色购买按钮
- 业务目标:提升点击率5%以上
**输出方案**:
├── 假设:H0=无差异,H1=绿色>红色
├── 主指标:购买按钮点击率(CTR)
├── 基线:3%,MDE:0.15%(5%相对提升)
├── 样本量:每组 63,000,总计 126,000
├── 周期:7天(假设日UV 18,000)
├── 分流:user_id级,AA预热2天
└── 决策:p<0.05则全量
**输入**:
- 现状:浏览30秒弹出订阅框,转化率8%
- 方案B:浏览60秒后弹出
- 顾虑:担心用户流失
**输出方案**:
├── 假设:H0=无差异,H1=60秒>=30秒
├── 主指标:订阅转化率
├── 护栏:页面退出率(底线:不恶化>2%)
├── 样本量:每组 11,000,总计 22,000
└── 决策:需同时满足主指标正向+护栏正常
**问题**:用户同时看10个指标,p值都<0.05就发布
**正确做法**:
1. 选1个主指标(OEC)
2. 其他9个设为护栏指标
3. 或使用Bonferroni修正:α' = 0.05/10 = 0.005
**问题**:跑了3天只有30%样本量,p<0.05就发布
**正确做法**:
- 样本量不足时,p值不可信
- 应延长实验周期或承认统计功效不足
- 可设置提前终止条件(需业务签字)
问题:基线0.5%,MDE 10%需巨大样本
方案:
- 改用比例差异而非相对提升
- 考虑时间窗口内的转化次数(Poisson分布)
- 降低MDE到1%绝对值,评估业务可接受性
问题:希望90%流量到实验组
方案:
- 使用不均衡样本量公式
- 统计检验需考虑权重
- 推荐不均衡比例不超过 4:1
问题:实验跨越周末,指标周期性波动
方案:
- 最小周期覆盖完整7天
- 分层分析平日vs周末数据
- 考虑周内同天对比
问题:新功能初期表现好,长期回落
方案:
- 延长观察周期至14-21天
- 分析新老用户分层表现
- 设置护栏防止短期数据误导
适用场景:持续优化、流量成本高、快速迭代
算法对比:
| 算法 | 特点 | 适用 |
|---|---|---|
| Epsilon-Greedy | 简单,稳定 | 快速验证 |
| UCB | 平衡探索/利用 | 稳定优化 |
| Thompson Sampling | 贝叶斯视角 | 转化率优化 |
| LinUCB | 上下文特征 | 个性化 |
输出扩展:
🎰 多臂老虎机方案
## 配置
- 臂数:{N}
- 探索率ε:{X}%(Epsilon-Greedy)
- 探索/利用权衡:{偏探索/平衡/偏利用}
## 预期收益
- 相比固定分流:预期提升 {X}%
- 收敛周期:{X}天
- 最低样本量:{每臂N}
适用场景:快速决策、需量化不确定性、样本量有限
输出扩展:
🧬 贝叶斯分析
## 先验分布
- Beta(α, β) = Beta({1,1}) [无信息先验]
- 或历史数据驱动:Beta({success+1, fail+1})
## 后验估计
- P(B>A) = {X}%
- 预期提升:{X}% [-{L}%, +{U}%]
- 决策阈值:P(B>A) > 95%
## 样本效率
- 贝叶斯方法通常节省 {X}% 样本量
方案发布前检查:
中文输出,统计术语可保留英文缩写
| 借口 | 正确做法 |
|---|---|
| "样本量计算太复杂,给个大概数字就行" | 必须使用标准公式 n = 16 × p × (1-p) / MDE² 计算,列出基线p、MDE、α、β四个参数及其取值依据 |
| "护栏指标不重要,只看主指标" | 必须设置至少2个护栏指标(技术指标+业务下限),并定义明确的底线阈值 |
| "跑了3天p值已经显著了,直接发布吧" | 必须检查样本量是否达到目标的80%以上,且实验周期覆盖至少7个完整天(含工作日和周末) |
| "分流就用50/50,不需要做AA测试" | 分流方案必须说明分流单位选择理由,并建议AA预热期1-2天验证分流均匀性 |
| "多个指标都看一遍,p<0.05的就采纳" | 必须指定1个OEC主指标,其他指标设为护栏;多指标同时检验必须做Bonferroni修正 |
| "效果量太小就不报告了" | 必须报告效果量(Cohen's d)和95%置信区间,即使p值显著也要评估实际业务意义 |
| "外部干扰应该不大,不用考虑" | 必须预判外部干扰因素(节假日/运营活动/季节性),并在监控计划中说明应对方案 |