返回首页

Evan Miller 用于 A/B 测试的计算器

本文解释了使用 Evan Miller 计算器计算 A/B 测试样本大小的方法。描述了关键参数:基准转化率、MDE、统计功效和显著性水平。提供了示例、影响表和用于验证的 Python 代码。

Evan Miller:A/B 测试精确样本大小计算
Advertisement 728x90

A/B测试样本量计算:Evan Miller计算器详解

Evan Miller计算器能精准确定A/B测试所需的样本量,降低误差风险并优化资源。该工具综合考虑基准转化率、预期效应大小、统计功效和显著性水平,输出A组和B组所需的观测数量。

正确计算可避免样本量低估导致的高变异性,或资源浪费在过量数据上。例如:基准转化率为56%,目标提升3%,标准参数下(80%功效,α=5%)每组约需13,719名用户。建议增加20%缓冲,使每组总数达16,463。

计算器中的参数设置

工具需按顺序输入关键指标:

Google AdInline article slot
  • 基准转化率 — 当前转化率。计算公式为(成功事件数 / 总事件数)。示例:发送500,000封邮件中280,000次浏览 = 56%。
  • 最小可检测效应(MDE) — 希望检测到的最小效应大小。可指定为绝对(单位)或相对(%)值。对于转化率,推荐使用相对值。
  • 统计功效(1-β) — 检测到真实效应的概率(标准为80%)。值越高,所需样本量越大。
  • 显著性水平(α) — 第一类错误(假阳性)的概率(标准为5%)。

界面中的图表显示可验证假设的效应大小范围(从基准值 + MDE的灰色区间)。

参数如何影响样本量

调整设置直接影响所需数据量:

  • 将功效从80%提升至90%,样本量从每组13,719增至18,372。
  • 较低的α(如1%)需要更大数据量。
  • 相对MDE更易解释基于百分比的指标,而绝对MDE更适合固定变化。

| 参数 | 标准值 | 对样本量的影响 |

Google AdInline article slot

|-----------|----------------|-----------------------|

| 功效 | 80% | 基准 |

| α | 5% | 基准 |

Google AdInline article slot

| 功效 90% | 90% | +34% |

| α 1% | 1% | +~100% |

计算后,确定测试时长:样本量 / 日均流量。预算:样本量 × 单次获取成本。

实用建议

  • 增加20%缓冲,以应对用户流失或流量波动。
  • 使用A/B测试平台(如Optimizely、Google Optimize)将流量按50/50分配。
  • 对于二元指标(如转化),使用相对MDE。
  • 验证假设:考虑季节性和受众细分。

验证用Python代码示例(使用statsmodels):

import statsmodels.stats.api as sms

effect_size = sms.proportion_effectsize(0.56, 0.56 * 1.03)
analysis = sms.NormalIndPower()
sample_size = analysis.solve_power(effect_size, power=0.8, alpha=0.05, ratio=1)
print(f"每组样本量:{sample_size:.0f}")

输出:约13,719,与计算器结果一致。

核心要点

  • 准确计算样本量可降低第一类和第二类错误概率。
  • 标准参数(80%功效,5% α)平衡速度与可靠性。
  • 20%缓冲补偿实际数据损失。
  • 与代码集成支持自动化验证。
  • 流量考量决定实际测试时长。

— Editorial Team

Advertisement 728x90

继续阅读