Tubi 的实验
在 Tubi,从数据中学习是我们的首要任务之一,而实验在其中起着至关重要的作用1。截止到目前,借助 Tubi 的内部实验平台 Popper, 所有实验都可以实现用户分组的 A/B 测试方式。一个典型的实验流程可以分为三个步骤:首先,实验负责人通过自定义样本量计算器(运行在 Tubi Data Runtime 2上)来估计实验所需的持续时间。然后使用 Popper 来配置实验,例如,实验组的组数、实验部署安排以及每个实验组所需的资源。最后,实验配置审核无误后就可以上线了。
我们的主要实验系统实现了 CUPED 方差缩减方法3 来提升统计功效,并在中心仪表盘上展示平均实验效果和统计检验结果。
在用户分组实验中,Popper 将用户随机分配到实验组和对照组,然后,我们在实验期间对每个用户的实验效果指标(例如,总观看时间)进行追踪,并使用统计学检验来比较不同实验组之间的变量级均值。用户分组实验设计中的随机分配使得我们可以根据鲁宾因果模型4 来进行因果推理。
然而,用户分组实验并不总是适用于 Tubi 的每个场景。在许多广告设置实验中,由于两组共享一份广告供给,实验组和对照组之间会存在互相影响的行为。举一个具体的例子:假设每个广告时段的汽车广告的数量原本是 1,我们想要测试每次广告时段汽车广告数量的增加会如何影响用户行为。进一步假设我们进行了一个用户分组实验,其中对照组的用户每次广告时段看到 1 个汽车广告,而实验组中的用户每次时段看到 3 个汽车广告。在这种情况下,提供给实验组的汽车广告数量的增加会改变对照组的可用汽车广告供应,可能导致对照组中的大量用户看到的汽车广告比原来要少。在这种情况下,比较实验组和对照组的用户行为可能会对实验估计结果带来偏差。
这种网络干扰违反了鲁宾因果模型的假设,从而使用户分组实验不再适用。因此,我们需要 Switchback 实验 来估计存在网络干扰(组间相互影响)时的因果效应。
Switchback 实验
你可能会好奇什么是 Switchback 实验,以及它可以解决哪些典型的用户分组 A/B 测试无法解决的问题。在 Switchback 实验中,我们不再将用户随机分配到实验组和对照组,而是将一系列时间窗口随机分配给两个组,我们称它们为“分配窗口”。在每个“分配窗口”期间内,所有用户都会处在相同的实验设定中。这样便消除了上述用户分组的实验组和对照组之间的干扰,例如,在任何单个时间点实验组和对照组之间不再有共享的广告供给。一般情况下,Switchback 旨在消除由共享有限资源而引起的干扰,因此这种实验在有多边市场属性的行业(例如拼车)中被广泛使用。
Switchback 实验有一个经常被忽略的优势: 它能够用于解决一些用户分组 A/B 测试无法处理的问题。因为这个设计没有将用户设置为实验单元,所以可检验的假设集不再局限于那些参与实验的用户。一个很好的例子是工程系统测试,例如测试广告预算分配策略或竞价算法。Switchback 测试还使我们能够衡量集成新的需求方平台 (DSPs) 对收入的影响,而这些我们过去只能通过集成前 / 后的对比分析来衡量。因此,我们能够基于实验结果来做出更加准确和严谨的决策,并据此改进那些非直接面向用户的系统。
Switchback 实验也改变了我们对实验效果指标的看法。在用户分组实验中,效果指标是在每个用户级别上计算并汇总的。而对于 Switchback 实验,效果指标则与时间块(分配窗口)相关联,这也改变了我们对实验数据的思考方式。
Switchbacks 带来的难题
尽管 Switchback 实验能够解决组间相互干扰的问题,但它同时也为我们带来了一系列新的难题。以下列出了其中三个在 Tubi 设计和实现 Switchback 实验系统时产生影响的难点,并介绍了我们是如何克服这些困难的:
难点 #1:时间依赖
难点:由于实验单元不再是用户而是时间窗口,如果我们的指标表现出季节性,那么我们的随机化就可能会出现偏差。例如,如果人们在周末比工作日看更多影视节目,要是正好有一个实验组,在周末分配的实验窗口比工作日更多,这种情况下我们可能会得出一个非常有误导性的结论。
解决方案:为了减轻季节性带来的潜在偏差,我们对分配窗口施加每周镜像约束。也就是说,分配窗口是按“双周对”创建的。第一周是随机的,但第二周不是 —— 它只是第一周的镜像翻转。图 1 是一个为期两周的 Switchback 实验示例,每个分配窗口为两小时(红色 = 实验组,蓝色 = 对照组):

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/128644.html