Trustworthy Online Controlled Experiments Part 1 Chap 2
实验设计
现在,我们可以设计实验了。我们有一个假设,一个实际意义上的边界,一个指标度量。我们将使用它们来完成设计:
- 随机单元是什么 ?
- 我们的目标单元是什么?
- 实验规模有多大?
- 实验时间有多长?
目前, 假设我们的随机单元是每个用户, 这是最常见的情况。 在Chap14中, 我们会介绍其他情况。
针对特定人群意味着你只想为具有特定特征的用户运行实验。例如,测试新文本,但只有几种语言的新文本;在这种情况下,只能将界面语言环境设置为这些语言的用户作为目标。其他常见的定位属性包括地理区域,平台和设备类型。
实验规模
我们的示例假设我们以所有用户为目标。实验的规模(对我们来说,是用户数量)直接影响结果的准确性。如果希望检测出较小的变化或对结论更加自信,则需要较大的实验。这是一些可能决定样本大小(实验规模)的因素:
如果我们使用购买指标(只考虑用户是否购买了,而不考虑金额),而不是将每位用户收入作为我们的OEC,则标准误会变小,这意味着我们可以用小规模实验。
如果我们提高实际意义水平,比如说我们不再关心1%的变化,而只关心较大的变化,则可以减小样本大小,因为较大的变化更易于检测。
如果我们想使用较低的p值阈值(例如0.01)来更确定在拒绝Null假设之前发生了变化,则需要增加样本量。
实验有多安全?对于大型更改,如果不确定用户的反应,则可能首先要从较小比例的用户开始。该原理不应影响最终实验规模的选择,而可能会影响加速策略(有关更多详细信息,请参见第15章)。
此实验是否需要与其他实验共享流量,如果需要,如何平衡流量需求?在较高的级别上,如果要测试其他更改,则可以选择同时运行或顺序运行这些更改。如果必须在多个同时进行的测试之间分配流量,则每个测试最终都会产生较少的流量。在第4章中,我们讨论了以单层或重叠的方式运行测试,更重要的是,如何构建适当的基础结构来扩展实验。
实验时间
另外一个需要关注的是实验时间, 可能影响因素有:
更多的用户:在线实验中,由于用户会随着时间的流逝而进入实验,因此实验运行的时间越长,实验获得的用户越多。这通常会提高统计能力(如果要衡量的指标积累起来(例如会话数),但如果方差也会增加,则会发生例外;有关详细信息,请参见第18章)。考虑到同一位用户可能会重复访问,因此随着时间的推移,用户累积率也可能是非线性的:如果在第一天有N位用户,那么两天后的用户数将少于2N,因为有些用户在这两天都访问过。
星期几效应:周末的用户数量可能不同于工作日的用户数量。即使是同一用户,其行为也可能有所不同。确保您的实验捕获每周周期非常重要。我们建议进行至少一星期的实验。
季节性:用户可能还会有其他行为重要的考虑因素,例如假期。如果你拥有全球用户群,美国以及美国以外的假期都可能产生影响。例如,销售礼品卡可能会在圣诞节的季节,但一年中其他时间的情况则不太理想。 这叫做 外部有效性, 即实验结果泛化性。在这里, 指的是实验结果对所有日子的有效性。
首要效应和新奇效应:有些实验倾向于具有较大或较小的初始效应,需要花费一些时间才能稳定下来。例如,用户可能尝试使用一个新的闪亮按钮,但发现它没有用,因此该按钮的点击次数会随着时间的流逝而减少。另一方面,需要采用的功能需要花费一些时间来建立用户基础。
这是我们已经确定下来的其他实验参数:
- 随机单元是用户
- 我们追踪所有客户,并且分析哪些访问了“结算”页面的客户
- 为了拥有80%的power 来检测每位用户收入的至少1%的变化,我们将进行power 分析以确定规模。
- 这意味着至少要进行四天的实验,对照/治疗一/治疗二之间的分配比例为34/33/33%。我们将进行为期一周的实验,以确保我们了解星期几的影响,如果发现首要效应和新奇效应,则可能需要更长的时间。
一般而言,建议实际的power 大于理论最小power,甚至我们推荐这样做,因为有时我们需要检查细分市场(例如地理区域或平台),并确保实验具有足够的power来检测多个关键指标的变化。例如,我们需要有足够的power来检测所有用户的收入影响,但是如果我们只想查看加拿大的用户,则没有足够的power。还要注意,尽管我们只要求对照和治疗大小近似相等,但是如果治疗数量增加,则应该考虑增加对照组的规模。(有关更多讨论,请参见第18章)。
运行实验获取数据
现在让我们进行实验并收集必要的数据。在这里,我们给你一个简要介绍所涉及的各个部分,在第4章中深入研究详细内容。
为了运行实验, 我们需要
- 实验工具: 获取用户登录信息, 捕获用户行为
- 基础设施: 能够运行实验,从实验配置,到变量选择。
完成实验并使用必要的仪器收集日志数据后,就可以处理数据,计算摘要统计信息并可视化结果了。