大公司如何用A/B测试解决增长问题?

news2024/10/2 12:04:51

摘要:上线六年,字节跳动的短视频产品——抖音已成为许多人记录美好生活的平台。除了抖音,字节跳动旗下还同时运营着数十款产品,从资讯、游戏,到房产、教育等横跨多个领域。在产品迭代速度和创新能力的快速发展下,字节是如何解决产出的每款APP的增长问题?本文将分享专属于字节文化的增长方式。

一、关于增长

1.1什么是增长

下图是一个简单的增长闭环。

首先在最开始会利用很多类似UBA的工具进行用户行为分析,通过这些分析发现,在这个APP发展过程中是不是存在一些新的问题,或者去探索一些新的业务增长点。之后就进入了第二步,数据分析师会把他的推断传递给产品经理,产品经理会提出了一些假设策略,设定一定的目标。

第三步进入到了很关键的一个环节:整个字节内部,不管是功能研发还是算法模型的迭代,或者是UI交互上一个简单的按钮颜色的变化都需要去做的验证——就是A/B实验。在这个过程中,采用各种科学的实验分析工具或者分析模型,来帮助数据分析师了解不同的实验策略,在整个推进过程中当中会有什么样的表现。

最后一步,再结合实际场景去进行分析:这个实验结论最终带来了哪些洞见?是否要持续迭代?如此往复,就是一个激发创新和增长的闭环。

1.2 字节的增长逻辑:选定一个好的目标,然后找到一个好的评估方法衡量

解决问题一定要有好的方法,“数据驱动”是字节非常看重的一系列方法,而“A/B测试”是“数据驱动”中至关重要的方法。

要想解决问题,第一个问题是:目标是什么?确认目标,以及这个目标是否可量化是特别重要的。需要注意的是避免选择类似用户画像这一类目标优先级不一定高且不好评估的目标。既要考虑用户体验,也要考虑一些客观指标,同时可能辅以一些用户访谈的直观印象,最后综合去制定方向。

数据驱动不是唯数据论,更不是数据至上。我们常说的数据驱动,不是有数据就可以驱动,而是需要对可以量化评估的目标,以A/B测试这样的结果数据才能更好地驱动,它代表的是科学决策的理念,不然数据驱动的决策也可能是很糟糕的决策。

2.应该去选择一个什么样的目标
 

2.1 目标层次合理性

选择目标时应该选一个不要太高、不要太低的目标,并且定期衡量特别重要。例如在聊数据驱动思路时,当试图用数据驱动思路去细化目标时,有利于你仔细反思:我的目标是不是这个?我的目标能不能量化?它会逼你把目标想得很清楚。

2.2目标可衡量

在选择目标时,目标的可衡量是非常重要的。它跟数据驱动的理念互相帮助,定好目标,才能更好的应用数据驱动,当你用数据驱动的方法去做事情时,它就会push你的目标到底是不是合理。

3.什么是好的评估方法

一是经验判断。 不管什么公司,每天都在不停的用这个方法,这个方法非常靠谱的,但是有它的问题。从公司层面来看,由于单纯依靠客观指标决策会面临风险,因此战略决策往往是由人来做判断的。但它的问题在于执行层面很容易不一致。战略决策在执行过程中面临很多细节问题的决策,参与的人越多,越容易出现不一致性和有偏性。

二是非A/B测试的数据分析,但是可能会出现关联分析中往往带有偏见,可能会误导决策。

三是A/B测试的数据分析。这是一个更接近真实、更能够把握住本质的一个方法。类似于打造一个“平行时空”,把不同策略放进去对比实验,再基于“投石问路”的结果选择更优方案,降低决策风险。

4.A/B测试——DataTester 在字节

字节跳动有一款中视频产品叫西瓜视频,最早它叫做头条视频。为了提升产品的品牌辨识度,团队想给它起个更好的名字。经过一些内部调研和头脑风暴,征集到了西瓜视频、奇妙视频、筷子视频、阳光视频 4 个名字,于是团队就针对一共 5 个 APP 名称进行了 A/B 实验。

这个实验中唯一改变的是应用市场里该产品的名称和对应的 logo,实验目的是为了验证哪一个应用名称能更好地提升“头条视频” APP 在应用商店的点击率。最后西瓜视频和奇妙视频的点击率位列前二,但差距不显著,结合用户调性等因素的综合考量后,最终决定头条视频正式更名为西瓜视频。

除了西瓜视频,今日头条的定名,就是在不同的应用市场上架不同的名称,来看下载率和分享率,最后“今日头条”胜出了。抖音也是一样的,这个名称并不是第一首选,是做了很多个名称上架应用市场之后,“抖音”排名第二,最后根据产品形态以及认知,才选择了“抖音”作为核心名字。

在不断的创新迭代的过程当中,字节跳动一直都在高度的关注着整个产品传递信息的一个密度,持续的探索和更新更高效的信息分发方式。其中最核心的一个理念就是通过数据去驱动创新、驱动增长,然后驱动营销。而 AB 测试就是这一理念的方法论和工具的载体。

经过了字节内部业务的多年打磨,这一套在字节大放异彩的A/B实验工具已正式通过火山引擎对外服务,取名为 DataTester。它基于先进的底层算法,提供科学分流能力,提供智能的统计引擎,实验结果可靠有效,助力业务决策。

目前,DataTester 在字节内每日新增1500+实验,累计已有150W+ 的 A/B 实验进行过。在外部客户的服务上,也已覆盖推荐、广告、搜索、UI、产品功能等业务场景,提供从实验设计、实验创建、指标计算、统计分析到最终评估上线等贯穿整个实验生命周期的服务。来自得到、美的、凯叔讲故事APP等企业客户,已经通过火山引擎DataTeser开启了用数据驱动科学决策的道路。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

 

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/347797.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AcWing语法基础课笔记 第三章 C++中的循环结构

第三章 C中的循环结构 学习编程语言语法是次要的,思维是主要的。如何把头脑中的想法变成简洁的代码,至关重要。 ——闫学灿 学习循环语句只需要抓住一点——代码执行顺序! while循环 可以简单理解为循环版的if语句。If语句是判断一次&#xf…

MQ技术选型

RocketMQ部署架构图NameServer:主要是对元数据的管理,包括Topic和路由信息的管理,底层由netty实现,是一个提供路由管理、路由注册和发现的无状态节点,类似于ZooKeeperBroker:消息中转站,负责收发…

蓝桥杯模块学习17——AT24C02存储器(深夜学习——单片机)

一、硬件电路:1、引脚功能:(1)A0-A2:决定不同设备的地址码:(2)WP:写保护二、通讯方式(IIC协议)通讯方式与PCF8591相同,可参考以下文章…

【redis】redis缓存与数据库的一致性

【redis】redis缓存与数据库的一致性【1】四种同步策略【2】更新缓存还是删除缓存(1)更新缓存(2)删除缓存【3】先更新数据库还是先删除缓存(1)出现失败时候的情况1-先删除缓存,再更新数据库&…

【C++】string类(上)

文章目录1.为什么要学习string类2.标准库中的string类1.string分类2.string类对象的常见构造1.string3. string类对象的容量操作1.size2.capacity3.reserve4.resize扩容初始化删除数据4. string类对象的修改操作1.push_back2.append3.operator1.为什么要学习string类 c语言的字…

35岁测试工程师,面临中年危机,我该如何自救...

被辞的原因 最近因故来了上海,联系上了一位许久不见的老朋友,老王;老王和我是大学同学,毕业之后他去了上海,我来到广州。因为我们大学专业关系,从12年毕业以后我们从事着相同的职业,软件自动化…

在自己的电脑上使用ChatGPT做一个公网可访问的小应用

文章目录介绍ChatGPT的简单介绍和使用介绍从一个指令开始增加一些样例调整参数创建你自己的应用(python(Flask版本))安装配置环境将你的网站放到公网上总结介绍 本文将会简单介绍一下ChatGPT,并使用ChatGPT做一个简单…

Java字节码深度知多少?

文章目录1、字节码结构1.1、基本结构1.2、实际观测2、内存表示3、方法调用指令4、invokedynamicEND结语Java真的是长盛不衰,拥有顽强的生命力。其中,字节码机制功不可没。字节码,就像是 Linux 的 ELF。有了它,JVM直接摇身一变&…

计算机视觉方向地理空间遥感图像数据集汇总

文章目录1.DSTL卫星图像数据集/Kaggle竞赛2.Swimming Pool and Car Detection/Kaggle竞赛3.SpaceNet Challenge 3数据集4.RarePlanes数据集5.BigEarthNet数据集6.NWPU VHR-10数据集7.UC Merced Land-Use数据集8.Inria Aerial Image Labeling数据集9.RSOD数据集1.DSTL卫星图像数…

项目管理工具dhtmlxGantt甘特图入门教程(九):支持哪些数据格式(上篇)

dhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表,可满足项目管理控件应用程序的所有需求,是最完善的甘特图图表库这篇文章给大家讲解 dhtmlxGantt 的数据属性和数据库结构。 DhtmlxGantt正版试用下载(qun:764…

工厂模式(Factory Pattern)

1.什么是工厂模式 定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。 2.工厂模式的作用 实现创建者和调用者的分离 3.工厂模式的分类 简单工厂模式工厂方法模式抽象工厂模式 4.工厂模式的优缺点 优…

云原生 -- Docker进阶(Docker-compose,Docker网络简单介绍)

Dockerfile的构建过程 每条保留字段必须为大写字母。Dockerfile每行只支持一条指令,但是每条指令可以带多个参数,并且每条保留字指令后面至少要带有一个参数。从上到下依次执行。每条指令都会创建一个新的镜像层,并提交新的镜像。 大致流程…

CRM系统五大技巧集成Excel为销售流程赋能

销售过程中有很多情况会降低团队的效率。通过正确的实施CRM客户管理系统,可以帮助您的企业自动执行手动任务、减少错误并专注于完成交易。这里有5个技巧,可以帮助您的销售人员通过CRM集成Excel为销售流程赋能并提高他们的整体效率。 技巧1:将…

技术源自洛克希德·马丁,光场XR眼镜FYR解析

专注于医疗场景的一家XR眼镜厂商FYR(全称:FYR Medical)近期亮相,并宣布完成了260万美元A轮融资,本轮融资由NuVasive领投,资金将用于开发世界上第一个XR光场“放大镜”类产品。据青亭网了解,NuVa…

1、HAL库UART 中断|DMA 自动回显接收数据

1、实现代码: stm32f4xx_hal_conf.h文件开启UART宏定义 #define HAL_UART_MODULE_ENABLED添加stm32f4xx_hal_uart.c和stm32f4xx_hal_dma.c到自己工程; 编写好的代码:usart_Driver.c /***************************************************…

K8s管理应用生命周期-Deployment篇

在k8s中部署应用程序流程 1、使用Deployment部署Java应用 kubectl create deployment web --imageXXX/java-demokubectl get deployment,pods 2、使用Service发布Pod kubectl expose deployment web --port80 --typeNodePort --target-port8080 --namewebkubectl get servic…

深入【虚拟列表】动态高度、缓冲、异步加载... Vue实现

前言🎀 在前文中我们了解到: 1.在某种特殊场景下,我们需要将 大量数据 使用不分页的方式渲染到列表上,这种列表叫做长列表。 2.因为事件循环的机制,一次性大量的渲染耗时较长,并且渲染期间会阻塞页面交互…

Centos安装OpenResty

文章目录一. OpenResty是什么二. OpenResty的安装1. 安装开发库2. 安装OpenResty仓库3. 安装OpenResty4. 安装opm工具5. 目录结构6. 配置nginx的环境变量7. 启动和运行8. 配置文件修改三. 小案例1. 案例说明2. OpenResty监听请求3. 编写业务代码4. 获取请求参数一. OpenResty是…

深度解析React性能优化API

性能优化一直是前端领域讨论的一个热门问题,但在平时沟通及code review过程中发现很多人对于React中性能优化理解很模糊,讲不清楚组件什么时候更新,为什么会更新,关于React性能优化的文章虽然比较多,但大多数都是在罗列…

【C/C++】内存管理详解

目录内存布局思维导图1.C/C内存分布数据段:栈:代码段:堆:2.C语言中动态内存管理方式3.C内存管理方式3.1new/delete操作内置类型3.2new和delete操作自定义类型4.operator new 与 operator delete函数5.new和delete的实现原理5.1内置类型5.2自定…