A/B 测试的隐性机会成本被整个行业系统性忽略——探索-利用困境的实践版本¶
洞察¶
每个 A/B 测试在收集数据的过程中,都在支付一种隐性税:分配给次优变体的流量产生的机会成本。
具体来说:如果 B 最终被证明比 A 差 5%,那测试期间分配给 B 的所有用户都损失了 5% 的转化/收入/留存。如果一个测试跑了 2 周分配了 50% 的流量到 B,这个税是你损失了一周的全流量 5% 提升。
但大多数 A/B 测试平台不计算这个税。 它们报告 p 值和置信区间,但不报告:「为了获得这个结论,你支付了多少机会成本?」
探索-利用困境的 A/B 测试形式¶
强化学习的探索-利用困境在 A/B 测试中的映射:
| 强化学习概念 | A/B 测试对应 |
|---|---|
| 探索(Explore) | 50/50 分流给 A 和 B,收集数据 |
| 利用(Exploit) | 100% 分配给已知最佳变体 |
| ε-greedy | 以 ε 概率随机探索,1-ε 概率利用当前最佳 |
| 遗憾(Regret) | ∑(最优奖励 - 实际奖励) = 测试的机会成本 |
| Thompson Sampling | 从后验分布中抽样,选择当前最优概率最高的臂 |
行业标准(50/50 固定分流直至 p < 0.05) 等价于 RL 中最朴素的探索策略——在探索阶段完全不利用。这在 RL 文献中早就被证明是次优的——而 A/B 测试行业似乎完全不知道这件事。
为什么这被忽视¶
-
A/B 测试工具的源头:最早的 A/B 测试工具来自统计咨询(Optimizely, Google Optimize),而非 ML/RL 社区。统计咨询关注「如何获取无偏估计」,RL 关注「如何在学习和利用之间权衡」——两个不同的优化目标。
-
机会成本不可见:转化率提升了 3% = 可报告。测试期间的损失 = 无法看到(反事实——你不知道如果 100% 分配给 A 会赚多少)。显性的提升是可见的,隐性的机会成本是不可见的。
-
组织激励错配:数据科学家被考核「发现显著提升」,不被考核「测试期间损失了多少收入」。 → 宁可多测几周确保显著,也不愿承担早期停止的风险。
应该怎么做¶
-
计算每个实验的遗憾(Regret):\(\text{Regret} = n_B \times (\mu_A - \mu_B)\),其中 \(n_B\) 是分配给 B 的流量,\(\mu_A - \mu_B\) 是 A 对 B 的 lift。即使 B 最终被证明显著优于 A,如果 B 在测试初期表现差,你也在积累遗憾。
-
先用 Thompson Sampling 替代固定分流:动态调整流量分配——哪个变体的后验期望高,就给更多流量。这让你在「学习」的同时「利用」——测试仍在进行,但你已经开始赚钱了。
-
用贝叶斯最优停止规则:停止不是因为 p < 0.05,而是因为继续收集数据的期望价值(Expected Value of Continued Testing, EVCT)低于机会成本。「如果再多测一天,获得的信息能改变决策吗?如果能,这信息值多少?值不值得再付一天的机会成本?」
-
区分探索性实验和确认性实验:探索性实验(新功能、新设计)用 Thompson Sampling + 早期停止。确认性实验(最终上线决策)用固定分流 + 更大样本量——但要明确这是为了降低发布风险的成本,不是免费的信息获取。
🕸️ 跨域脉络¶
- 决策理论(C1)的探索-利用框架直接提供了数学解决方案——但行业实践滞后数十年
- ML 失败金字塔(C8)——A/B 测试坐落在因果层(「B 比 A 好?」)和决策层(「是否将 B 部署给所有用户?」)之间——测试设计需要同时优化两层
- 频率推断(C4)——p < 0.05 固定分流是频率推断思想在实验设计中的应用;Thompson Sampling 和贝叶斯最优停止是贝叶斯推断在实验设计中的应用——这是频率 vs 贝叶斯分歧在工程实践中的直接映射