搭建企业级平台实践
什么是AB测试?
在现实的产品迭代场景中,我们经常会遇到多个方案的选择的问题,在这里迭代的可以是UI界面,可以是算法策略。简单来说就是为同一个产品目标制定两个方案,一部分用户走A方案,另一部分走B方案,然后通过日志记录用户的使用情况,并通过结构化的日志数据分析相关指标,如点击率、转化率等,从而得出哪个方案更符合预期设计目标,并最终将全部流量切换至符合目标的方案。
AB测试的价值?
- 为评估产品优化效果提供科学的证据,量化收益
- 判断方案的好坏,不断迭代优化,提升企业变现能力
- 科学性的实验能够提升组织在产品层面的决策能力
企业级AB/Testing平台实现
整体架构
客户端实验权衡
实验配置下发是指 各变量的配置,配置描述了变量的行为应该是怎样的。
a) 最简单的架构。
优点: 实现简单,服务端实验和客户端实验都可采用
缺点: 业务需要关注AB的显式调用; 每次调用都会有一个时间delay(除非找个恰当的时间 否则影响用户体验)
b) 利用“边缘网络”,一般是一个负载均衡服务器的角色,这个角色还提供了分流的功能
优点:符合一般网站的架构,业务无需关注显式的AB调用
缺点:不合适客户端实验,因为客户端很多交互发生在本地而不发起网络调用
c) SDK
优点: 业务无需关注显式的AB调用。非常适合于客户端实验和服务端实验。在前端各个组件间不需要传递AB变量,随用随调(有缓存)
缺点: 实现较为复杂,需要引入前端人力
实验期间的目标
实验设计时的目标:
- 希望尽快得到实验结论,尽快决策
- 希望收益最大化,用户体验影响最小
- 希望实验结论可靠
多实验存在相互影响的实验设计
多团队合作中,经常遇到多业务交集的问题,以我近期主要负责的春节活动为例,老板会问:
- 春节活动-明星红包子活动贡献了多少 DAU?春节活动-家乡卡子活动贡献了多少 DAU?
- 春节活动总共贡献了多少 DAU?
严谨一点,我们采用了 AB 实验的方式核算,最终可能会发现一个问题: 春节活动各个子活动的贡献之和,不等于春节活动的贡献,为什么呢?
- 有的时候,活动 A 和活动 B,有着相互放大的作用,这个时候就会 1+1 > 2
- 还有的时候,活动 A 和活动 B,本质上是在做相同的事情,这个时候就会 1+1 < 2
这个时候,我们准确量化春节活动的贡献,就需要一个【贯穿】所有活动的对照组,在 AB 实验系统中通俗称作 贯穿层。
这样分层后,我们可以按照 如下的方式量化贡献:
- 计算春节活动的 整体 贡献:实验填充层-填充层填充组 VS 贯穿层-贯穿层填充组
- 计算活动 A 的贡献:活动 A 实验层中,实验组 VS 对照组
- 计算活动 B 的贡献:活动 B 实验层中,实验组 VS 对照组
业务迭代的同时,如何与自身的过去比较
上面谈到了【贯穿层】的设计,贯穿层的设计其实不但可以应用在多个活动的场景,有些场景,我们的 业务需要和去年或上个季度的自身对比,同时业务还不断在多个方面运用 AB Test 迭代。
类似与上面这种层次设计,在推荐系统中较为常见, **在某一些产品或系统中,贯穿层不能够完全没有策略,那么采用去年或上个季度的策略,代表着基准值,从而量化�
- 原文作者:知识铺
- 原文链接:https://geek.zshipu.com/post/%E4%BA%92%E8%81%94%E7%BD%91/%E6%90%AD%E5%BB%BA%E4%BC%81%E4%B8%9A%E7%BA%A7%E5%B9%B3%E5%8F%B0%E5%AE%9E%E8%B7%B5/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。
- 免责声明:本页面内容均来源于站内编辑发布,部分信息来源互联网,并不意味着本站赞同其观点或者证实其内容的真实性,如涉及版权等问题,请立即联系客服进行更改或删除,保证您的合法权益。转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。也可以邮件至 sblig@126.com