![8d8d8fe2fdc83bfbe8d7c2c923cee584.png](https://img-blog.csdnimg.cn/img_convert/8d8d8fe2fdc83bfbe8d7c2c923cee584.png)
在 2018 年,我相信 ABTest 这个名词已经不用过多地解释了。但我发现很多公司,尤其是初创企业,虽然能理解这件事是什么,却不知道这件事该怎么做,以及该怎么做好。
这一系列文章,就是想讲清楚在设计具体的 A/B 测试平台这种基础架构时,要考虑哪些问题,以及有哪些推荐的做法。
今天先谈一谈,如何进行用户分桶?
我们都知道互联网产品的 ABTest 主要是围绕用户进行的实验,从统计意义上观察用户对不同的产品设计、交互体验、业务流程的反馈,从而指导产品的改进方向。
那么很重要的一点就是,怎么圈定哪些用户进行 A 实验,哪些用户进行 B 实验。
在我工作过的一家公司,他们是这样做的:“使用用户的 UserID 对 1000 取模分成 1000 个桶,然后选择不同的桶分配给 A 或者 B。”
我问研发人员为什么这么做?他们给的理由是:“UserID 是自增 ID,跟用户注册顺序有关,有一定的随机性。可以保证用户随机地分到 A 或者 B 中。”
A/B 的流量圈定的一个重要原则就是无偏,不然无法进行对比评估。上面的做法看起来倒也有一定的道理。(还常见的一种做法是,用手机尾号最后一位来进行分桶,优惠多少就看你手机尾号是否运气好了 ^_^ )
单单考虑孤立实验,这样做