如何构建用户增长场景下的AB实验体系?

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

如何构建用户增长场景下的AB实验体系?

一、新用户场景下实验面临的问题

1、UG全景图

这是 UG 的全景图。

如何构建用户增长场景下的AB实验体系?

UG 通过渠道,比如 Paid Ads、 ASO、SEO 等渠道,获客引流到 APP。接下来,会做一些新手的运营和引导,来促活用户,使其进入成熟期。后续用户可能会慢慢地失活,进入衰退期,甚至进入流失期。在这期间会做一些流失的预警,促活的召回,后面还有一些对流失用户的召回。

可以概括为上图中的公式, 即 DAU 等于 DNU 乘上 LT。UG 场景下的所有工作都可以基于这一公式来拆解。

2、AB实验原理

如何构建用户增长场景下的AB实验体系?

AB实验的目的是对流量进行完全随机的分配,针对实验组和不同的对照组采用不同的策略。最终结合统计方法和实验假设做出科学决策,这构成了整个实验的框架。目前市面上的实验分流类型大致分为两种:实验平台分流和客户端本地分流

如何构建用户增长场景下的AB实验体系?

实验平台分流是有前提的,需要设备完成初始化以后能获取到稳定的 ID,基于这个 ID 向实验平台请求实验平台完成分流相关的逻辑,把分流 ID 返回给端上,然后端上基于收到的 ID 做相应的策略。它的优点是有一个实验平台,能够保证分流的均匀性和稳定性。它的缺点是设备必须完成初始化以后才能进行实验分流。 

另外一种分流方式是客户端本地分流。这种方式相对来说比较小众,主要适用于一些UG场景、广告开屏场景以及性能初始化场景。在这种方式下,所有的分流逻辑都在客户端初始化时完成。它的优点很明显,即无时延,开机即可进行分流。从逻辑上来说,它的分流均匀性也能够得到保证。然而,在实际的业务场景中,它的分流均匀性常常存在问题。接下来将介绍其原因

3、新用户场景AB实验面临的问题

UG 场景实际面临的第一个问题是尽可能早的分流。 

如何构建用户增长场景下的AB实验体系?

这里举个例子,比如这里的流量承接页面,产品经理觉得 UI 可以再优化一下,进而提升核心指标。在这样的场景下,我们希望实验尽早地进行分流。 

如何构建用户增长场景下的AB实验体系?

在页面1的分流过程中,设备会进行初始化并获取ID。有18.62%的用户无法生成ID。如果使用传统的实验平台分流方式,将会有18.62%的用户无法被分组,从而导致固有的选择偏差问题

另外,新用户的流量是非常宝贵的,有 18. 62% 的新用户不能被用于实验,对于实验的时长和流量利用效率也是有很大损失的。

如何构建用户增长场景下的AB实验体系?

未来解决实验尽可能早的分流的问题,我们就会用客户端本地分流实验。其优点是在设备初始化的时候,就完成了分流。其原理为,首先是在端上面初始化的时候,它本身就可以生成随机数,对随机数进行哈希以后进行同样的分组,进而产生了实验组和对照组。从原理上看,应该能够保证分流是均匀的,但通过上图中的一组数据会发现,有超过 21% 的用户是重复进到不同的组的。

如何构建用户增长场景下的AB实验体系?

有一种场景是,一些很受欢迎的产品,比如王者荣耀或者抖音,用户很容易上瘾。新用户在实验周期里面会有多次的卸载重装。按照刚刚讲的本地分流的逻辑,随机数的产生和分流以后会让用户进入不同的组,这样就会出现分流的 ID 和统计 ID 不能一对一匹配。造成了分流不均匀的问题。 

如何构建用户增长场景下的AB实验体系?

在新用户场景下,我们还面临着实验评估标准的问题。

我们重新梳理了新用户流量承接这一场景的时间图。在应用程序启动时,我们选择了进行分流。假设我们能够在分流的时机做到均匀,并且同时产生相应的策略效果。接下来,生成指标统计ID的时机比策略效果的时机要晚,只有在这时才能观测到数据。数据观测的时机远远落后于策略效果的时机,这将导致幸存者偏差

二、新实验体系及其科学性验证

为了解决上述问题,我们提出了一个新的实验体系,并对其进行了科学性验证

1、新用户场景实验分流ID选择  

如何构建用户增长场景下的AB实验体系?

在前面已经提到,对于新用户的分流选择要求会比较高,那么如何选择新用户实验的分流 ID 呢?以下是几个原则:

合规性,不管是海外业务还是国内业务,安全合规首先是生命线,一定要满足安全合规,否则一旦被下架影响会特别大。及时性,对于新用户场景,一定是要及时,开机即可获取分流。唯一性,在单次安装周期内,分流的 ID 是稳定的,同时跟指标口径 ID 能形成一一对应的关系。通过下图中的数据可以看到,分流 ID 和指标计算口径 ID 一对一的匹配比例达到了 99.79%,指标计算 ID 和分流 ID 的一对一比例也达到了 99. 59%。基本上可以验证,按照标准选择的分流 ID 和指标 ID 是能够做到一对应匹配的。 

如何构建用户增长场景下的AB实验体系?

2、分流能力科学性验证

选择好分流 ID 以后,分流能力往往是通过两种方式,第一种是通过实验平台,第二种是通过端上完成。 

如何构建用户增长场景下的AB实验体系?

有了分流的 ID 以后,把分流 ID 提供给实验平台,在实验平台里完成分流的能力。作为分流平台,最基本的是需要验证它的随机性。首先就是均匀性。在同一层实验里面,把流量均匀地分到了很多个分桶,每个分桶进组的数量应该是均匀的。在这里可以简化一下,假如一层只有一个实验,分成 a、 b 两组,进组的对照组和实验组的用户数应该是近似相等的,进而验证分流能力的均匀性。其次,对于多层实验,多层实验之间应该是相互正交,不受影响的,同理这里也需要去验证不同层实验之间的正交性。可以通过统计学上的 category test 去验证均匀性和正交性。  

介绍完分流选择的 ID 和分流的能力,最后要从指标结果层面去验证新提出来的分流结果,是否符合 AB 实验的要求。

3、分流结果科学性验证

通过利用内部平台,我们进行了多次AA模拟

比较对照组和实验组在对应的指标上面是否满足实验的要求。接下来看一下这一组数据。 

如何构建用户增长场景下的AB实验体系?

抽样了一部分 t 检验的一些指标组,可以理解为对于做的这么多次试验,放 type one error rate 应该是在很小的概率,假设 type one error rate 预定是在 0. 055% 左右,它的置信区间其实应该在 1000 次左右,应该是在 0. 0365- 0. 0635 之间。可以看到第一列抽样出来的一些指标,都在这个执行区间之内,所以从 type one error rate 视角来看现有的这个实验体系是 OK 的。

同时考虑到检验是对于 t 统计量的检验,相应的 t 统计量在大流量的分布下面,应该是近似地服从正态分布的。也可以对 t 检验的统计量做正态分布的检验。这里用了正态分布的检验,可以看到检验出来的结果也是远远大于 0.05 的,即原假设成立,也就是 t 统计量是近似服从正态分布的。

对于每次检验 t 统计量检验出来的结果的 pvalue,在这么多次实验里面来看,也是近似地服从均匀分布的,同时也可以对pvalue 做均匀分布的检验,pvalue_uniform_test,也可以看到类似的结果,它也是远远大于 0.05 的。所以原假设 pvalue 近似服从均匀分布也是 OK 的。 

以上从分流 ID 和指标计算口径的一一对应关系,从分流的能力和分流的结果指标结果上面都去验证了新提出来的这种实验分流体系的科学性。

三、应用案例分析

下面将结合UG场景下的实际应用案例,详细讲解如何进行实验评估,以解决前面提到的第三个问题

1、新用户场景实验评估

如何构建用户增长场景下的AB实验体系?

这里是典型的 UG 流量承接场景,在 NUJ 新用户引导或者新用户任务的时候会做很多的优化,从而提升流量利用率。这个时候的评估标准往往都会是 retention rate,这是业界现有的常规理解。

如何构建用户增长场景下的AB实验体系?

假设从新用户下载到安装再到首启的这个流程, PM 觉得这样的流程对于用户使用,特别是从未体验过产品使用的这一部分用户来说门槛太高了,是不是应该先让用户熟悉产品,体验到产品的嘻哈 moment 以后,再引导登录。 

如何构建用户增长场景下的AB实验体系?

进一步,产品经理提出了另一种假设,即对于从未体验过产品的用户,在新用户登录或新用户 NUJ 场景中降低阻力。对于已经体验过产品的用户和换机用户,则仍然采用线上流程

如何构建用户增长场景下的AB实验体系?

基于指标 ID 进行分流的方法首先获取指标的 ID,然后进行分流。这种分流方法通常是均匀的,从实验结果和保留率上看,没有太大的区别。从这样的结果来看,很难做出全面的决策。这种实验实际上浪费了一部分流量,并且存在选择偏差的问题。因此,我们会进行本地分流实验,下图展示了本地分流实验的结果

如何构建用户增长场景下的AB实验体系?

进组的新设备数上面会有显著性的差异,而且是置信的。同时在 retention rate 上面有提升,但在其它核心指标上其实是有负向的,而且这个负向很难被理解,因为它跟留存其实是强相关的。所以基于这样的数据,也很难去解释或者去归因,也很难去做出推全的决策。

可以观察一下重复进组的用户情况,会发现超过20%的用户被重复分到不同的组。这破坏了AB实验的分流随机性,导致很难做出科学比较的决策

最后,看一下用提出的新的分流的实验的结果。 

如何构建用户增长场景下的AB实验体系?

开机即可分流,分流能力是由内部平台来保证的,它能够极大程度地保证分流的均匀性和稳定性。从实验的数据来看,几乎是接近的,在做开方检验的时候也能够看到它是完全满足需求的。同时看到有效的新设备数是有极大的增加的,增加了1%,同时在 retention rate 上面也有所提升。同时从对照组或者单看实验组,能够看到基于分流 ID 到最终产生的新设备的流量转化率,实验组比对照组提升了 1% 。之所以出现这样的结果,实验组其实是放大了用户在 NUJ 和 NUT 的这个入水口,有更多的用户更容易进来体验到产品,进而留下来。

如何构建用户增长场景下的AB实验体系?

将实验数据分为登录和非登录两部分,可以发现对于实验组的用户来说,更多的用户选择了非登录模式来体验产品,并且留存率也有所提升,这个结果也符合预期

如何构建用户增长场景下的AB实验体系?

可以看到 by daily 的指标,进组的用户数,其实是有长期写,by daily 来看是稳定增加的,同时留存指标也有提升。实验组相比对照组在有效设备数和留存上都是有提升的。

如何构建用户增长场景下的AB实验体系?

对于新用户流量承接的场景,评估指标更多地从留存或短期的LT维度进行评估。在这里,优化实际上只是在LT层级的一维空间上进行的

而在新的实验体系里面,把一维优化变成了二维优化, DNU 神尚 LT 整体得到了提升,这样策略空间从以前的一维变成了二维,同时在有些场景下是能接受一部分 LT 的损失的。 

四、总结

最后,对新用户场景下实验能力建设和实验评估标准进行一下总结。

UG 新用户场景下现有的实验体系无法完全解决新用户流量承接策略评估所面临的问题,需要新的实验体系。分流 ID 的选择有几个标准,首先是安全合规,然后是首次启动即可获取,再者是在单次安装周期内是稳定的,并且跟指标 ID 是单射的关系。 针对新用户场景的实验评估是一个多维优化,收益来源于有效的新设备数和设备的留存,而不像以前只评估设备的留存。针对“新”用户的承接,往往会有着巨大的业务收益。这里的“新”,不光指新的用户,还包括卸载重装的用户。

以上就是如何构建用户增长场景下的AB实验体系?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/488718.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月8日 14:45:39
下一篇 2025年11月8日 14:47:23

相关推荐

  • 如何用HTML插入标签云组件_HTML CSS3变换与随机颜色生成算法

    使用HTML构建标签结构,CSS3添加旋转与过渡效果,JavaScript生成随机HSL颜色并设置字体大小,实现动态交互的标签云组件。 要在网页中实现一个动态的标签云组件,结合 HTML、CSS3 变换和随机颜色生成算法,可以按照以下步骤操作。这个组件不仅能提升页面视觉效果,还能通过色彩和旋转增加交…

    2025年12月23日
    000
  • 如何在Go Gin应用中集成前端JavaScript模块(如Sentry)

    本文探讨了在Go Gin框架下,通过HTML模板服务前端页面时,如何有效集成JavaScript模块(如Sentry)。针对浏览器不直接支持Node.js模块导入语法的问题,文章详细阐述了利用CDN引入Sentry SDK的解决方案,并提供了具体的代码示例,帮助开发者实现前端错误监控功能,避免了复杂…

    2025年12月23日
    000
  • html官网浏览入口_html网站设计免费平台

    html官网浏览入口在https://www.codepen.io,该平台支持实时预览代码、创建Pen项目、Fork开源示例,可添加外部资源,具备点赞评论收藏等社区互动功能,设有挑战活动与作品集分类,开放API接口,界面简洁适合初学者,在线编写无需配置环境,支持多种预处理器和响应式测试。 html官…

    2025年12月23日
    000
  • html如何修改日期样式

    在html中,可以使用“::-webkit-datetime-edit”伪元素选择器来修改日期格式,只需要用该选择器选中元素,在设置具体样式即可,具体语法为“::-webkit-datetime-edit{属性:属性值}”。 本教程操作环境:windows7系统、CSS3&&HTML…

    2025年12月21日
    100
  • 单选框的type属性值为什么

    单选框的type属性值为“radio”。html type属性可以规定要显示的输入框“”元素的类型;值为“radio”时显示为单选框、“checkbox”时显示为复选框、“select”时显示为下拉式选框等等。 本教程操作环境:windows7系统、HTML5版、Dell G3电脑。 在HTML中,…

    2025年12月21日
    000
  • HTML中type是什么意思

    在HTML中,type是类型的意思,是一个标签属性,主要用于定义标签元素的类型或文档(脚本)的MIME类型;例在input标签中type属性可以规定input元素的类型,在script标签中type属性可以规定脚本的MIME类型。 本教程操作环境:windows7系统、html5版、Dell G3电…

    2025年12月21日
    000
  • HTML中ul标签如何去掉点?HTML无序列表的样式实例解析

    本篇文章主要讲述的是关于html中的ul标签的默认小点给取消掉,还有关于html的无序列表ul标签的样式解释,给出了ul标签中的type属性三种值的介绍。现在就让我们一起来看本篇文章吧 首先这篇文章一开始我们就开始介绍在html中是怎么把ul标签的点给去掉的: 大家应该都使用过ul无序列表标签,ul…

    2025年12月21日 好文分享
    000
  • html中的ol标签如何去掉标号呢?标签的使用方法总结

    本篇文章介绍了html的ol标签是怎么去掉序号标号的,这里还有代码的详细解释,还有介绍了关于html ol有序列表标签如何更改序号,下文介绍了三种序号,大家也可以自己去想填写怎样的序号。现在来看这篇文章吧 一、我们先看看html中的ol标签是如何去掉标号的呢: 我们都知道html的ol标签是个有序列…

    2025年12月21日 好文分享
    000
  • HTML ul标签的什么意思?HTML ul标签的作用详解

    本篇文章主要的为大家讲解了关于html ul标签的三种重要的用法,还有关于html ul标签的解释,包含li标签的还有type属性对ul标签的使用情况,好了,下面大家一起来看文章吧 首先让我们先来解释一下HTML ul标签的意思: ul标签定义的是表格当中无序列表,表格当中的无序列表都是在 标签之中…

    2025年12月21日
    000
  • javascript框架和库是什么_如何选择React、Vue或Angular?

    JavaScript框架与库分别提供按需调用的功能集合和约束性开发结构;React是UI组件库,生态灵活但需自行整合工具;Vue渐进式易上手,兼顾原型与工程化;Angular是全功能TypeScript框架,适合强规范企业级项目。 JavaScript框架和库是封装好的代码集合,用来简化前端开发——…

    2025年12月21日
    000
  • React应用生产环境环境变量配置深度指南

    本文针对react应用在生产环境中无法读取`.env`文件配置的环境变量问题,深入剖析其工作原理、常见原因及排查方法。通过详细的步骤和示例代码,指导开发者正确配置和使用环境变量,解决api调用层面的`null`响应问题,确保应用在生产环境下的稳定运行。 在React应用开发中,环境变量(如API密钥…

    2025年12月21日
    000
  • JavaScript算法实现_javascript编程挑战

    数组去重:利用Set特性去除重复元素,return […new Set(arr)];2. 回文判断:转小写后与反转字符串比较,cleaned === cleaned.split(”).reverse().join(”);3. 快速排序:选基准值分治递归,left、…

    2025年12月21日
    000
  • JS注解怎么实现文档化_ JS注解生成开发文档的流程与工具

    JSDoc是一种JavaScript结构化注释规范,通过@param、@returns等标签描述代码元素,并借助工具生成HTML文档,结合IDE支持和CI/CD可提升团队协作效率。 JavaScript本身不支持原生注解(Annotation)像Java那样的语法,但通过约定的注释格式和配套工具,可…

    2025年12月21日
    000
  • JS注解怎么标注联合类型_ JS联合类型的注解书写与使用技巧

    在JavaScript中可通过JSDoc使用联合类型注解,如string|number表示多类型支持,结合@param、@typedef等标签提升代码可读性与编辑器提示,适用于函数参数、返回值等场景。 在JavaScript中,虽然原生不支持类型注解,但在使用JSDoc配合现代编辑器(如VS Cod…

    2025年12月21日
    000
  • VS Code主题开发:告别JSON,拥抱脚本化生成

    vs code主题扩展最终需json格式定义,但开发者可通过javascript或typescript等脚本语言生成此json文件。这种方法有效解决了大型json文件难以维护、不支持注释等问题,并能实现颜色动态计算,显著提升主题开发的灵活性与效率。 为什么选择脚本化生成VS Code主题? 在开发V…

    2025年12月20日
    000
  • 如何用Quasar框架开发一个跨平台应用?

    Quasar基于Vue.js用一套代码构建多平台应用,支持响应式网站、PWA、移动App和桌面应用。通过quasar create创建项目,利用模式(SPA、PWA、Electron等)切换目标平台,使用Quasar组件库编写通用UI,配合Pinia管理状态,最后通过不同构建命令发布到各平台,实现高…

    2025年12月20日
    000
  • 怎么利用JavaScript进行前端代码覆盖率统计?

    答案:利用JavaScript进行前端代码覆盖率统计的核心是通过Istanbul/nyc等工具对代码插桩,结合测试框架收集执行数据并生成报告。具体流程包括:在代码执行前通过Babel或Webpack插件(如babel-plugin-istanbul)插入计数器实现插桩;运行测试时记录哪些代码被执行;…

    2025年12月20日
    100
  • js如何实现文本差异对比 4种差异比对算法快速找出文本变化内容

    js实现文本差异对比需遵循以下步骤:1.预处理文本,如清洗字符;2.选择算法如lcs、diff、levenshtein距离或基于单词的对比;3.用js实现所选算法;4.将结果以高亮或报告形式展示。lcs通过动态规划找出最长公共子序列,可优化空间与提前结束运算。diff算法识别插入、删除、替换操作,可…

    2025年12月20日 好文分享
    000
  • typescript中的参数分享

    TypeScript 中的参数共享允许组件间共享参数,实现跨组件状态维护和数据变更共享。通过 @Input 装饰器传递父组件参数,使用 @Output 装饰器定义子组件事件,以便在子组件状态改变时通知父组件。参数共享提高复用性,简化状态管理,允许子组件向父组件发出通知,但应谨慎使用,避免大量数据共享…

    2025年12月19日
    000
  • 手机如何运行typescript方法

    要在手机上运行 TypeScript 方法,可以使用 TypeScript 编译器或第三方库:TypeScript 编译器: 将 TypeScript 代码编译成 JavaScript,然后集成到移动应用程序中。第三方库: 如 React Native 或 NativeScript,允许使用 Typ…

    2025年12月19日
    000

发表回复

登录后才能评论
关注微信