文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

如何设计一个 A/B test?

2024-12-24 18:58

关注

实验设计

AB Test 实验一般有 2 个目的:

  1. 判断哪个更好:例如,有 2 个 UI 设计,究竟是 A 更好一些,还是 B 更好一些,我们需要实验判定
  2. 计算收益:例如,最近新上线了一个直播功能,那么直播功能究竟给平台带了来多少额外的 DAU,多少额外的使用时长,多少直播以外的视频观看时长等

我们一般比较熟知的是上述第 1 个目的,对于第 2 个目的,对于收益的量化,计算 ROI,往往对数据分析师和管理者非常重要。

对于一般的 ABTest 实验,其实本质上就是把平台的流量均匀分为几个组,每个组添加不同的策略,然后根据这几个组的用户数据指标,例如:留存、人均观看时长、基础互动率等等核心指标,最终选择一个最好的组上线。

实验的几个基本步骤一般如下:  

 流量分配

实验设计时有两个目标:

因此经常需要在流量分配时有所权衡,一般有以下几个情况:

 根据实验的预期结果,大盘用户量,确定实验所需最小流量,可以通过一个网站专门计算所需样本量:

(这里的留存率可以转换为点击率、渗透率等等,只要是比例值就可以,如果估不准,为了保证实验能够得到结果,此处可低估,不可高估,也就是 0.2pp 是预期能够提升地最小值)

(这里的最少样本量,指的是最少流量实验组的样本量)

如果我们预期提升的指标是人均时长、人均 VV 等,可能就比较复杂了,我们需要运用 t 检验反算,需要的样本量: 

 实验效果

我们以一个稍复杂点的运营活动实验为例,活动有方案 1、方案 2,同时为了量化 ROI,对照组没有运营活动。 

 需要回答几个问题

  1. 方案 1 和方案 2,哪个效果更好?
  2. 哪个 ROI 更高?
  3. 长期来看哪个更好?
  4. 不同群体有差异吗?

第 1 个问题,方案 1 和方案 2,哪个效果更好?

还是要运用假设检验,对于留存率、渗透率等漏斗类指标,采用卡方检验: 

 对于人均时长类等均值类指标,采用t 检验:  

通过上假设检验,如果结论置信,我们就能够得到方案 1 和方案 2 在哪像指标更好(有显著性差异), 对于不置信的结论,尽管方案 1 和方案 2 的指标可能略有差异,但可能是数据正常波动产生。

第 2 个问题,哪个 ROI 更高?

一般有活动相比无活动,留存、人均时长等各项指标均会显著,我们不再重复上述的假设检验过程。

对于 ROI 的计算,成本方面,每个实验组成本可以直接计算,对于收益方面,就要和对照组相比较,假定以总日活跃天(即 DAU 按日累计求和)作为收益指标,需要假设不做运营活动,DAU 会是多少,可以通过对照组计算,即:

这样就可以量化出每个方案的 ROI。

第 3 个问题,长期来看哪个更好?

这里就要考虑新奇效应的问题了,一般在实验上线前期,用户因为新鲜感,效果可能都不错,因此在做评估的时候,需要观测指标到稳定态后,再做评估。 

 例如有的时候出现,刚刚上线前期,实验组效果更好,但是经过以端时间,用户的新鲜感过去了,实验组的效果可能更差,因此,从长远收益来看,我们应该选择对照组,是实验组的新奇效应欺骗了我们,在做实验分析时,应剔除新奇效应的部分,待平稳后,再做评估

第 4 个问题,不同用户群体有差异吗?

很多情况下,对新用户可能实验组更好,老用户对照组更好;对年轻人实验组更好,中年人对照组更好,

作为数据分析师,分析实验结论时,还要关注用户群体的差异。

实验结束

实验结束后需要:

更高级的实验

对于长线业务,可能同时有数十个实验同时进行,不但对比每项小迭代的差异,同时对比专项对大盘的贡献量、部门整体对大盘的贡献量,这样就需要运用到了实验的层域管理模型。

  

多个活动交集量化的实验设计

作为数据分析师,多团队合作中,经常遇到多业务交集的问题,以我近期主要负责的春节活动为例,老板会问:

严谨一点,我们采用了 AB 实验的方式核算,最终可能会发现一个问题:春节活动各个子活动的贡献之和,不等于春节活动的贡献,为什么呢?

这个时候,我们准确量化春节活动的贡献,就需要一个【贯穿】所有活动的对照组,在 AB 实验系统中通俗称作贯穿层。 

 (说明:实验中,各层的流量是正交的,简单理解,例如,A 层的分流采用用户 ID 的倒数第 1 位,B 层的分流采用用户 ID 的倒数第 2 位,在用户 ID 随机的情况下,倒数第 1 位和倒数第 2 位是没有关系的,也称作相互独立,我们称作正交。当然,AB Test 实验系统真实的分流逻辑,是采用了复杂的 hash 函数、正交表,能够保证正交性。)

这样分层后,我们可以按照如下的方式量化贡献:

业务迭代的同时,如何与自身的过去比较

上面谈到了【贯穿层】的设计,贯穿层的设计其实不但可以应用在多个活动的场景,有些场景,我们的业务需要和去年或上个季度的自身对比,同时业务还不断在多个方面运用 AB Test 迭代。

 

 类似与上面这种层次设计,在推荐系统中较为常见,在某一些产品或系统中,贯穿层不能够完全没有策略,那么采用去年或上个季度的策略,代表着基准值,从而量化新一个周期的增量贡献

我们可以量化:

更为复杂的实验设计

我以我目前负责的业务,微视任务福利中心的实验设计为例,举例一个更复杂的实验系统设计,综合了上面提到的 2 个目的:

  

来源:51CTO专栏内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯