在 AB Test 的语境中,“离线抽样”指在实验开始之前就确定实验组和对照的抽样方式。很显然,离线抽样的对象不是实时产生的流量,相反,离线抽样框架下的 AB Test 更接近于传统自然科学和社会科学中的实验, 比如农业学家在分析不同土地条件对农作物的影响时,会事先划分好土地以进行不同的干预。总体而言,离线抽样框架下的 AB Test 与在线分流框架下的 AB Test 在分析逻辑上是高度一致的,但由于应用场景的特殊性,离线抽样框架下的 AB Test 会面临一些特别的挑战,因此可能需要采用一些有别于流量实验的实验技术。
1. 为什么需要离线抽样?
离线抽样最常见的场景是一些能让用户明显感知到差异的产品变化。为了防止用户体验出现不一致,研究者必须确保同一个用户在整个实验期间的分组情况不会发生改变,因此在这个场景下,随机化的单位是用户,而不是用户的每次访问,用户的分组在实验开始前就定下来了,并贯穿实验始终。
除了产品变化,用户运营活动一般也需要离线抽样,比如:在测试发红包对广告客户活跃度有促进作用的实验中,一个客户或者得到红包,或者没有得到红包,这是由研究者事先决定的。
当然,离线抽样的对象也有可能是其它的事物,比如广告主所建立的广告计划、算法工程师创造出的用户标签等。
总结以上的业务场景可知,只要当某个干预手段的影响范围超出了单次用户访问,研究者就很有可能需要通过离线抽样的方式来保证干预对象(无论是用户、广告计划还是标签)所属的分组身份在整个实验过程中保持一致。
2. 离线抽样的主要难点
相比起在线分流,离线抽样面临众多挑战,最主要的挑战是抽样对象数量不足、抽样对象群体的差异性和干预的非随机性。
2.1 抽样对象数量不足问题
一般来说,离线抽样的对象数量与在线分流的分流对象数量相差至少一个数量级。以针对用户的抽样为例,用户对主流互联网产品的访问频率在一天几次到几十次之间,因此在一到两周的实验周期中,用户数量往往只是流量数量的的几十分之一。
而在对B端用户的产品变化或者运营活动中,会有更严重的数量不足问题。大多数主流互联网经营的是多边平台 —— 平台的C端用户是大量的消费者,B端用户如电商商家、广告主等则在数量上少很多。
抽样对象数量不足会直接导致 AB Test 的功效(power)不足。统计检验的功效(statistical power)的定义是:当备择假设 为真时,检验能正确拒绝原假设