AB实验你真的了解嘛

  • Post author:
  • Post category:其他



1 为什么要做A/B实验?

A/B实验,是一种验证假设的方法,其核心方法及原理分别是

对照实验



假设检验

在实际实验时会从总体抽取部分个体组成样本单位,并从个体实验结果推断总体结果。


1-1、实验原因

由于对照实验

遵循单一变量原则

,能通过对比发现因果性,并根据实验结果量化正向和负向的影响程度。

当实现了某个新的特性,我们无法准确预估上线后是增益还是减益,

从风险和成本的角度考量

,会切分小流量进行验证。

小型实验也意味着大部分能在单研发团队自助完成,时间和效率也能得到保障。


1-2、适用场景

A/B实验,解决的是策略优化问题,它能帮助我们从可选策略中选择最优策略。


它可以让我们在已达到的山上越来越高,却不能用它来发现一座新的山脉。


2 明确目的

数据分析的过程中一般的次序为:

相关性>>因果性>>效果

先通过数据分析洞察相关性,再通过实验提出假设,模糊预估其因果性。在证明成功后根据首次实验效果,持续优化时再进行清晰预估。


3 确认指标

1)正负指标

正向指标,一般依据实验路径制定,是策略好坏的直接评价,如:留存人数->点击人数->浏览人数->成交人数。


负向指标,适用于结果指标相近的场景

,如实验策略是下发公众号模板,其中两组的成交人数相近,但实验组却致使用户取关人数激增。

如正向收益小于负向收益,则应分析问题考虑优化实验或停止实验。


2)结果、过程、观察指标


结果指标是实验目的,过程指标体现如何完成。观察指标则指的相关性指标,多用于预估上升空间,如成交人数上升,但件均金额较低或购买对象仅覆盖本人。

依据观察指标,可以预估上升空间,并设计下一个实验。这3个指标在此前《数据分析的逻辑思维及分析方法》已有较全面的描述,在这里也不再赘述了,有兴趣的朋友可以查阅该文章。


4 制定策略


4-1、实验类型

1)互斥实验

遵循单一变量原则的代表是互斥实验,即用户同时间仅可进行一个实验,通过流量的互斥保障实验结果不受干扰。

但当实验越来越多,同时间可进行实验的用户量减少。流量不足,样本的代表性差。如果要等待前述实验结束再进行下一实验,验证周期增长、效率降低。

2)正交实验

为了解决互斥实验的流量问题,使用的方法是正交实验,也称分层实验。在此,分层的依据是不同的实验。

正交实验能使流量共享,同时进行多个实验,但我们需保障各层的划分参数相互独立且互不影响。

如:上一层的绿色字体不能与绿色背景正交。但绿色字体可以与蓝色背景正交实验,绿色字体也可以与只能推荐正交。

最后还有一个小的细节是,实验流量的来源不仅是上一层实验。这里涉及的内容可以参考谷歌的论文《Overlapping Experiment Infrastructure》。


4-2、实验设计

实验设计须注意的点是,尽量先粗后细,尽量先追求深度再追求广度。当产品有明显不佳的体验,其实更应该迅速迭代优化,并不是每件事都要有数据、有实验证明。


5 选择样本


5-1、抽样的原则

1)唯一性原则

唯一性指在用户进行实验时,从始至终仅命中相同的策略。帮助我们更准确的归因并让用户维持相同的体验。

2)均匀性原则

均匀性原则有两层定义,

数量的均匀



特征的均匀

前者是为了保证组间样本数量,

减少因数量小导致实验波动过大,后者则能使样本代表性更强

。假设分组中的女性占比过高,则实验的结论无法推断男性在这一实验中是否有类似的行为。

特征的均匀也应与实验目的相结合,如实验指标为某按钮点击率,实验组样本的点击率已在较高的基准线上,则可能无法分析策略优劣。


5-2、抽样方法

1)完全随机分组

完全随机分组,也称CR(Complete Randomization),是最常见的随机分组方式之一。常见的实现形式为对某ID字段哈希后对10取模,根据结果值进入不同的组。

如果随机选取ID进行哈希取模,那么是简单随机抽样。如果先将ID排序,逢6取1(6、16、26…)后再进行哈希取模,我们也称之为等距抽样。

2)重新随机分组

完全随机分组,由于不考虑样本的特征是否均匀,可能会导致某组样本的结果指标偏高或者偏低。为了解决此问题,我们可以AA实验观察样本差异或使用重新随机分组(ReRandomization)。

其原理为,每次随机分组后,通过验证组间差异是否小于设定的阈值。如果差异大于阈值,则重新分组,否则则停止分组。

此方法相比完全随机分组更准确,由于缺乏重跑的依据,得到合适的样本是概率性的,也可能造成很大的耗时。一般而言样本量越大,重分的次数越少。

3)自适应分组

Adaptive自适应分组,是滴滴AI Lab团队自研的分组方法,其能够在只分组一次的情况下,让选定的观测指标在分组后每组分布基本一致。

它在每次分组的时,记录当前分配的样本数以及样本分布,并计算当前对象分配至该组后该组的特征均匀情况,从而决定应分至哪个组。


6 实验分析


6-1、放量/全量

A/B实验,是小流量验证的实验方式,那我们应如何放量呢?

其前提如下:


1)结果显著,至少保证95%的可信度。


2)正向指标价值>负向指标价值


3)效果稳定,不因时间周期等元素变化剧烈波动

常见的放量方式有两种,

流量开放以及实验推广

。流量开放包含了实验内对照组和实验组流量的切分,也可在源头再增加样本。


实验推广,则是将此实验在其他特征、行为的群体中推广


6-2、再实验&终止

再实验的原因,从效果的次序来看是:

无法肯定是否有效果->无效果->效果不明显->负反馈。

负反馈如果影响了核心流程,则应考虑终止实验。

关于这2者的分析方法和需求分析是相近的,可以参考逻辑树“自下而上”的方法,先将每1环节可能出现的问题,再依次向上聚合。


7 几个理论

1)辛普森悖论

在分组中占优势的一方,在整体中有时反而是劣势的一方。

2)幸存者偏差

只看结果,却忽略了呈现结果的用户是谁。

3)新奇效应

一开始对实验策略有较好的回应,但一段时间迅速消失。

前2者,主要用于探究样本的代表性和均匀性。新奇效应则应在单一变量下,重复、长时地进行实验,保障实验结果不受实验影响。


写在最后

这篇文章始终感觉难度很大,从双盲实验到A/B实验,这两个词已经被成千上万的文章解读过很多遍,让我甚至写不出前言。最终选择的切入点是,逻辑梳理和知识再提炼。

也因为再提炼,会根据自身的理解省略了前期建设、上线监控等环节,其中监控更适合开单章,而数学、算法原理已经有朋友总结了很全面了,有兴趣的朋友可以阅读下方的参考资料。

感谢你看到这里,谢谢。

参考资料

1、腾讯PCG-E计划:实验设计及决策基础篇

2、ABtest 和假设检验、流量分配

https://www.6aiq.com/article/1555861276270?p=1&m=0

3、假设检验的运用

https://www.cnblogs.com/wobujiaonaoxin/articles/11910326.html

4、abtest-数据分析-假设检验基础

https://cloud.tencent.com/developer/article/1427845

5、哈希表是什么

http://www.woshipm.com/pmd/805326.html

6、区块链节点间的数据验证:哈希值与非对称加密

http://www.woshipm.com/blockchain/1019704.html

7、Overlapping Experiment Infrastructure重叠的实验基础设施

https://max.book118.com/html/2018/0131/151334020.shtm

8、AB实验在滴滴数据驱动中的应用