最近我学到的ABTest知识

面试_ABtest原理简介 实验开始之前,首先要和产品和项目经理明确实验的变量是什么,我们要保证ABtest的单一因素原则,即每一个实验的评估因素都是单一因素,一次实验都不能糅合多个影响因素,否则会导致实验效果难以区分是哪个因素的影响;ABtest样本量计算:AB测试的样本量选取基于大数定律和中心极限定理,在计算样本量之前,我们先了解一下大数定律和中心极限定理;实验改动点确认>核心指标确认>样本量、周期确认>流量分割>AB测试灰度>AB测试上线>效果评估。ABtest会涉及到产品、开发、数据部门,流程较长,环节较复杂; 阅读详情

前言

只有光头才能变强。

文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y

640?wx_fmt=png

如果之前看过我文章的同学就知道我在工作中搞的是推送系统,之前写过一篇 ABTest,最终提高推送消息的点击率。

那什么是ABTest呢?这篇文章带你们入门一下。

一、ABTest的介绍

比如我写了一篇关于ABTest的文章,我希望这篇文章的阅读量能上2500,但是我没想好标题叫什么比较合适。一条推文的标题非常能影响到阅读量,于是我想了几个的标题:

  • 最近我学到的AbTest知识

  • AbTest入门

而我不知道哪个标题效果会更好一些,于是我做了这么一个尝试:

  1. 《最近我学到的AbTest知识》这个标题推送给10%的用户

  2. 《AbTest入门》这个标题推送给10%的用户

  3. 过一段时间后,我看一下效果,哪个标题的阅读量更高,我就将效果高的标题推送给剩余80%的用户

640?wx_fmt=png
ABTest过程

要注意的是:在推送的文章的时候,除了标题不同,其他因素都需要相同(不能被别的因素给干扰),这样看数据的时候才有说服力。

1.1为什么要做ABTest?

做ABTest的原因其实很简单,我们在做业务的时候会有各种各样的想法,比如说:

  • “我觉得在文案上加入emoji表情,这个推送的消息的点击率肯定高”

  • “我觉得这个按钮/图片换成别的颜色,转化率肯定会提高”

  • “我觉得首页就应该设计成这样,还有图墙应该是这样这样..“

  • …..

但是,并不是所有的想法都是正确的,很可能因为你的想法把首页的样式改掉,用户不喜欢,就影响到了GMV等等等….

一个好的产品都是迭代出来的,而我们很可能不清楚这次的迭代最终是好是坏(至少我们是觉得迭代对用户是好的,是有帮助的,对公司的转化也是好的),但是我们的用户未必就买账。

于是,为了降低试错成本,我们就做ABTest。一个功能做出来,我们只放小流量看下效果,如果效果比原来的功能差,那很可能我们这个想法没有达到预期。如果小流量效果比预期要好,再逐步加大流量,直至全量。

二、怎么做ABTest?

从上面的案例,其实我们大概知道,ABTest最主要做的就是一个分流的事

  • 将10%流量分给用户群体A

  • 将10%流量分给用户群体A

640?wx_fmt=png
分流

我们需要保证的是:一个用户再次请求进来,用户看到的结果是一样的

比如说,我访问了Java3y,他的简介是:“一个坚持原创的Java技术公众号“。而一个小时后,我再访问了他一次,他的简介是:“一个干货满满的技术号“。而一个小时过后,我又访问了他一次,他的简介是:“一个坚持原创的Java技术公众号“。

640?wx_fmt=png
简介

这是不合理的,理应上用户在一段时间内,看到的内容是相同的,不然就给用户带来一种错乱感。

OK,于是一般可以这样做:

  • 对用户ID(设备ID/CookieId/userId/openId)取hash值,每次Hash的结果都是相同的。

  • 直接取用户ID的某一位

现在看起来,ABTest好像就是一个分流的东西,只是取了个高大尚的名字叫做ABTest。

2.1 ABTest更多的内容

假如我做了一个UI层面上的ABTest,占用全站的流量80%,现在我还想做搜索结果的ABTest怎么办?只能用剩下的20%了?那我的流量不够用啊(我可能要做各种实验的呢)。UI层面上的ABTest和搜索结果的ABTest能不能同时进行啊?

答案是可以的。因为UI层面和搜索结果(算法优化)的业务关联性是很低的。如果要做“同一份流量同时做UI层面上和搜索结果的ABTest”,那要保证“在UI层面做的ABTest不能影响到搜索结果的ABTest”

  • 业界应用最多的,是可重叠分层分桶方法

  • 层与层之间的流量互不干扰,这就是很多文章所讲的正交(流量在每一层都会被重新打散)

640?wx_fmt=png
来源:https://www.infoq.cn/article/BuP18dsaPyAg-hflDxPf

我们就可以这样干:通过 Hash(userId, LayerId) % 1000类似的办法来实现

  • 每一层的实验不管有多少个,对其他层的影响都是均匀的

我的理解:

为了实现UI/算法/广告 这些业务上没什么关联的,能够使用同一份流量做ABTest测试,所以分了层。流量经过每一层都需要将流量重新打散(正交)----每层实验后,不会影响到下一层的实验

如果业务关联强的应该放在同一层,同一层多个实验是互斥的(比如 一个按钮颜色改为绿色作为一个实验,一个按钮的样式改成大拇指作为一个实验。这两个实验的流量是要互斥的(不然你咋知道用户是因为你的按钮颜色还是样式而点击)

640?wx_fmt=png
示意图

最后

一个完整的ABTest系统,不单单只做分流,还会给用户(我们程序员)提供一个方便可配置的后台系统,做完实验提供数据报表展示等等等~

微信公众号不支持外链,在后台回复“AB”得到更多的ABTest资料

两年呕心沥血的文章:

640?wx_fmt=jpeg

200多篇原创技术文章
海量视频资源
精美脑图
面试题

长按扫码可关注获取 

在看和分享对我非常重要!640?

数据科学常见模型总结(一)-ABTest 模型 按图索骥,此时我们应该查看平均阅读数这一指标的检验灵敏度:如果灵敏度>3%,意味着可能你的实验可能会有3%的显著提升,只是灵敏度还不够,我们还没检验出来。例如点击率指标,业务往往不关心人均点击率指标,而是总点击/总曝光指标,这一指标的方差无法用传统的计算样本方差的方法来计算,需要采用delta method方法。现在把实验停了,换新的思路?统计功效为 1-beta,反馈的是备注假设成立的概率,一般是 80%,也就是 beta=20%,二类错误允许为 20%,即无法得出有差异的概率是 20%。 阅读详情

相关推荐

详细讲解ABTest假设检验【实验设计&结论分析】数据分析_abtest 假设检验(4)

还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!【完整版领取方式在文末!!内容实在太多,不一一截图了。

2401_84132723的博客 847

A/B Test - 学习/实践

主要用于了解和学习ab test的应用场景,目的,以及如何在项目中正确使用ab test。

"代码"的日常搬运 677

详细讲解ABTest假设检验【实验设计&结论分析】数据分析_abtest 假设检验(1)

而自变量水平数指的是策略中的几种方案,比方改变颜色这个策略中我选择改成红蓝绿三种颜色,那么策略2的自变量水平数就是3+1个原水平,也就是4。最近遍览了各种网络安全类的文章,内容参差不齐,其中不伐有大佬倾力教学,也有各种不良机构浑水摸鱼,在收到几条私信,发现大家对一套完整的系统的网络安全从学习路线到学习资料,甚至是工具有着不小的需求。当然,当你入门之后,仅仅是视频教程已经不能满足你的需求了,你肯定需要学习各种工具的使用以及大量的实战项目,这里也分享一份。这里的x1是上策略后的水平,x0是原水平。

2401_84253850的博客 731

A/BTest设计方案

场景: 需要比较开卡活动的引流效率,有三种方案A、B、C。A为原始方案/公认最优方案,B为方案1,C为方案2。流量分配比例为:4:3:3,同时投放上线,从而选择效果最优方案。 痛点: ABTest 页面,保持一个入口链接 同一个用户多次进入应看到同一个页面 避免重复开发,有配置后台让运营产品可配置,包括流量分配,查看实验效果等 分流逻辑属于跨业务的公共逻辑,应单独抽象 方案: 渠道参数: A:0、1、2、3 B:4、5、6 C:7、8、9 前端编写拉新页面,将渠道参数和uid等开卡信息

Leeand的博客 797

ABTest系统调研和需求

一、AB测试的必要性 1.1 算法评估 线下可以使用离线的AUC,NDCG等指标进行算法模型的评估,算法上线后怎样进行算法间的评估,上线的算法是好是坏,好多少?坏多少? 要有效评估算法,必须借助AB测试工具。 1.2 方向指导 在算法上线后,往往伴随着特征的增减,怎样能够确定特征对于算法模型影响? 算法进行AB测试过程中通过线上指标,能够确定特征对于核心指标的影响情况。 1.3 提升效率 新算法上线后,如果没有AB,就根本不能知道这个算法的效果是怎样的。导致达到目标的时间周期变长,效率低下。 1.4 总结.

chunyun0716的专栏 1612

AbtestJavaClient:用于测试ab_testing框架的Java客户端

AbtestJavaClient 用于测试ab_testing框架的Java客户端 设置 使用Thrift从.thrift文件生成Java源代码=>此Thrift文件与ab_testing存储库中使用的文件相同 通过运行thrift -o target/ --gen java ab_test.thrift上述步骤 生成项目mvn package 运行jar文件java -jar /path/to/jar/file/

如何在Java中实现实时推荐系统的A/B测试

通过A/B测试,Java开发者可以轻松评估实时推荐系统的不同算法和策略。通过有效的A/B测试,可以持续优化推荐系统的性能,并为用户提供更好的推荐体验。通过A/B测试,开发者可以比较两种推荐策略或模型在实际用户中的表现,从而优化推荐效果。A/B测试是指将用户随机分为两组(或更多组),每组用户使用不同的系统版本。在收集足够的用户行为数据后,评估不同组的表现是A/B测试的关键步骤。在A/B测试中,不同组的用户需要使用不同的推荐算法。根据这些数据,我们可以计算出A/B组的点击率和转化率,并判断哪组表现更好。

微赚淘客系统开发者博客 1055

计算机考研408复试题汇总

TCP连接是全双工的,两端都可以先挥手 其中一端完成数据发送任务后,发送一个FIN包来终止,另一端针对这个FIN包回复确认包, 直到另一端也发送请求终止数据包FIN,另一端作出确认应答,并且还要发送一个ACK=1表示确认号有效,如果没有收到这个就可以进行重传.

ca1m4n的博客 1万+

什么是ABTest?

实际上,从理论上看实验平台及ABTest我们会觉得其非常复杂和深奥,但从实际的代码角度看,根据理论设计的模式规则、定义的实验以及为实验设计的参数指标等,最终的目的只是为了给业务代码提供优雅的逻辑判断方式,并在不需要业务逻辑关心的情况下,按照可统计、可分析方式进行日志的输出,并最终通过这些数据分析预定的指标、参数,从而得出实验或ABTest的结果(ABTest实际上是一种相对简单的实验,大家从概念上不要有困扰)。首先,拥有一个不重叠的域,可以允许我们进行一些需要改变大量通常不会同时使用的参数的实验。

JanLEE 3118

Cadence Allegro 17.4学习记录开始01-原理图Capture CIS 17.4

Orcad的学习记录

qq_31444421的博客 1万+

Android 面试题 Handler篇

1.Handler的实现原理。

ViewHandKownHealth的博客 955

最近学到的ABTest知识

前言 只有光头才能变强。 文本已收录至我的GitHub仓库,欢迎Star:github.com/ZhongFuChen… 如果之前看过我文章的同学就知道我在工作中搞的是推送系统,之前写过一篇 带你了解什么是Push消息推送,里面也提到了我们或许可以做ABTest,最终提高推送消息的点击率。 那什么是ABTest呢?这篇文章带你们入门一下。 一、ABTest的介绍 比如我写了一篇关于ABTe...

wanghao112956的博客 798

华为Atlas 300I推理卡驱动安装全攻略:从环境检查到常见问题解决

本文提供了华为Atlas 300I推理卡驱动安装的完整实战指南。从安装前的系统环境检查、内核版本匹配,到详细的二进制.run文件安装步骤、源码编译及高级定制化部署,涵盖了驱动安装的全流程。文章重点解析了安装过程中的关键决策、常见问题排查与解决方案,并针对生产环境的多卡配置、性能调优及安全加固给出了专业建议,旨在帮助用户高效、稳定地完成AI推理加速卡的部署。

swift5iosmith的博客 627

ABTest实验中心

日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) 5.3 ABTest实验中心 学习目标 目标 无 应用 无 个性化推荐系统、搜索引擎、广告系统,这些系统都需要在线上不断上线,不断优化,优化之后怎么确定是好是坏。这时就需要ABTest来确定,最近想的办法、优化的算法、优化的逻辑数据是正向的,是有意义的,是提升数据效果的。 5.3.1 ABTest 有几个重要的功能 一个是ABTest实时分

あずにゃん梓喵的博客 725

别再只调API了!深度拆解Dify文件上传的两种传参方式(sys.file vs. inputs.upload_file)

本文深度解析Dify平台文件上传的两种传参方式——sys.file与inputs.upload_file,详细对比其设计原理、技术实现及适用场景。通过代码示例和性能分析,帮助开发者在本地大模型应用中做出精准技术选型,提升文件处理效率与系统稳定性。

weixin_29063979的博客 266

让 PyCharm 代码“发光”:高亮插件与特效全攻略

PyCharm 作为一款强大的 Python IDE,支持多种插件让代码“发光”——无论是动态输入特效、彩虹括号,还是霓虹主题,都能让你的代码脱颖而出!进入 File → Settings → Editor → Color Scheme → Rainbow Brackets。进入 File → Settings → Appearance & Behavior → Material Theme。进入 File → Settings → Editor → Color Scheme → General。

qq_43580271的博客 3834

推荐系统之ABTest实验中心

我们根据用户ID将流量切分为多个桶(Bucket),每个桶对应一种排序策略,桶内流量将使用相应的策略进行排序。个性化推荐系统、搜索引擎、广告系统,这些系统都需要在线上不断上线,不断优化,优化之后怎么确定是好是坏。这时就需要ABTest来确定,最近想的办法、优化的算法、优化的逻辑数据是正向的,是有意义的,是提升数据效果的。实时效果分析统计,将分流后程序点击、浏览等通过hive、hadoop程序统计后,在统计平台上进行展示。一个是ABTest实时分流服务,根据用户设备信息、用户信息进行ab分流。

weixin_43894652的博客 865

1、机器学习在环境科学中的应用与经典数据分析基础

本文介绍了机器学习在环境科学中的广泛应用,包括卫星遥感、气候预测、空气质量预报等领域,并系统回顾了经典数据分析的基本概念,如期望、方差、协方差和相关性及其显著性检验。同时,文章阐述了贝叶斯定理、判别函数与分类、聚类分析等方法的原理与应用,强调了经典统计方法与机器学习技术的互补关系。最后展望了未来环境科学中数据分析的发展方向,强调多学科融合与方法创新的重要性。

stone的博客 142

个性化推荐系统(七)--- ABTest ab测试平台

个性化推荐系统、搜索引擎、广告系统,这些系统都需要在线上不断上线,不断优化,优化之后怎么确定是好是坏。这时就需要ABTest来确定, 最近想的办法、优化的算法、优化的逻辑数据是正向的,是有意义的,是提升数据效果的。         ab需求能方便测试,提供界面快速调整流量,调整流量后能够方便看效果变化,以及不同ab分支算法对比到底是a算法好、还是b算法好、还 是c算法好。再有就是

liubaofeng04065034的博客 7692

MATLAB 与 STK 互联导出导弹轨迹及速度数据(csv导出)

本文介绍了如何通过 MATLAB 脚本连接 STK 提取导弹三维轨迹数据,并以 CSV 格式导出,包含以下关键内容:自动连接 STK 场景;获取所有导弹对象;提取 J2000 坐标系下的位置和速度;加入任务优先级与状态;导出为标准 CSV 文件;

weixin_52370774的博客 778

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

数据分析,如何做一次ABtest?

来源:顾先生的数据挖掘作者:顾先生最近重新过了一遍ABtest,本着输出是最好的输入的精神,我决定用比较通俗的话来讲讲对ABtest的理解。本文的框架就是根据一个栗子,并以问答的方式把 ...

SeizeeveryDay的博客 1839

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

除了ABtest,数据分析测试方法还有这些!

作者:接地气的陈老师 来源:接地气学堂 业务方要你人工智能大数据精准预测,预测偏差多少钱,就扣你多少钱的工资,你怕不?!偏偏真的就有很多类似场景,话不多说,直接上干货: 问题场景: 某互联网金融公司准备通过投放获取投资客户,最近听说私域流量很火,但是从来没在公众号渠道试验过,现计划在公众号渠道进行投放,请数据分析部门利用大数据人工智能精准预测投放效果,到底做一次投放能赚多少钱。假设你是这个公司的数据分析师…… 1别忘了你还有这个武器 正确回答:预测个屁!业务部门是不懂数据原理的,有想不...

CDA数据分析师 591

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

只知道ABtest?测试方法还有这些,数据分析师都得掌握!

业务方要你人工智能大数据精准预测,预测偏差多少钱,就扣你多少钱的工资,你怕不?!偏偏真的就有很多类似场景,话不多说,直接上干货:问题场景:某互联网金融公司准备通过投放获取投资客户,最近听...

weixin_45534843的博客 402
上一篇: 最近学到的「短链接」知识
下一篇: 手把手带你体验Stream流
Java3y
Java3y 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 1万+粉丝 509原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值