AB实验遇到用户不均匀怎么办?—— vivo游戏中心业务实践经验分享

2023-11-01

作者:vivo 互联网数据分析团队 - Li Bingchao

AB实验是业务不断迭代、更新时最高效的验证方法之一;但在进行AB实验效果评估时需要特别关注“用户不均匀”的问题,稍不注意,产出的研究结论就可能谬以千里,给业务决策带来极大风险。因此我们游戏业务针对该问题,借助霍金实验团队已经实现的分层抽样(协变量平衡算法)能力,探究出一套基于用户分层逻辑的“事前用户分层”方案,和霍金实验平台项目团队、版本发布项目团队共同协作推进方案落地,提升游戏业务AB实验的用户均匀性。本文会基于实际应用案例,来给大家仔细阐述相关方法模型的思考过程,实现原理,应用结果,希望能够帮助大家在各自领域中解决用户不均匀问题时带来参考和启发。

一、引言

业务通过不断迭代更新来持续进步,AB实验是最高效的迭代验证方法之一,分析师则通过研究优化实验方案,评估业务实验效果来展现数据价值。这也是数据分析师的核心工作职责之一;这就要求实验方案和效果评估具备极高的科学性与准确性,但是在实际工作中,因为用户不均匀问题的存在,会直接影响到分析师产出结果的准确性,进而影响产品相关决策。

过去的几年里,游戏业务的分析师团队不断探索和研究AB实验中用户不均匀问题的解决方案,目前已经较好地解决了游戏业务中的此类问题。本文首先以用户不均匀的概念和影响为铺垫,接着以解决方案为主线阐述游戏分析师团队在解决AB实验中用户不均匀问题的实践成果,并展望未来。

二、什么是用户不均匀

2.1 什么是AB实验中的用户不均匀

基于AB实验逻辑的业务迭代有一个至关重要的前提假设:实验的两个组除了产品本身发生改动的唯一变量外,其他相关因素,尤其是用户本身的特征都是一致的,即两个人群的用户属性分布是完全均匀的

业务AB实验遇到的用户不均匀问题是指,用来评估业务效果的实验组、对照组两个人群集,由于人群划分方式(用户标识加密尾号分组等)、人群量级、或者观测指标本身特殊性等原因,导致两个人群集在核心效果评估指标的先验分布存在较大差异:

  • 【人群划分方式】:有些业务直接用手机标识进行人群划分,但手机标识和手机型号批次等相关,不具有充分的随机性;

  • 【人群量级】:人群量级过小时,抽样无法保证不同特征用户完全随机,导致用户分布不均;

  • 【指标特殊性】:游戏付费指标具备高稀疏性、非正态分布、非连续等特点,常规的抽样方式难以保证好的均匀性。

如下图所示(不同颜色代表不同先验特征的用户):

图片

再简单举个例子,比如实验组人群A相较于对照组人群B因为先验特征分布的差异,导致在业务的核心指标上,先验的历史表现即为A>B;这就导致利用两个人群集进行试验后,在业务效果评估时,如果人群A的某个指标>人群B,那么是因为业务策略带来的提升还是历史用户本身的差异呢?这就陷入了业务决策的困境。

2.2 游戏中心业务AB实验中的用户不均匀

游戏中心业务迭代中使用AB实验的场景主要为,版本迭代灰度AB实验,以及中心业务策略优化AB实验;在过往的AB实验过程中,两种场景都多次遇到过用户不均匀的问题,但两个场景的业务目的存在差异,故面临的用户不均匀问题也有区别。下面我们详细介绍一下两种场景的异同点。

2.2.1 游戏中心版本迭代中的用户不均匀

游戏中心版本迭代时,主要观测的指标为用户在中心活跃、游戏下载等指标;使用的人群划分方法为:利用对手机标识进行加密处理后的尾号进行分组,这种方法在大流量的情况下对于用户均匀性能保持不错的效果;但是版本迭代的关键特点就是小流量快速迭代,所以在小流量下就会导致不同活跃下载表现的用户在实验组、对照组中数量存在差异,进而导致两个人群在一些核心观测指标上存在不均匀现象,影响最终的版本放量决策。

2.2.2 游戏中心策略实验中的用户不均匀

游戏业务作为公司的主要创收业务,游戏中心策略实验时,除了观测活跃、下载指标之外,还需要观测游戏后向的收入指标变化;前面也提到活跃下载指标的均匀性在大流量下是可以保证的,而策略实验时的流量一般是较大的,历史数据也证明在策略实验的流量下,活跃分发指标的均匀性是可以保证的。

但游戏收入作为一种特殊的商业模式,与用户活跃、游戏下载存在较大差异,本身具有以下特殊性:

  • 【付费用户规模有限】:整体游戏活跃用户中,付费用户规模有限,随机抽取两组用户中,即使活跃用户量级一致,但付费用户量级本身可能存在较大差异,尤其是高付费用户在两组中分布存在差异。

  • 【收入分布非正态】:一定周期内游戏用户付费分布范围极大,但是大多数用户付费不高,所以几个极值高付费用户的差异就能够对整体收入结果产生较大影响。

  • 【游戏付费水平不固定】:用户游戏付费是和游戏强相关的,故用户的付费情况除了自身因素外,还和用户最近玩的游戏有关,即用户付费水平是一个不断变化的过程。

  • 【高付费值非连续分布】:高付费用户的定义是一个范围的概念,而且高付费的用户是有限的,所以具体高付费值并不是连续的,高付费之间也会存在明显差异,这个差异放到整体上时依然会产生较大的影响。

所以即使在中心策略实验场景较大的流量下,依然还是无法保证实验时收入指标的均匀性,原因可以归为两方面:

  1. 实验组和对照组中高、低付费用户的分布不均匀,付费用户量级存在较大差别。

  2. 高付费用户的付费值非连续分布,即使付费用户在各组分布均匀,但付费值依然存在一定差距。

三、用户不均匀的影响

vivo游戏中心作为公司专业的游戏分发平台,为了更好的服务好游戏中心用户,需要不断地对游戏中心产品进行优化迭代。AB实验作为主要的效果验证方式,通过对比业务关注的核心指标,选择最优的功能或版本进行全量,但用户不均匀问题会对整个流程闭环产生比较大的影响,主要包括以下几个方面:

1、影响业务数据的可解释性,导致业务效果的结论偏差

由下表可见,游戏中心历史一些业务策略实验中,策略对于收入项指标本无直接影响,但整个收入指标的波动均在10%以上;在此情况下,已经完全无法根据实验收入数据来评估业务策略对于收入的影响情况。

arpu=实验周期内活跃用户游戏下载后付费/活跃用户

图片

2、带来业务策略放量错误的风险

这里主要存在的风险在于效果负向策略被放量、效果正向策略无法及时放量。

3、导致灰度发版的无效率高,异常排查浪费大量人力

游戏中心灰度发版中,一年有8-10次的版本异常是由用户不均匀导致的,而且单次异常排查需要耗费各方人力共5人日,全年版本异常排查累计浪费人力40人日+/年

所以如何科学合理的解决游戏中心AB实验效果评估中的用户不均匀问题,对于整个游戏中心业务效果评估的发展具有重要意义。

四、如何应对用户不均匀问题

AB实验中的用户不均匀问题是数据分析师进行实验效果评估时一直都面临的问题;过往几年里,针对如何更合理,更高效的解决该问题,准确评估实验效果,游戏数据分析组的同事研究尝试了多种不同的解决方案:

从上述几个方案对比中可以看出,基于用户分层逻辑的“事前用户分层模型”是现阶段最科学、合理且效果稳定的解决方案。

五、游戏业务解决方案介绍——“事前用户分层”模型

本部分主要针对“事前用户分层”模型进行介绍,同时包含模型的设计,产品化实现,以及在游戏中心业务中的实际运用效果,便于大家直观了解模型的逻辑和效果。

5.1 分层模型介绍

如前面用户不均匀介绍部分所述,虽然中心版本灰度场景和中心策略优化场景的AB实验都面临着用户不均匀问题,但两个场景面临的不均匀问题存在差别;所以我们针对这两个场景,基于用户分层逻辑分别搭建针对分发指标和收入指标的分层模型,实验人群抽样时从不同用户分层中抽取同样数量的用户进入实验组和对照组,以期解决业务效果评估中的用户不均匀问题。

常规分层抽样逻辑:假设大盘活跃用户为N,分层后第i层大盘活跃用户为Ni,实验时各组实验抽样的流量为n,则实验组中第i层的抽样量级应该为:

5.1.1 用户游戏收入分层模型

中心策略AB实验时业务核心关注的付费指标中受用户不均匀影响的主要是活跃用户arpu,故针对该指标的定义,选取部分中间变量作为用户分层的依据,然后根据这些指标在中心活跃用户大盘中的表现,先按照单一指标分组,然后多个指标交叉组合形成最终的分层方案。

图片

5.1.2 用户分发分层模型

针对中心版本灰度实验时业务核心关注且受用户不均匀影响的分发指标,选取部分中间变量作为用户分层的依据;然后与收入分层模型采取一样的方法形成最终的分层方案。

图片

5.2 分层模型产品化实现

数据侧搭建完成用户分层模型后,想要实现在实验和灰度时依赖于分层模型进行分流抽样,需要借助产品平台的功能;于是我们和霍金实验平台、以及版本发布系统合作,由霍金和版本发布系统同事开发相关功能将我们搭建好的用户分层模型分别接入霍金实验平台和版本发布系统,实现在实验和版本灰度的用户分流时基于用户分层逻辑进行,保证实验和版本灰度时各个人群组之间的用户均匀性,提升后向效果评估的科学性和准确性。

具体分流逻辑示意图如下:(图中四个不同颜色代表不同的特征分层人群)

图片

具体产品平台功能实现方式详见:参考资料[2]

5.3  “事前用户分层”的测试效果

霍金实验平台和版本发布系统相关功能上线后,数据分析侧开展了对应平台的AA实验,验证用户分层逻辑对于用户不均匀问题的解决效果是否达到预期水平。

5.3.1 霍金实验平台AA测试结论

用户分层模型在不影响原有分发指标均匀性的前提下,能够大幅提升中心实验收入数据的均匀性。

  • 分发均匀性:两种分流逻辑下,分发相关指标波动均不显著,但用户分层逻辑下指标波动绝对值远小于hash分流逻辑

  • hash分组逻辑下,收入arpu1波动11.6%;但用户分层抽样逻辑下,两个实验组收入arpu1波动分别为4.8%1.9%,收入arpu2波动分别为3.3%1.5%,均匀性大幅提升。

备注:收入指标及活跃相关指标对比计算相对变化值;分发指标对比计算绝对变化值;收入arpu1、2代表不同的收入计算逻辑。

5.3.2 版本发布系统AA测试结论

用户分层模型在分发指标的均匀性上,优于原有的手机标识加密尾号分流方式。

  • 分发均匀性:用户分层逻辑下,各个分发指标均波动不显著;但手机标识加密尾号分流逻辑下,游戏分发相关指标E显著变化,即在该指标上存在用户不均匀

图片

5.4 功能上线收益

“事前用户分层”模型在游戏中心业务实验和灰度发版中上线使用后,能够带来以下几方面的显著收益:

  1. 【灰度有效发版率显著提升9pt】:分层逻辑上线后,游戏中心有效灰度发版(用户均匀)的概率从86% 提升到95%,不均匀次数从10次/年,下降到2~3次/年(近半年仅有1次)。

  2. 【节省异常排查人力35人日/年】:发版异常减少7次/年,单次异常排查需各方共5人日,共节省版本异常排查人力35人日/年。

  3. 【正向策略实验提前全量带来中心年收入+0.2%】:用户分层逻辑上线后,正向策略提前得出结论全量,能够带来游戏中心年游戏分发+0.1%,年游戏收入+0.2%。

  4. 【负向策略实验及时下线减少收入损失】:提升实验负向时的判断及时性和准确性,降低负向实验长期观察带来的收入损失,约占中心年收入的0.1%。

六、总结和展望

对于AB实验中面临的用户不均匀问题,我们借鉴过往经验,经过不断尝试和探索,基于用户分层的逻辑开发了“事前用户分层”模型,并在霍金项目团队和版本发布系统项目团队的大力支持下,对不同场景进行差异化处理,在解决游戏中心AB实验中的用户不均匀问题中取得了较好效果;在游戏中心版本灰度场景中,事前用户分层方案已基本解决了用户不均匀问题;但在中心策略实验中,由于游戏收入数据的特殊性,用户分层方案能够解决高、低付费用户在实验组中分布不均的问题;但并不能完全解决高付费值非连续的问题,故收入的波动依然在1%~2%,但已经远低于原有分流方式下的收入波动幅度。

此外,现阶段采用的“事前用户分层”方案能够大幅提升用户的均匀性概率,并不能完全杜绝用户不均匀问题;一方面原因是对业务指标的分层逻辑依赖于工作者的经验判断,但人工分层的逻辑存在较大的主观性;另一方面原因是选取的指标较少,依赖信息不够全面;后续我们也会不断尝试探索,卷入更多的指标信息,同时将机器学习等模型运用到用户分层体系搭建中,以求进一步解决游戏业务中用户的均匀性问题。

最后希望本文能为不同业务解决AB实验时面临的用户不均匀问题带来参考和启发。

参考文献:

  1. 茆诗松, 王静龙, 濮晓龙. 《高等数理统计(第二版)》

  2. vivo互联网技术《vivo霍金实验平台设计与实践-平台产品系列02

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AB实验遇到用户不均匀怎么办?—— vivo游戏中心业务实践经验分享 的相关文章

  • Java面向对象编程

    在 OSI 分层模型中 把传输的比特流划分为帧 是哪一层的功能 A 物理层 B 网络层 C 数据链路层 D 传输层 答案 C 下面关于源端口地址和目标端口地址的描述中 正确的是 A 在TCP UDP传输段中 源端口地址和目的端口地址是不能相
  • Activity启动流程源码分析-浅析生命周期函数

    源码分析 接着上一篇 Activity启动流程源码分析 setContentView源码阅读 的讲解 本节介绍一下Activity的生命周期函数何时被调用 要看Activity的生命周期函数何时被调用 不得不翻阅 ActivityThrea
  • c++中string转UNIX时间戳

    最近的业务 需要用到string转UNIX时间戳 记录一下实现过程 c 代码如下 include
  • Pandas学习笔记

    Pandas学习笔记 1 Pandas介绍 1 1 认识Pandas 1 2 案例 2 Pandas 数据结构 2 1 Series 2 2 DataFram 3 Pandas的基本数据操作 3 1 索引操作 3 2 赋值 3 3 排序 4
  • 各种图论模型及其解答

    原文转自Jelline blog http blog chinaunix net uid 9112803 id 411340 html 本文用另一种思路重新组织 图论及其应用 相关知识 首先 用通俗化语言阐述了如何对事物间联系的问题进行图论
  • C++学习之空间配置器--------(二级空间配置器)

    二级空间配置器 出现的原因 二级空间配置器的原理 二级空间配置器的底层代码解析 出现的原因 原因 由于我们申请的空间有时会太小 而频繁的去申请这样的小空间就会造成太多小额区块造成的内存碎片 对于这些小额区块所带来的不仅仅是内存碎片 更是配置
  • python每日一练-合并两个有序的链表(超详细讲解)

    先来看题 首先对于链表我也是首次接触 所以自己取学习了一下关于链表的知识 首先我们先来看题目 因为本题目需要使用到递归的方法 所以我们首先先来介绍一下什么是递归 递归又是怎么用的 函数在运行时调用自己 这个函数就是递归函数 调用的过程就叫做
  • go之官方依赖管理工具dep安装和使用

    前言 大家都知道go没有一个自己的包管理平台 社区里go的第三方包托管在各个git托管平台 需要用到包时通过go get 命令工具安装 但这个工具没有版本描述性文件 在go的世界里没有 package json 这种文件 这个给我们带来直接
  • Conda executable is not found

    1 问题 当我安装PyTorch之后在pycharm中配置pytorch的时候出现了如图中的样子 2 解决方式 2 1点击文件夹图标 2 2 因为是Conda executable 所以我们要选择Conda exe不能选择Python解释器
  • 关于eclipse的项目前有感叹号和errors exist in required project相关问题

    一般来说 项目运行中 各个类的信息中并没有报错 但在运行中会出现errors exist in required project 且有时候运行也会成功 这种情况是由于项目中其他的类存在问题未解决 导致影响到项目整体运行 另一种情况是类并未有
  • 牛客网-做题笔记

    网易有道2017内推选择题 XML数据结构有且只有一个根节点 可以嵌套 XML解析分为三种 SAX解析 PULL解析和DOM解析 求循环队列元素个数 rear front Max Max 非循环队列 元素个数为 rear front 1 程
  • 微服务链路追踪zipkin

    微服务链路追踪sleuth zipkin 一 安装zipkin 二 sleuth概念解析 1 trace 2 span 3 annotation 4 采样率 三 zipkin流程图 1 zipkin流程图 2 追踪流程 四 注意事项以及配置
  • Log4J2在Web工程下日志无法写入文件的问题

    接触Log4J不久 之前在Java工程测试学习的 一切正常 前几天在做一个JSP的案子 Web工程下 同样的配置文件 却写不到文件 在控制台日志正常输出 Web工程下 在Java类main方法中测试 也可以正常写入文件 控制台也是正常 经过
  • 互动直播的技术细节和解决方案实践经验谈

    目录 1 互动直播背景 2 连麦流程 功能与技术指标 2 1 连麦的业务流程 2 2 互动直播的功能 2 3 技术指标 2 4 应用领域 3 主流的技术方案 3 1 互动直播技术领域 3 2 主流的技术方案 3 2 1 基于RTMP技术的连
  • 背调小计

    新员工入职前的背调 了解下 附上链接 https zhuanlan zhihu com p 33248594
  • (2021-8-17) Qt5 中自带的几种button控件简介

    本节参考正点原子qt教程 1 按钮简介 在Qt中最常用的控件应该就是按钮了 点击按钮 即可发送信号 触发响应事件 实现人机交互 在Qt中内置了六中按钮控件 1 QPushButton QPushButton 继承 QAbstractButt
  • SQL server无法启动服务,提示“错误1069: 由于登录失败而无法启动服务”

    转自 http www 111cn net database mssqlserver 52624 htm 今天在启动sqlserver2008时碰到了遇到SQL server无法启动服务 提示 错误1069 由于登录失败而无法启动服务 提示
  • C语言字符串完成大小写转换

    4 编写一个程序 可以一直接收键盘字符 如果是小写字符就输出对应的大写字符 如果接收的是大写字符 就输出对应的小写字符 如果是数字不输出 此题第一步需要遍历整个输入字符串 第二部完成循环判断赋值将符合条件的值赋值到新的字符串数组中即可 de
  • 线程的五种状态

    1 新建状态 New 创建一个新的线程对象 2 就绪状态 Runnable 线程创建对象后 其他线程调用start 方法 该线程处于就绪状态 资源已经准备就绪 等待CPU资源 3 运行状态 Running 处于就绪状态的线程获取到CPU资源

随机推荐

  • javascript 琐碎知识点1

    1 Javascript是一种基于对象和事件驱动 并具有安全性能的脚本语言 2 Javascript的特点 1 一种脚本编写语言 它的基本结构与C C 十分类似 但它不像这些语言需要先编译 而是在程序运行的过程中被逐行地进行解释 2 基于对
  • Redis分布式锁的实现原理看这篇就够了~

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 一 写在前面 现在面试 一般都会聊聊分布式系统这块的东西 通常面试官都会从服务框架 Spring Cloud Dubbo 聊起 一路聊到分布式事务 分布式锁 ZooKeep
  • ffmpeg编译iOS的.a库

    一 编译环境 系统 本人编译是在mac下的 此方法同样适用于linux yasm 接下来介绍yasm的安装 二 yasm的安装 打开终端 不用管当前目录是在哪 直接执行 brew install yasm 如果提示brew not foun
  • VTM遇到的问题集锦

    文章目录 一 待更新中 1 配置好VTM后 并在调试界面输入命令参数后 点击运行 既不报错 也没有任何结果 2 未加载符号文件 3 编码闪退问题 4 VTM AI编码帧数为总帧数八分之一 一 待更新中 1 配置好VTM后 并在调试界面输入命
  • 因果分析系列4--基于python的因果图模型学习

    因果分析系列4 因果图模型 1 因果图模型介绍 2 基于python绘制因果图模型 3 三种常见的因果图结构 3 1 链结构 chain 3 2 叉结构 fork 3 3 对撞结构 collider 4 巩固思考示例 在上一节中 介绍了因果
  • NodeJS优缺点及适用场景讨论

    http www xprogrammer com 159 html 概述 NodeJS宣称其目标是 旨在提供一种简单的构建可伸缩网络程序的方法 那么它的出现是为了解决什么问题呢 它有什么优缺点以及它适用于什么场景呢 本文就个人使用经验对这些
  • MongoDB设置自增字段

    在使用mongoDB数据库的时候有时候想要对数据库空的数字字段直接进行加减操作 可以用到 inc来实现 比如我想要把网站访问量的数据存到mongoDB数据库中 每次进入网站都可以把该数据进行一次 1操作 通过node js的mongoose
  • 【千律】C++基础:通过文件指针获取文件大小(字节数)

    include
  • Idea导入Eclipse项目

    文章目录 1 选择从已有文件导入 2 配置依赖 3 配置tomcat 在学习过程中经常遇到 eclipse 开发的项目 但是由于和 idea 配置有差异不能直接运行 需要做一些修改 1 选择从已有文件导入 使用 idea 导入文件 注意这里
  • vs2019 MFC 如何在框架类中实现添加一个按钮button

    首先 在框架类CMainFrame中添加一个CButton m btn的成员 然后 在框架类CMainFrame中OnCreate 函数最后添加创建button的函数并显示button 注意 在创建button函数create中如果使用了W
  • 安装VTK8.2.0-win 实际操作

    Windows下安装VTK8 2 0 1 依赖 VS2017 Qt5 cmake 2 前期准备 2 1 访问vtk官方下载VTK8 2 0源码 VTK源码下载地址 https vtk org download 2 2 配置环境变量 配置CM
  • Cookie与Session之(简单购物车示例)

    Cookie 实际上是一小段的文本信息 客户端请求服务器 如果服务器需要记录该用户状态 就使用 response 向客户端浏览器颁发一个 Cookie 客户端浏览器会把 Cookie 保存起来 当浏览器再请求该网 站时 浏览器把请求的网址连
  • tailwind css_带有Tailwind CSS和Nuxt.js的深色和浅色主题

    tailwind css Dark and light mode support has been a recent trend due to the impact on our eyesight caused by the time sp
  • 软件测试面试题--(含mysql,linux,出现最频繁)

    这些是我觉得会问道 但不限于所有的 我列出一些 但并不是所有 软件测试是一个漫长的过程 这需要我们有耐心 和细心 还有一个好学习和认真的态度去进行 小伙伴们可以通过背诵然后结合自己的陈述去进行完善和结果专业知识去进行解答 一 软件测试基础
  • DOS命令查询局域网内在线电脑IP

    COLOR 0A CLS ECHO Off Title 查询局域网内在线电脑IP send ECHO off setlocal enabledelayedexpansion ECHO 正在获取本机的IP地址 请稍等 for f tokens
  • 自己个人总结,Android Studio 中SVN的使用步骤

    要使用SVN 首先需要下载SVN的软件 在这里需要下载两款软件 第一款是Svn的服务器端 第二款是Svn的客户端 俗称的小乌龟 软件的下载地址 Svn客户端软件的下载 64位 http download csdn net detail la
  • FPGA流水线除法器(Verilog)原理及实现

    FPGA流水线除法器 Verilog 原理及实现 流水线除法器原理 除法器的计算过程如下图所示 计算步骤 假设数值的位宽为N Step1 分别将被除数和除数扩展至原来2倍位宽 2N 被除数在其左边补N位0 除数在其右边补N位0 Step2
  • mac 下 ~/.bash_profile无效

    1 问题 在配置 bash profile时候项目不生效 2 解决思路 我们使用的shell是zsh 不会自动加载 bash profile 而是自动加载 zprofile文件 这里可以在 zprofile文件加上这么一段 if f bas
  • Python学习笔记第五天(Number)

    Python学习笔记第五天 数据类型 Number 数字 支持四种不同的数值类型 Number 类型转换 数学函数 随机数函数 三角函数 数学常量 结束语 数据类型 在Python中 对象是数据的抽象表示 而引用则是指向对象的指针 Pyth
  • AB实验遇到用户不均匀怎么办?—— vivo游戏中心业务实践经验分享

    作者 vivo 互联网数据分析团队 Li Bingchao AB实验是业务不断迭代 更新时最高效的验证方法之一 但在进行AB实验效果评估时需要特别关注 用户不均匀 的问题 稍不注意 产出的研究结论就可能谬以千里 给业务决策带来极大风险 因此