数据分析业务题(AB test)
为同一个目标制定两个方案,在同一时间维度,分别让组成成分相同(相似)的用户群组随机的使用一个方案,收集各群组的用户体验数据和业务数据,最后根据显著性检验分析评估出最好版本正式采用。
问题:小红书在首页上线了一个新的模块,目的是为了提升用户的浏览时长,请设计
一套分析方案,衡量模块上线后对用户停留时长是否有提升?
解答:采用 AB 测试的方法
1.实验目标:衡量模块上线后对用户停留时长是否提升
2.将用户均匀分成两组,一组为对照组(不上线新模块),一组为实验组(上线新模
块)。保证 AB 测试中的用户群年龄、性别、城市等用户属性无显著性差异。
3.确认观测指标:对照组用户和实验组用户每天浏览时间长的平均值,分别为
stay_time_control, stay_time_test
4.原假设 H0:用户停留时长没有提升,即 stay_time_control=stay_time_test
备选假设:用户停留时长提升,即 stay_time_control
5.选择样本量
● 统计功效 statistical power=1-β,越大越好,一般情况下不小于 80%,也就是说 β 需
要小于 20%,
● 显著水平 signifcance level=α,越小越好,一般情况下不能超过 5%
● Baseline rate:实验前的历史数据
● Minimum detectable effect:最小可探测效应。
对于判断精度的最低要求,当参数越小,意味着我们对判断精度的要求越高,有能力
检测出 x%的差别=>所需样本量越大(statistical power 不变)
6.确认实验流量:根据计算出来的样本量来确定流量比例(AA 测试可以用来试验分流
是否有效)
7.小流量开启灰度实验:目的是验证新模块不会造成什么特别极端的影响
8.开启实验,时间周期可以选取一周或两周
9.采集数据比较两个组均值差的区间估计,独立样本 t 检验(总体方差未知), 计算 p 值
10.如果 p 值小于显著性水平则推翻原假设,备选假设成立,新的模块能显著提升用户停留时长。反之,不能推翻原假设,不能判断新的模块是否能提升用户停留时长。
样本量计算的公式为
整体公式如下: