模型评估:A/B测试的陷阱

news2024/12/27 12:48:08

互联网公司中,A/B测试是验证新模块、新功能、新产品是否有效;新算法、新模型的效果是否有提升;新设计是否受到用户欢迎;新更改是否影响用户体验的主要测试方法。在机器学习领域中,A/B测试是验证模型最终效果的主要手段。

1. 在对模型进行过充分的离线评估之后,为什么还要进行在线A/B测试?

  1. 离线评估无法完全消除模型过拟合的影响,因此,得出的离线评估结果无法完全替代线上评估结果。
  2. 离线评估结果无法完全还原线上的工程环境。一般来讲,离线评估往往不会考虑线上环境的延迟、数据丢失、标签数据缺失等情况。因此,离线评估的结果是理想工程环境下的结果。
  3. 线上系统的某些商业指标在离线评估中无法计算。离线评估一般是针对模型本身进行评估,而与模型相关的其他指标,特别是商业指标,往往无法直接获得。比如,上线了新的推荐算法,离线评估往往关注的是ROC曲线,P-R曲线等的改进,而线上评估可以全面了解该推荐算法带来的用户点击率、留存时长、PV访问量等的变化。这些都要由A/B测试来进行全面的评估。

2. 如何进行线上A/B测试?

  • 进行A/B测试的主要手段是进行用户分桶,即将用户分成实验组和对照组,对实验组的用户施以新模型,对对照组的用户施以旧模型。
  • 在分桶的过程中,要注意样本的独立性和采样方式的无偏性,确保同一个用户每次只能分到同一个桶中
  • 在分桶过程中所选取的user_id需要是一个随机数,这样才能保证桶中的样本是无偏的。

3. 如何划分实验组和对照组?

H公司的算法工程师们最近针对系统中的“美国用户”研发了一套全新的视频推荐模型A,而目前正在使用的针对全体用户的推荐模型是B。在正式上线之前,工程师们希望通过A/B测试来验证新推荐模型的效果。下面有三种实验组和对照组的划分方法,请指出哪种划分方法是正确的?

  1. 根据user_id(user_id完全随机生成)个位数的奇偶性将用户划分为实验组和对照组,对实验组施以推荐模型A,对照组施以推荐模型B;
  2. 将user_id个位数为奇数且为美国用户的作为实验组,其余用户为对照组;
  3. 将user_id个位数为奇数且为美国用户的作为实验组,user_id个位数为偶数的用户作为对照组。

上述三种A/B测试的划分方法都不正确。我们用包含关系图来说明三种划分方法,如图2.4所示。

  • 方法1(见图2.4(a))没有区分是否为美国用户,实验组和对照组的实验结果均有稀释;
  • 方法2(见图2.4(b))的实验组选取无误,并将其余所有用户划分为对照组,导致对照组的结果被稀释;
  • 方法3(见图2.4(c))的对照组存在偏差。
  • 正确做法(见图2.4(d))是将所有美国用户根据user_id个位数划分为实验组和对照组,分别施以模型A和B,才能够验证模型A的效果。

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

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

相关文章

js逆向第16例:猿人学第12题入门级js

文章目录 一、前言二、定位关键参数三、代码实现一、前言 任务:抓取这5页的数字,计算加和并提交结果 既然是入门级,那肯定很简单了 二、定位关键参数 控制台查看请求数据,m值应该就是关键参数了 进入堆栈 马上定位到了m值"m": btoa(yuanrenxue + window.pag…

商品源数据如何采集,您知道吗?

如今,电子商务已经渗透到了人们生活的方方面面。2020年新冠肺炎突如其来,打乱了人们正常的生产生活秩序,给经济发展带来了极大的影响。抗击疫情过程中,为避免人员接触和聚集,以“无接触配送”为营销卖点的电子商务迅速…

安达发|APS换产矩阵功能带来的便利

APS换产矩阵功能是一种在生产计划和排程中广泛应用的工具,它能够帮助企业实现生产过程的优化和效率提升。通过使用APS换产矩阵功能,企业可以更好地管理生产线上的资源,合理安排生产任务,提高生产效率和产品质量。 1.AP…

Spacedesk | 最新版本移动端扩展PC副屏

我的设备: 电脑:戴尔G15 5511、i7-11800H、Windows 11、RTX3060(推荐显卡高级一些,算力差点的可能带不动这款软件) 平板:荣耀V6、麒麟985、安卓10、分辨率2000*1200(手机也行,我用的平板&…

Windows 双网卡链路聚合解决方案

Windows 双网卡链路聚合解决方案 链路聚合方案1:Metric介绍操作 方案2:NetSwitchTeam介绍操作 方案3:NIC介绍操作 方案4:Intel PROSet 链路聚合 指将多个物理端口汇聚在一起,形成一个逻辑端口,以实现出/入…

Overleaf Docker编译复现计划

Overleaf Docker编译复现计划 Overleaf Pro可以支持不同年份的Latex镜像自由选择编译,这实在是一个让人看了心痒痒的功能。但是很抱歉,这属于Pro付费功能。但是我研究了一下,发现其实和Docker编译相关的代码,社区版的很多代码都没…

Windows下Python+PyCharm+miniconda+Cuda/GPU 安装步骤

1. 官网安装Python 3.9 Python Release Python 3.9.0 | Python.org 2. 安装pycharm https://download.jetbrains.com/python/pycharm-professional-2023.3.2.exe 3. 安装miniconda Miniconda — miniconda documentation 4. 安装完miniconda 创建虚拟环境 conda create …

吴飞教授 人工智能 模型与算法 启发式搜索课件发散分析

一、文章介绍 本文是针对吴飞教授在MOOC课程 :《人工智能:模型与算法》 2.1节 启发式搜索的课前发散 在课程2.1节 启发式搜索章节中,吴飞教授以如何计算城市地图两点之间最短路径为例,重点讲授了贪婪最佳优先搜索和A*搜索算法&a…

Android 集成firebase 推送(FCM)

1,集成firebase 基础 1>googleService文件 2>项目级gradle 3>app级gradle 4>setting 2,推送相关 重点: 源文档:设置 Firebase Cloud Messaging 客户端应用 (Android) (google.com) /*** 监听推送的消息* 三种情况…

php中常用的几个安全函数

1. mysql_real_escape_string() 这个函数对于在PHP中防止SQL注入攻击很有帮助,它对特殊的字符,像单引号和双引号,加上了“反斜杠”,确保用户的输入在用它去查询以前已经是安全的了。但你要注意你是在连接着数据库的情况下使用这个…

抵御爬虫的前线护盾:深度解读验证码技术的演变历程

一.前言 在当今信息技术迅速发展的背景下,网站和在线服务面临着日益增长的自动化访问威胁,这些大多来自于各类爬虫程序。这种大量的自动化访问不仅对网站的正常运行构成压力,还可能导致敏感数据的泄露,甚至被用于不正当竞争和恶意…

微内核、宏内核、混合内核,三者到底有什么区别?

最近几年,随着国内大厂纷纷发布自研操作系统,大家对这些操作系统的出身和相貌吵得不可开交。然而,本文并不打算陷入这种无尽的争论之中。 在计算机技术的发展历程中,所有的技术都是在不断的迭代和发展中形成的,无论是…

win10在启动游戏时报错,提示“d3dx9_25.dll文件丢失”,怎么办?d3dx9_25.dll丢失如何自动修复

一、d3dx9_25.dll文件是什么? d3dx9_25.dll是DirectX的一部分,DirectX是一种由微软开发的专门处理与多媒体、游戏程序和视频相关的应用程序接口。d3dx9_25.dll文件是DirectX9中一个重要的dll文件,主要负责处理3D图形程序,作用是帮…

python高校舆情分析系统+可视化+情感分析 舆情分析+Flask框架(源码+文档)✅

毕业设计:2023-2024年计算机专业毕业设计选题汇总(建议收藏) 毕业设计:2023-2024年最新最全计算机专业毕设选题推荐汇总 🍅感兴趣的可以先收藏起来,点赞、关注不迷路,大家在毕设选题&#xff…

图片双线性插值原理解析与代码 Python

一、原理解析 图片插值是图片操作中最常用的操作之一。为了详细解析其原理,本文以 33 图片插值到 55 图片为例进行解析。如上图左边蓝色方框是 55 的目标图片,右边红色方框是 33 的源图片。上图中,蓝/红色方框是图片,图片中的蓝/红…

记录误删除docker中极狐gitlab容器恢复过程

如题一次误操作导致删除了docker中极狐gitlab容器恢复过程 情况说明 创建容器时,我是用的是极狐官网推荐安装的步骤,具体按照官网步骤走就行 sudo docker run --detach \--hostname gitlab.example.com \--publish 443:443 --publish 80:80 --publish …

java通过okhttp方式实现https请求的工具类(绕过证书验证)

目录 一、引入依赖包二、okhttp方式实现的https请求工具类2.1、跳过证书配置类2.2、okhttp方式的 https工具类 三、测试类 一、引入依赖包 引入相关依赖包 <!--okhttp依赖包--> <dependency><groupId>com.squareup.okhttp3</groupId><artifactId>…

书生·浦语大模型实战营-学习笔记2

目录 轻松玩转书生浦语大模型趣味Demo1. 大模型及 InternLM 模型介绍2. InternLM-Chat-7B 智能対话 Demo3. Lagent 智能体工具调用 Demo4. 浦语•灵笔图文创作理解 Demo5. 通用环境配置实验记录6. 课后作业 视频地址&#xff1a; (2)轻松玩转书生浦语大模型趣味Demo 文档教程&a…

Java电影购票小程序在线选座订票电影

Java电影购票小程序 功能&#xff1a;注册用户可已查看电影场次评价选座订票退票&#xff0c;影院管理员可以排片退款在线卖票和管理演播室等。超级管理员可管理电影排片电影院用户管理等。 演示视频 小程序&#xff1a; https://www.bilibili.com/video/BV11W4y1A7mK/?shar…

2.【CPP】入门(宏||内联函数||拷贝构造||析构函数||构造函数)

0x01.引言 1.实现一个宏函数ADD #define ADD(x,y) ((x)(y))//宏是预编译阶段完成替换&#xff0c;注意括号2.宏的优缺点 优点&#xff1a; 1.增强代码的复用性 2.宏函数不用建立栈帧&#xff0c;提高性能 缺点&#xff1a; 1.不方便调试 2.没有安全检查 0x02.内联函数 1.以空…