mul ab 的执行结果是_推荐系统之AB实验平台

上一篇文章介绍的是Feed流的UI设计,好的UI设计能极大的提高产品的体验和数据转化,那么怎么来衡量设计、算法、模型、策略、性能优化后给产品的关键指标的提升带来的效果呢?给我们提供答案的就是AB实验平台。

无法衡量就无法优化,对于互联网产品而言,不仅是推荐系统,整个 app 系统的更新迭代必然需要建立一套度量衡,来把控整个流程优化的方向。而 AB实验就是一个很好的进行变量控制和优化方向选取的工具,循环:衡量-发现-迭代-验证。所谓精细化迭代是一种建立在数据基础上的思维方式——用较少的成本获得较好的效果。无数据,不优化, 线上分流实验是进行推荐算法优化的必由之路。并且 AB实验不仅是推荐迭代的利器,他还可服务于所有需要逐步完善的产品迭代。有人说为什么需要 AB实验,为什么不能够前后进行实验比较;因为同时期测试的 AB实验非常有必要的原因是不同时间的测试无法说明 b 比 a 好,通常时间也是一个变量,比如电商的双十一等。

在网络分析中,A / B 测试(桶测试或分流测试)是一个随机实验,通常有两个变体,A 和 B 。利用控制变量法保持有单一变量的前提下,将 A 、B 数据进行对比,得出实验结论。AB 是一种科学的利用数据证明方案可行性的手段,一般在网站中广泛使用。 通过AB实验平台对迭代方案进行实验, 并结合数据进行分析,反向再验证和驱动方案,是一个发现问题、提出假设、印证猜想、不断优化的过程。合适的推荐方法是要经过不断的实验去验证,验证的过程也是在校验数据,从而优化推荐系统策略,最终提升用户新增和留存。


AB实验平台概述

AB实验平台的搭建核心是分流,将用户从多个维度进行人群的划分,标记成实验组、对照组。对于AB实验平台的分流有两个关键的策略:分流 & 分层策略。那么为什么要分流&分层呢?如果流量不进行分层、分流可能会导致流量饥饿,即实验一在进行中占用了全站的 80% 的流量,实验二就只能使用 20% 的流量。因此良好的分层、分流规则可以充分使用网站、App的流量。

分流

常见在同一层的分流策略有:

  • Random – 随机分流,用于可变结果集
  • Partition By User – 按用户切分 ,同一用户永远看到同样结果
  • Partition By Category – 按分类切分,针对不同分类测试算法针对性。

基于分流的实验——对于同一个人群包(用户画像平台选择),同一条推荐物料,采用不同标题,这种方式在广告营销的投放中应用较多。

在这个实验中,我们就是按用户切分的,把通过用户画像平台圈定的要进行实验的人群切分出来,再对圈定的人群包,再进行分桶,分成实验桶,对照桶。对最后效果数据进行比对,就能评估出同一条物料、对同样属性的人群不同的效果,当然这个开始一般都是选择小流量,实验效果比较明显后,再逐步扩量。

分层

分层中最重要的一个概念就是正交,层与层之间相互正交,层与层之间的实验不会受到相互的影响。在谈分流时基于按人群的划分介绍了一个实验的实例,我们假定上面的标题实验在“展示层”,现在我们要新上一个基于用户画像短期兴趣召回模型的实验,那么这个实验则在“算法层”。同一个用户可以在“展示层”的标题实验中,也可以在“算法层”的召回实验中。这就是分层。

实验平台架构

下图为整体架构图,比较便于大家理解,我们可以看到整体架构分为四层

  • Web层:提供平台UI,负责应用参数配置、实验配置、实验效果查看以及其他。
  • 服务层:提供权限控制、实验管理、拉取实验效果等功能。
  • 存储层:主要是数据存储功能。
  • 业务层:业务层结合SDK完成获取实验参数和获取应用参数的功能。

f888214e7ad8d7498a6113b5b4b4497a.png

分流模型的设计

如图所示,整体模型分为以下几个部分:

54b17b592d2139cb6a9f0df02905f7d5.png
  • App:表示一个应用,不同的应用对应的实验配置完全不同,首先从App上进行区分可以更加明确实验的归属。
  • Scene:表示某一类流量的集合,例如:搜索、美食筛选、到综筛选等,在这些流量上配置的实验互不干扰。
  • Layer:表示某一层(种)实验的集合。例如可以将在matching上做的实验放入Matching Layer中。流量命中时依次进入每个Layer获取实验配置参数,此时的Layer更像一个抽象概念,与具体的业务或者逻辑相关。
  • 条件Layer:是一种更加精细的流量控制方式,表示某一流量的某个或者某几个参数在满足一定条件下才会进行实验。进一步说就是相同Scene下,某一流量的参数A满足条件一时,采用一种实验配置策略;满足条件二时,采用另一种实验配置策略,那可以分为两层,如图3所示的Layer_3和Layer_4。例如:某流量需要在城市北京单独做实验,这种情况下,可以分为参数相同但是先决条件(即城市)互斥的两个Layer。此时的Layer在抽象的基础上更加的具体化。
  • Exp:表示具体实验,包括实验的分桶、实验参数、是否为垂直流量等等。

分流模型命中计算

实验命中模型是指,当一个请求过来时,返回全局统一的实验参数。所有的请求都会平均地落入每一个分桶中,并且不同的Layer之间能够保证流量的正交。

de10e2ca9c4de15634f9939e6ebb9ba0.png
  • Hash优先级:在实验命中过程中,第一次Hash首先判断命中垂直流量,如果没有命中,则进行第二次Hash再判断水平流量。
  • Hash因子:目前美团侧一般情况下为uuid,点评侧为dpid。
  • 垂直流量Hash串:Hash因子+scene_id。
  • 水平流量Hash串:Hash因子+scene_id+layer_id+layer_name。
  • 取模数:在Hash过程中,垂直流量按照总Bucket(默认取值100)取模;水平流量按照总Bucket数减去垂直流量Bucket数取模。这样的命中模型能保证无论是垂直的Bucket,还是水平的Bucket都是全局的1%。

实例解析

典型实验命中如下图所示:

9149593a17b3c75a7a86a2023819ba5c.png
  • 当一个请求过来时,命中顺序按照Hash优先级为先垂直流量后水平流量。
  • 首先利用垂直流量Hash串进行Hash并取模得到一个hashNum,如果命中了50~99,就会认为命中了垂直流量,直接返回V_Exp_1、V_Exp_2或者未命中。
  • 如果没有命中50~99,则认为命中了水平流量。再利用水平Hash因子进行Hash并取模得到一个hashNum,根据配置直接返回Exp_1、Exp_2或者未命中。

实验数据处理

在实验数据处理时,必须通过假设检验来确定差异不是来自于偶然,通过因果关系证明变化由测试桶的变化带来。假设检验是推论统计中用于检验统计假设的一种方法。而“统计假设”是可通过观察一组随机变量的模型进行检验的科学假说。一旦能估计未知参数,就会希望根据结果对未知的真正参数值做出适当的推论。 统计上对参数的假设,就是对一个或多个参数的论述。而其中欲检验其正确性的为零假设 ( null hypothesis ) ,零假设通常由研究者决定,反映研究者对未知参数的看法。相对于零假设的其他有关参数之论述是备择假设 ( alternative hypothesis ),它通常反映了执行检定的研究者对参数可能数值的另一种 ( 对立的 ) 看法 ( 换句话说,备择假设通常才是研究者最想知道的 ) 。

常见假设检验的种类包括:t 检验,Z 检验,卡方检验,F 检验等等。

这里简单介绍Z检验

Z 检验是一般用于大样本,平均值差异性检验的方法。它是用标准正态分布的理论来推断差异发生的概率,从而比较两个平均数平均数的差异是否显著。 当已知标准差时,验证一组数的均值是否与某一期望值相等时,用 Z 检验。

Z 检验的步骤 适用条件:已知一个总体均数;可得到一个样本均数及该样本标准误; 样本来自正态或近似正态总体。

第一步:建立虚无假设,即先假定两个平均数之间没有显著差异,

第二步:计算统计量 Z 值,对于不同类型的问题选用不同的统计量计算方法.

如果检验一个样本平均数 ( x ) 与一个已知的总体平均数 ( μ0 ) 的差异是否显著。其 Z 值计算公式为:

Z=(X-μ)/S/n的平方根

若 Z 值大于临界值,则认为为二者有差异,否则认为没差异。

总结

这篇文章较大篇幅是在介绍实验平台本身,作为一个产品人在实际的工作中,希望大家有这样的意识,很多问题如果我们没有明确的结论,不要忘记有AB实验平台这个工具,但是产品同学一定要明确实验的对象和实验的目的,然后和算法同学也好、设计同学也好,进行有效沟通,让实验真正的落地。特别是在大的平台型公司,业务方较多,假设你有一个好的产品idea,对于这个idea对数据效果的提升没有明确的把握时,建议先做个实验,看看效果,拿着数据,找业务同学、找领导获取更多资源,才更有底气。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值