ABTEST实验平台
ABTEST实验平台
一、单层实验
一般早期的ab-test都是单层实验,逻辑非常简单,比如使用userId/deviceId做hash然后取模,将流 量打在0-99,做成100份。
有如下问题:
1、扩展性差,只能同时支持少量实验。但是以数据驱动的业务,需要极快的创新速度,大量的创新 需要被测试,会严重delay业务。
2、如果在单层同时进行多个实验,实验之间不是独立事件,并行的时候,同一个策略,只能进行一 个实验,如果多个并行支持,无法实现。不同策略之间也有影响。
3、流量饥饿问题:假设我们整体用户要做5个实验,如果前2个实验占据了大部分的流量,后面的3个 实验就有很少的流量可以供使用,甚至没有流量可用。
4、流量偏置问题:假设上游的实验把所有的年轻人都获取了,下游的实验,没有年轻人的样本。导致有偏差。
二、多层实验优势:
1、突破限制,加速迭代:以前单层最多10个组(总流量有限,分组太多会失去置信度)。现在可以无限分层,每层100%流量再分组,理论上同时在线实验组不受限;
2、层与层间流量正交,还有业务场景间也流量正交,不用担心不同场景间的abtest互相影响;
3、独立平台:除了推荐搜索业务,抽离架构依赖,独立为通用ABTEST实验平台,让其它业务都可接入
三、ABTEST实验闭环
ABTEST目的观测的指标需要多维度对比,以及观测显著性效果,用于判断 是否放量、推全、下线实验依据;
原来方式是需要将数据报表打通到报表系统,在报表系统上观测数据效果,缺点就是实验策略是什么都要一一 对应,链路太长,效率比较低;
后面将整个数据指标迁移到abtest实验平台,直接可以看到某个实验的实验效果数据,提高效率;
点击实验效果观测:
此处显著性需要再调整为直接给是否显著,而不给数值
四、未来展望
- 自动化报警提醒,将实验结论可自动化通知到相关人员;
- 再则可自动化扩量实验、回收下线实验
五、参考架构资料
参考google重叠实验论文 https://ai.google/research/pubs/pub36500
本文地址:https://blog.csdn.net/duck_genuine/article/details/108871414