火山引擎 A/B 测试的思考与实践

发表于 3年以前  | 总阅读数:313 次

本文整理自火山引擎开发者社区 Meetup 第四期同名演讲,主要为大家介绍了为什么要做 A/B 测试、火山引擎 A/B 测试系统架构及最佳实践。

为什么要做 A/B 测试

首先我们看一个案例。字节跳动有一款中视频产品叫西瓜视频,最早它叫做头条视频。为了提升产品的品牌辨识度,团队想给它起个更好的名字。经过一些内部调研和头脑风暴,征集到了西瓜视频、奇妙视频、筷子视频、阳光视频 4 个名字,于是团队就针对一共 5 个 APP 名称进行了 A/B 实验。这个实验中唯一改变的是应用市场里该产品的名称和对应的 logo,实验目的是为了验证哪一个应用名称能更好地提升“头条视频” APP 在应用商店的点击率。最后西瓜视频和奇妙视频的点击率位列前二,但差距不显著,结合用户调性等因素的综合考量后,最终决定头条视频正式更名为西瓜视频。

通过这个案例可以看到,A/B 测试可以帮助业务做最终决策。结合案例的直观感受,我们可以这样来定义 A/B 测试:在同一时间对目标受众做科学抽样、分组测试以评估效果。

以上图图示为例,假设我们有 100 万用户要进行 A/B 测试:

  • 先选定目标受众,比如一线城市的用户。
  • A/B 测试不可能对所有用户都进行实验,所以要进行科学抽样,选择小部分流量进行实验。
  • 抽样之后需要对样本进行分组,比如 A 组保持现状,B 组的某一个因素有所改变。
  • 分组之后在同一时间进行实验,就可以看到改变变量后用户行为的变化。
  • 再根据对应实验目标的指标,比如点击率的高低,来评估实验的结果。

以上就是我们对 A/B 测试的定义。目前,A/B 测试已被 Google、Facebook、亚马逊等大型互联网公司广泛采用;字节跳动更是在 2012 年成立之初便开始使用 A/B 测试,公司内部一直流传一句话:一切皆可 A/B 测试。A/B 测试在字节跳动已是非常基础的设施和文化,目前,字节跳动累计已有 80W+ 的 A/B 实验,日新增实验 1500+,同时运行试验 1W+,服务 500+ 业务线。

那我们为什么要做 A/B 测试呢?我总结有 3 点原因:

  • 风险控制:小流量实验可以避免直接上线效果不好造成损失。其次,实验迭代的过程中,决策都是有科学依据的,可以避免系统性的偏差。
  • 因果推断:我们相信 A/B 实验中的优化和改变最终能影响到线上数据以及用户的行为。在这个前提下,A/B 测试就是最好的因果推断工具。
  • 复利效应:A/B 测试是可以持续不断进行的实验,即使一次实验提升的效果不大,但是长期下来复利效应的积累会产生很大的变化和回报。

A/B 测试系统实现

了解了我们为什么要做 A/B 测试,下面我们来看一下火山引擎的 A/B 测试系统是如何实现的。

上图是火山引擎 A/B 测试系统的架构示意图,整体架构分为几层:

  • 运行环境层:在最底层,服务可以运行在容器内,也可以运行在物理机上。
  • 基础设施层:会用到关系型数据库和键值对。因为 A/B 测试要处理很大的数据量,这一层也会使用离线和实时的大数据组件。
  • 服务层:包括实验所需的分流服务、元信息服务、调度服务等。在 A/B 测试中我们也需要标识用户,因此这一层有设备服务。为了提供多种数据查询,还有 OLAP 引擎。
  • 业务层:包括实验管理、指标管理、Feature 管理、评估报告等。
  • 接入层:包括 CDN、网络防火墙、负载均衡。
  • 应用层:提供管理后台控制实验、查看报告等,SDK 调用。

下面介绍几个实验流程的实现。

客户端实验参数传递及生效过程

客户端实验的流程如上图所示:

  • 业务方开发策略,确定实验内容;
  • 枚举策略中的映射关系并在客户端实现映射关系;
  • 创建并开启实验;
  • 客户端已经集成了火山引擎 A/B 测试系统的 SDK,向 A/B 测试系统请求分流服务,判断用户命中哪些实验哪些版本,下发参数;
  • 客户端从 SDK 取到参数,进行相对应的流程完成实验。

服务端实验参数传递及生效过程

服务端的实验和客户端类似:

  • 设计实验;
  • 服务端实验的 SDK 是跟业务系统比如服务端集成在一起。客户是从其他 C 端用户直接请求业务的服务端,该服务端会在本地 SDK 做决策;
  • 决策完之后将参数下发到下游,使策略生效。

统计分析实践

在统计分析中,我们总结了一些有用的实践经验:

  • 确定业务的指标体系:可以从宏观/微观、长期/短期、横向/纵向三个角度建设指标体系。
  • 分类检验:对指标进行置信度计算的时候,并不会每次都用同一套方法,而是针对不同的指标类型(包括转化类、人均类、CTR 类等)进行不同的建模采用不同的方法。
  • 统计修正:如果一个实验开了多个组,可能犯了多重比较的错误。还有时开完实验之后每天都会查看结果,这就犯了连续观测的错误。所以在实践中需要有一些统计修正的方法来修正行为。
  • 基于叶贝斯体系的探索:区别于经典的假设检验,我们也在探索基于叶贝斯体系,如何评估实验效果,降低面向用户使用时候的理解门槛。在智能流量调优、模型超参数搜索等场景下有具体落地。

这里也跟大家分享一些 A/B 实验设计背后的思考:

  • 避免过度曝光:A/B 实验中有一个很关键的点是决策哪些样本应该进入实验。如果所有打开应用的人都能命中实验,实验结果就不会很明显。
  • 进组和出组:假设我们对北京的用户进行了实验,有些人出差或者旅游离开北京之后还能命中实验吗?我们可以把这个决策留给实验者,让实验者自己决定是进组还是出组。
  • 和 Feature Flag 的珠联璧合:实验之前可以把能进行实验的内容抽象成 Feature Flag,简单理解成功能开关。实验完成之后的上线或者重复实验,也可用 Feature Flag 进行管理。

字节跳动 A/B 测试最佳实践

在字节跳动,A/B 测试已经是一种企业文化,大家都认可其价值,达成共识才能一起探讨。A/B 测试跟其他环节是紧密相关的。我们在收集和分析数据之后会得到一些洞察,基于这些洞察可以知道有些环节是比较薄弱的,可进行提升,然后就可以提出假设,设计 A/B 实验,完成实验之后评估效果。有可能实验没有达到预期效果,可以对实验进行迭代继续收集数据,这样就形成了以 A/B 测试为核心的业务增长闭环。

下面为大家介绍如何完整进行一次 A/B 实验。

如何产生好的实验想法

关于如何产生好的实验想法,我们可以从定量分析和定性分析几个角度来看。前面提到的构建完善的指标体系就是定量分析,这里不再赘述。在收集到指标数据以后,对于指标发生的异动进行现象分析,针对已存在问题(非异动),则可以进行新的产品策略或者运营策略迭代执行。

定性分析可以分为三个方面:

  • 产品本身的价值主张是什么?比如一款打车 APP 的价值主张是通过共享经济实现社会的效率提升,这个产品有没有很好地体现价值主张?可以从这一方面产生一些实验想法。

  • 推动因素

  • 相关性:同一个页面中如果有不相关的功能,用户大概率也不会点击,这样的设计就没有效果。

  • 清晰度:要表达的内容(比如命名)是否足够清晰。

  • 紧迫性:对于有时间周期的活动,可以设计一些事件营造紧迫感。

  • 阻碍因素:

  • 注意力分散:避免在一个页面放五花八门的信息让用户找不到重点。

  • 焦虑性:有的地方可能给了用户很多选择,也会造成选择困难,不自觉地形成一种焦虑感,不如简单一些只设计一个选择。

如何建立一个有效的实验假设

我们需要针对一个用户群体做出改变,然后产生一定的影响。但是这个假设不是无脑定的,要有逻辑性是合理的,最终能通过指标来评估变化的影响。针对这几个要素,我们总结出了设计 A/B 实验的 PICOT 原则,即 Population、Intervention、Comparison、Outcome、Time,明确对什么样的用户做出了什么样的改变,然后进行分组比较,最终需要设计衡量结果的指标,并决策实验要进行多长时间。

A/B 测试效果评估

看哪些数据

上图是一份 A/B 测试实验报告,可以看到指标在实验版本里是绝对值,还有变化值以及置信区间。置信区间是指假设策略全量上线,你有 95% 的把握会看到真实的指标收益在 [,] 这个范围内。置信区间越窄且不包含 0,可信度就越高。从「查看图表」进入选择差异值可以观察累计 diff 趋势图,如果呈现置信区间逐渐变窄的现象,说明随着样本量越来越大,我们对评估结果的信心就越来越强。

指标变化是显著的吗

A/B 实验的结果有以下几种:

  • 正向显著:说明当前样本容量条件下,实验版本优于对照版本,实验结果和假设一致;
  • 负向显著:说明当前样本容量条件下,实验版本不优于对照版本,实验结果和假设不一致;
  • 不显著:
  • 确实不显著:可以参考 MDE 指标是否符合预期,如果符合,则说明结果确实不显著。
  • 其他原因导致的不显著:比如样本容量小,指标对应的用户行为渗透率低,实验时长较短等。在这些情况下,如果实验效果不显著,可以进一步优化实验,比如增大样本量,扩大流量、再观察一段时间积累更多进组用户等。

接下来我们可以再看两个案例。

哪个首页新 UI 版本更受欢迎

今日头条 UI 整体风格偏大龄被诟病已久,不利于年轻和女性用户泛化,历史上几次红头改灰头实验都对大盘数据显著负向。因此团队设计了 A/B 实验,目标是在可接受的负向范围内,改一版用户评价更好的 UI。通过控制变量法,对以下变量分别开展数次 A/B 实验:

  • 头部色值饱和度
  • 字号
  • 字重
  • 上下间距
  • 左右间距
  • 底部 tab icon
  • 结合用户调研(结果显示:年轻用户和女性用户对新 UI 更偏好)

综合来看,效果最好的 UI 版本如图 2 所示,全量上线。

新 UI 上线后,Stay duration 显著负向从-0.38% 降至 -0.24%,图文类时长显著 +1.66%,搜索渗透显著 +1.47%,高频用户(占 71%)已逐渐适应新 UI。

选择更优的视频上滑引导产品形态

某款短视频在刚面世时,很多用户都不知道上滑的玩法,因此就设计实验验证如何能更好地引导用户上滑。实验目标定为优化后提升新用户留存,上滑操作渗透率提升 1%,错误操作渗透率下降 1%。定向受众为新用户,面向 10% 的线上流量进行为期 1 个月的实验。

我们做了两轮实验,第一轮实验结果并不符合预期,上滑操作渗透率下降 1% 且显著,错误操作渗透率提升 1.5%,不符合预期。新用户留存未见显著上升。但在不符合预期的情况下,还是能做一些分析来发现原因。因此经过改进我们做了第二轮实验,结果上滑操作渗透率上升 1.5% 且显著,新用户 7 日内留存提升 1%-1.8%,且指标结果呈显著,符合预期。

上面的例子就说明了我们可以把 A/B 测试当成一个理解用户的工具。

展望

最后想跟大家一起展望一下 A/B 测试行业未来的情况。从行业前景来看:

  • 认知率和普及率在高速提升:我们之前做过一个调研,发现 A/B 测试在国内整体认知度较低,可能低到一个难以想象的数字。我们认为在未来 5-10 年内,A/B 测试的认知度可能会有 50-100 倍的提升,这个市场还是一片蓝海。
  • 从 nice-to-have 到 must-have:现在很多人认为 A/B 测试是一个锦上添花的工具,但在数据驱动越来越重要的今天,A/B 测试是必须要掌握的工具,是企业开展业务过程中的刚需,否则在行业竞争中就会失去优势。
  • 破圈:我们也发现 A/B 测试正在破圈。大家的印象中 A/B 测试只有互联网公司会用,但是我们在交流的过程中发现,很多传统企业虽然没有线上业务,但如果能解决数据收集的问题,A/B 测试也能满足传统企业优化的诉求。

从技术趋势上来看,有这样几个发展方向:

  • 智能化:A/B 测试目前还处在早期阶段,一些实验结论或实验洞察对数据和用户属性的利用还不是很充分。如果 A/B 测试能和统计方法、算法模型相结合,很可能提高整个行业的水平。
  • 场景化:很多场景还没有开始使用 A/B 测试,未来更多的行业场景能和 A/B 测试相结合,让 A/B 测试更易用。
  • 被集成:目前我们的 A/B 测试平台可以一站式管理实验、查看报告,但是一些用户的业务已经很成熟,希望 A/B 测试能够走入业务和系统,更顺滑地使用。所以 A/B 测试技术也需要提高自身被集成的能力,无缝地和各种业务、系统结合起来。

Q&A

Q:A/B 测试对用户体量有没有基本限制?小用户量在进行 A/B 测试时有什么要注意的吗?

A:A/B 测试方法本身对用户量没有限制,但是如果实验样本太少,就很难看到显著的结果,收益比较小。

Q:火山引擎 A/B 测试和算法等数据科学有哪些结合的尝试和实践?

A:我们内部在做的一些事情可以简单介绍一下:比如基于多臂老虎机的智能实验,已经在开始应用一些算法。此外我们也在探索参数搜索的实验,提升搜索参数的速度,让 A/B 测试更智能化。

Q:A/B 实验一般要测试多才可以看到结果?

A:严格意义上,开多久是和实验能带来的影响有关系的,以我们的经验值来看,一般是要覆盖一个完整的用户生命周期。我们一般是以周为单位,实验至少开启 1-2 周。

Q:A/B 测试在实验结果上有没有自动归因的能力,帮用户直接定位到是什么原因引起实验结果好或者差的?

A:前面提到的一些智能化探索会对自动归因有帮助,但是自动归因还有一个很重要的点是,A/B 测试实验数据背后的原因可能需要很多业务知识的输入或者很有力的指标建设才能推断出来。

Q:如此多的实验,如何保证实验的正交?

A:我们通过大量的模拟实验,以及对系统监控的自检来保证正交,一旦发现数据超过了阈值就会及时进行调整。

本文由哈喽比特于3年以前收录,如有侵权请联系我们。
文章来源:https://mp.weixin.qq.com/s/45q4vrZQGLhFq6EmTypFMA

 相关推荐

刘强东夫妇:“移民美国”传言被驳斥

京东创始人刘强东和其妻子章泽天最近成为了互联网舆论关注的焦点。有关他们“移民美国”和在美国购买豪宅的传言在互联网上广泛传播。然而,京东官方通过微博发言人发布的消息澄清了这些传言,称这些言论纯属虚假信息和蓄意捏造。

发布于:1年以前  |  808次阅读  |  详细内容 »

博主曝三大运营商,将集体采购百万台华为Mate60系列

日前,据博主“@超能数码君老周”爆料,国内三大运营商中国移动、中国电信和中国联通预计将集体采购百万台规模的华为Mate60系列手机。

发布于:1年以前  |  770次阅读  |  详细内容 »

ASML CEO警告:出口管制不是可行做法,不要“逼迫中国大陆创新”

据报道,荷兰半导体设备公司ASML正看到美国对华遏制政策的负面影响。阿斯麦(ASML)CEO彼得·温宁克在一档电视节目中分享了他对中国大陆问题以及该公司面临的出口管制和保护主义的看法。彼得曾在多个场合表达了他对出口管制以及中荷经济关系的担忧。

发布于:1年以前  |  756次阅读  |  详细内容 »

抖音中长视频App青桃更名抖音精选,字节再发力对抗B站

今年早些时候,抖音悄然上线了一款名为“青桃”的 App,Slogan 为“看见你的热爱”,根据应用介绍可知,“青桃”是一个属于年轻人的兴趣知识视频平台,由抖音官方出品的中长视频关联版本,整体风格有些类似B站。

发布于:1年以前  |  648次阅读  |  详细内容 »

威马CDO:中国每百户家庭仅17户有车

日前,威马汽车首席数据官梅松林转发了一份“世界各国地区拥车率排行榜”,同时,他发文表示:中国汽车普及率低于非洲国家尼日利亚,每百户家庭仅17户有车。意大利世界排名第一,每十户中九户有车。

发布于:1年以前  |  589次阅读  |  详细内容 »

研究发现维生素 C 等抗氧化剂会刺激癌症生长和转移

近日,一项新的研究发现,维生素 C 和 E 等抗氧化剂会激活一种机制,刺激癌症肿瘤中新血管的生长,帮助它们生长和扩散。

发布于:1年以前  |  449次阅读  |  详细内容 »

苹果据称正引入3D打印技术,用以生产智能手表的钢质底盘

据媒体援引消息人士报道,苹果公司正在测试使用3D打印技术来生产其智能手表的钢质底盘。消息传出后,3D系统一度大涨超10%,不过截至周三收盘,该股涨幅回落至2%以内。

发布于:1年以前  |  446次阅读  |  详细内容 »

千万级抖音网红秀才账号被封禁

9月2日,坐拥千万粉丝的网红主播“秀才”账号被封禁,在社交媒体平台上引发热议。平台相关负责人表示,“秀才”账号违反平台相关规定,已封禁。据知情人士透露,秀才近期被举报存在违法行为,这可能是他被封禁的部分原因。据悉,“秀才”年龄39岁,是安徽省亳州市蒙城县人,抖音网红,粉丝数量超1200万。他曾被称为“中老年...

发布于:1年以前  |  445次阅读  |  详细内容 »

亚马逊股东起诉公司和贝索斯,称其在购买卫星发射服务时忽视了 SpaceX

9月3日消息,亚马逊的一些股东,包括持有该公司股票的一家养老基金,日前对亚马逊、其创始人贝索斯和其董事会提起诉讼,指控他们在为 Project Kuiper 卫星星座项目购买发射服务时“违反了信义义务”。

发布于:1年以前  |  444次阅读  |  详细内容 »

苹果上线AppsbyApple网站,以推广自家应用程序

据消息,为推广自家应用,苹果现推出了一个名为“Apps by Apple”的网站,展示了苹果为旗下产品(如 iPhone、iPad、Apple Watch、Mac 和 Apple TV)开发的各种应用程序。

发布于:1年以前  |  442次阅读  |  详细内容 »

特斯拉美国降价引发投资者不满:“这是短期麻醉剂”

特斯拉本周在美国大幅下调Model S和X售价,引发了该公司一些最坚定支持者的不满。知名特斯拉多头、未来基金(Future Fund)管理合伙人加里·布莱克发帖称,降价是一种“短期麻醉剂”,会让潜在客户等待进一步降价。

发布于:1年以前  |  441次阅读  |  详细内容 »

光刻机巨头阿斯麦:拿到许可,继续对华出口

据外媒9月2日报道,荷兰半导体设备制造商阿斯麦称,尽管荷兰政府颁布的半导体设备出口管制新规9月正式生效,但该公司已获得在2023年底以前向中国运送受限制芯片制造机器的许可。

发布于:1年以前  |  437次阅读  |  详细内容 »

马斯克与库克首次隔空合作:为苹果提供卫星服务

近日,根据美国证券交易委员会的文件显示,苹果卫星服务提供商 Globalstar 近期向马斯克旗下的 SpaceX 支付 6400 万美元(约 4.65 亿元人民币)。用于在 2023-2025 年期间,发射卫星,进一步扩展苹果 iPhone 系列的 SOS 卫星服务。

发布于:1年以前  |  430次阅读  |  详细内容 »

𝕏(推特)调整隐私政策,可拿用户发布的信息训练 AI 模型

据报道,马斯克旗下社交平台𝕏(推特)日前调整了隐私政策,允许 𝕏 使用用户发布的信息来训练其人工智能(AI)模型。新的隐私政策将于 9 月 29 日生效。新政策规定,𝕏可能会使用所收集到的平台信息和公开可用的信息,来帮助训练 𝕏 的机器学习或人工智能模型。

发布于:1年以前  |  428次阅读  |  详细内容 »

荣耀CEO谈华为手机回归:替老同事们高兴,对行业也是好事

9月2日,荣耀CEO赵明在采访中谈及华为手机回归时表示,替老同事们高兴,觉得手机行业,由于华为的回归,让竞争充满了更多的可能性和更多的魅力,对行业来说也是件好事。

发布于:1年以前  |  423次阅读  |  详细内容 »

AI操控无人机能力超越人类冠军

《自然》30日发表的一篇论文报道了一个名为Swift的人工智能(AI)系统,该系统驾驶无人机的能力可在真实世界中一对一冠军赛里战胜人类对手。

发布于:1年以前  |  423次阅读  |  详细内容 »

AI生成的蘑菇科普书存在可致命错误

近日,非营利组织纽约真菌学会(NYMS)发出警告,表示亚马逊为代表的电商平台上,充斥着各种AI生成的蘑菇觅食科普书籍,其中存在诸多错误。

发布于:1年以前  |  420次阅读  |  详细内容 »

社交媒体平台𝕏计划收集用户生物识别数据与工作教育经历

社交媒体平台𝕏(原推特)新隐私政策提到:“在您同意的情况下,我们可能出于安全、安保和身份识别目的收集和使用您的生物识别信息。”

发布于:1年以前  |  411次阅读  |  详细内容 »

国产扫地机器人热销欧洲,国产割草机器人抢占欧洲草坪

2023年德国柏林消费电子展上,各大企业都带来了最新的理念和产品,而高端化、本土化的中国产品正在不断吸引欧洲等国际市场的目光。

发布于:1年以前  |  406次阅读  |  详细内容 »

罗永浩吐槽iPhone15和14不会有区别,除了序列号变了

罗永浩日前在直播中吐槽苹果即将推出的 iPhone 新品,具体内容为:“以我对我‘子公司’的了解,我认为 iPhone 15 跟 iPhone 14 不会有什么区别的,除了序(列)号变了,这个‘不要脸’的东西,这个‘臭厨子’。

发布于:1年以前  |  398次阅读  |  详细内容 »
 相关文章
Android插件化方案 5年以前  |  237231次阅读
vscode超好用的代码书签插件Bookmarks 2年以前  |  8065次阅读
 目录