跳转到主要内容

方差正在吞噬实验:为什么传统的 A/B 测试功效计算不适用于 LLM 功能

阅读需 2 分钟Tian PanTian Pan

模型团队可以演示新功能并展示十个令人信服的并排对比获胜案例。增长团队将其作为为期两周的 A/B 测试运行,得到 p = 0.31,读数显示“无显著效果”。两个团队都是正确的。实验是错误的。

这种模式在每个将 LLM 强行接入产品但未重建其实验栈的组织中不断重复。增长团队使用的数学模型是为按钮颜色、排名变化和定价页面设计的——这些功能的输出在给定用户和上下文的情况下是确定性的。LLM 功能打破了该数学模型赖以生存的两个假设,而标准的 80% 效能、5% 显著性、两周扩量模板在两个方向上都系统性地输出了错误的判断:真实的获胜被读取为无效结果,而噪声则被读取为置信的获胜。

代价不仅仅是一次实验。而是经过几轮模型团队可以定性证明有所改进的功能却得到“不显著”的读数后,模型团队停止了运行实验。功能迭代与因果证据之间的反馈循环悄然断裂,组织最终根据“感觉(vibes)”发布 AI 功能——不是因为有人决定这么做,而是因为实验栈对该领域不再有用。

悄然破裂的两个假设

经典的 A/B 数学将许多微妙之处压缩进一个看起来极具通用性的样本量公式。要让它给出正确的数字,必须满足两点。

第一:人均方差(per-user variance)相对于你试图检测的实验效应(treatment effect)较小。 如果单个用户行为的噪声底噪大于你寻找的提升(lift),你或者需要更大的样本量,或者需要更长的实验时间来将信号从噪声中分离出来。对于确定性的 UI 实验,这个假设是成立的,因为人均方差主要在于用户是否有点击的心情——这是有界的、建模良好的、且研究透彻的。

第二:每个测量单位(一次会话、一个事件、一次转化)大致是来自用户行为分布的独立同分布(iid)样本。 这让你可以在不过多思考的情况下将不同会话视为可互换的,并将它们汇总为人均指标。

LLM 功能违反了这两个假设,并且是以复合的方式违反:

  • 用户间方差(Inter-user variance)高于确定性功能,因为输入现在是自然语言。两个用户询问“同一个”问题,措辞不同,会将模型推向其输出分布的不同部分,从而获得具有不同延迟、长度和后续行为的答案。你的实验组和对照组不仅是在对用户进行采样——你还在对每个用户的 Prompt 分布进行采样,而且这些分布在不同用户之间的差异比点击目标要大得多。
  • 用户内方差(Intra-user variance)很高,这是确定性功能完全不具备的,因为同一个用户在两次会话中询问同一个问题,可能会得到实质上不同的答案。温度(Temperature)、采样、检索新鲜度、工具调用顺序以及模型侧的确定性,都在你以前视为固定点的单元内部共同增加了一层额外的方差。“来自用户行为分布的 iid 采样”这一框架现在有了第二个随机性来源——来自模型的——它叠加在用户的随机性之上。
  • 实验效应通常小于任一组的用户内方差,因为模型团队发布的变化(更好的 Prompt、更智能的路由、从小模型切换到中型模型)往往会在人均会话噪声为 10–30% 的指标上产生 1–5% 的提升。信噪比(Signal-to-noise ratio)并不是很差——而是结构性的本末倒置。

微软实验团队在 2013 年发表了针对此类问题的基础性方差缩减(variance-reduction)论文,其建立的框架——即实验中的并非所有方差都是随机的,实验前的数据可以吸收其中大部分方差——正是正确的起点。但标准实现假设的是确定性的用户行为,而 LLM 案例增加了一个模型侧的方差组件,这是实验前期协变量(covariates)无法预测的。

为什么仪表盘显示“不显著”而模型团队说“明显更好”

当样本量计算器被喂入来自确定性功能实验前期的效应量和噪声估计时,它返回的数字会因为真实方差与假设方差的比率而产生偏差。对于具有高用户内方差的 LLM 功能,该比率通常为 2–5 倍。因此,团队需要 2–5 倍的样本量,或 2–5 倍的实验持续时间,才能达到相同的统计效能。

大多数增长团队不会察觉到这一点,因为方差估计隐含在他们的工具中。实验前期数据从历史数据中自动计算,计算器返回样本量,实验开始扩量。标准流水线中没有任何东西能区分“该指标有 10% 的人均方差是因为用户在变化”和“该指标有 30% 的人均方差是因为用户在变化且模型在变化”。得出的数字单位正确,但量级错误。

与此同时,模型团队正在观察精心挑选的定性获胜案例——二十个配对示例,其中新 Prompt 明显优于旧 Prompt。这些例子是真实的。但它们不是随机样本;它们是提升大到肉眼可见的精选子集。诚实的推断应该是:“当提升可见时,新功能确实更可靠,但在全量流量分布中的平均提升相对于实验能检测到的噪声来说太小了。”

两种读数可以同时为真。新功能确实有效。实验也确实没有足够的效能来检测它。答案不是“相信模型团队”或“相信增长团队”——而是实验基础设施需要意识到它正在测量一个随机(stochastic)功能。

会员专享

余下内容仅对会员开放。

会员可读完整内容 —— 每一个公开发布的观点背后,那些框架、决策与推理的全貌。

  • 完整文章,包含未公开存档的部分
  • 可落地的工作框架,附带权衡与决策依据
  • 新文章抢先看,先于公开发布

随时取消 · 一次订阅,畅读全部

参考资料

保持联系,关注我获取更多内容

阅读需 10 分钟

对非确定性 AI 功能进行 A/B 测试:为何你的实验框架假设了错误的零假设

标准 A/B 测试框架假设处理是确定性的,但 LLM 驱动的功能会引入处理内方差,从而破坏功效计算、膨胀样本量并产生不可靠的结果。本文为非确定性 AI 实验提供随机化、指标设计、贝叶斯方法和方差缩减的实践指南。

insider
ab-testing
阅读需 10 分钟

撒谎的 AI A/B 测试:LLM 实验中的新奇效应、结转偏差与锚定偏差

三种心理偏差——新奇效应、锚定偏差和结转偏差——会系统性地夸大 AI 功能的 A/B 测试结果,而标准的留存组(Holdout Group)方案对这些都无能为力。本文将介绍一种真正有效的纵向队列设计(Longitudinal Cohort Design)。

insider
ab-testing
阅读需 10 分钟

系统提示词提供的人格,模型每次都会以同样的方式选择

当你的系统提示词要求模型在不同人格之间做出选择时,模型的训练先验决定了结果——在实验平台察觉到之前,你的 A/B 测试分支就已经坍缩了。

insider
llm
阅读需 9 分钟

当评估指标全看“感觉”时,你的 A/B 测试无法区分两个模型

点击率无法区分用户是真心喜爱一个模型还是仅仅在忍受它。在你信任实验结果并据此选择模型之前,请先证明你的指标能够检测出你故意搞坏的模型。

insider
evaluation
阅读需 8 分钟

A/B 测试陷阱:为什么标准实验设计在 AI 功能中会失效

标准的 A/B 测试在 LLM 驱动的功能中往往会失效 —— 非确定性的输出、异方差性以及无法体现语义质量的参与度指标,这些因素共同导致了虚假的信心。本文将探讨你应该采取的替代方案。

insider
llm