yolox-何为EMA?
何为EMA?
定义: 滑动平均/指数加权平均:用来估计变量的局部均值,使得变量的更新与一段时间内的历史取值有关,滑动平均可以看作是变量的过去一段时间取值的均值。
优点: 相比于直接赋值,滑动平均得到的值在图像上更加平缓光滑,抖动性更小。也可以理解为,由于model在最后收敛时,weights会在全局最优点抖动,所有在最后收敛过程中使用模型权重均值更能代表模型的最终训练结果,即仅在测试时使用。
需要注意的是 ,训练时计算EMA得到的shadow-weights更新值不在训练时使用,其使用的仍然是原始weights。而shadow-weights使用在val测试中,这部分可以通过代码理解。
yolox/core/trainer.py

验证是否使用了ema

跳转yolox/exp/yolox_base.py

继续回到self.ema_model,进入ModelEMA跳转至 yolox/utils/ema.py

通过代码,我们可以看见训练时计算EMA得到的shadow-weights更新值被存到v中,其并不会参加梯度下降,即只在测试时使用。此外,在计算时使用了.detach(),说明所得到的v是被生成的一个新的tensor,其不会影响训练时梯度求导,即weights和shadow-weights是两个分离的tensor。
相关文章:
yolox-何为EMA?
何为EMA? 定义: 滑动平均/指数加权平均:用来估计变量的局部均值,使得变量的更新与一段时间内的历史取值有关,滑动平均可以看作是变量的过去一段时间取值的均值。 优点: 相比于直接赋值,滑动平均…...
Java:String、StringBuffer和StringBuilder的区别
参考: https://blog.csdn.net/kingzone_2008/article/details/9220691 https://blog.csdn.net/itchuxuezhe_yang/article/details/89966303 String 常量字符串,每次修改都是会新创建一个字符串,当要频繁修改字符串的时候不建议使用 String S…...
虚拟化技术 分布式资源调度
一、实验内容 实现分布式资源调度 二、实验主要仪器设备及材料 安装有64位Windows操作系统的台式电脑或笔记本电脑,建议4C8G或以上配置已安装VMware Workstation Pro已安装Windows Server 2008 R2 x64已安装vCenter Server 三、实验步骤 将主机esxi1和esxi2加入…...
【Element-plus】vue组合式中使用el-upload通过oss接口上传图片流程(可直接复制使用)
Html <el-upload:actionossUrl:on-success"handleImgSuccess":headers"{Authorization:token}"><el-icon><Plus /></el-icon>点击上传图片</el-upload> JS const ossUrl ref("") ossUrl.value 【你的ossUrl】…...
C++ 数据结构算法 学习笔记(33) -查找算法及企业级应用
C 数据结构算法 学习笔记(33) -查找算法及企业级应用 数组和索引 日常生活中,我们经常会在电话号码簿中查阅“某人”的电话号码,按姓查询或者按字母排 序查询;在字典中查阅“某个词”的读音和含义等等。在这里,“电话号码簿”和…...
【Linux】在Ubuntu 16.04上安装Gerrit + PostgreSQL + Apache服务
Gerrit是一个基于Git版本控制系统的运行于Web浏览器上的Code Review工具,本文叙述如何在Ubuntu 16.04上安装Gerrit服务。(当然安装Gerrit的方法有很多,本文只是其中之一) 文章目录 前提安装PostgreSQL数据库并创建用户下载、配置和…...
数据倾斜那些事儿
目录 一、什么是数据倾斜? 二、预判与预防 三、躲闪策略 四、硬刚策略 一、什么是数据倾斜? 之前在大厂当了好几年的sqlboy,数据倾斜这个“小烦人精”确实经常在工作中出没。用简单的话来说,数据倾斜就像是“贫富差距”在数据…...
python考试成绩管理与分析:从列表到方差
新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、考试成绩的输入与列表管理 二、成绩的总分与平均成绩计算 三、成绩方差的计算 四、成…...
Excel某列中有不连续的数据,怎么提取数据到新的列?
这里演示使用高级筛选的例子: 1.设置筛选条件 在D2单元格输入公式:COUNTA(A4)>0 这里有两个注意事项: *. 公式是设置在D2单元格,D1单元格保持为空, **. 为什么公式中选A4单元格,A列的第一个数据在A3…...
翻译《The Old New Thing》- What does it mean when a display change is temporary?
What does it mean when a display change is temporary? - The Old New Thing (microsoft.com)https://devblogs.microsoft.com/oldnewthing/20080104-00/?p23923 Raymond Chen 2008年01月04日 什么叫临时性的显示设置变更? 当您调用ChangeDisplaySettings函数时…...
【C语言】char,short char,long char分别是多少字节,多少位,多少bit
一,char,short char,long char分别是多少字节 在 C 语言中,char、short、int、long 这些数据类型的大小是平台相关的,它们的大小取决于编译器和操作系统的实现。然而,它们的大小通常遵循以下规则ÿ…...
新V 系首批订单交付!苏州金龙助新疆游骏文旅集团打造旅运新标杆
热播剧集《我的阿勒泰》收官不久,6月新疆旅游旺季将至。 2024年5月下旬,苏州金龙海格客车新V系首批30辆正式交付新疆客户! 作为苏州金龙海格客车新V系首批用户,新疆游骏文旅集团董事长王红强表示:“海格新V系从外观、…...
【Django】从零开始学Django【2】
五. CBV视图 Django植入了视图类这一功能,该功能封装了视图开发常用的代码,无须编写大量代码即可快速完成数据视图的开发,这种以类的形式实现响应与请求处理称为CBV(Class Base Views)。 1. 数据显示视图 数据显示视图是将后台的数据展示…...
【leetcode--383赎金信(使用Counter一行代码结束战斗)】
magazine中的字母组成一封赎金信,一个字母只能被用一次,看是否能完成制定赎金信 灵神思路:使用python内置Counter def canConstruct(self, ransomNote: str, magazine: str) -> bool:return Counter(ransomNote) < Counter(magazine) …...
pdf打开方式怎么设置默认?分享这几种设置方法
pdf打开方式怎么设置默认?你是否曾遇到过打开PDF文档时,默认的打开程序并非你所需要的,从而影响了工作效率?别担心,本文将为你详细解读如何设置PDF的默认打开方式,让你的工作更加高效便捷。 首先࿰…...
杂谈|RestFul和http的区别
前言 今天和我一组的小伙伴,在对接一个接口时,客户将DELETED请求设置了body参数,导致一个功能反复搞了半天,今天就来说下这两者的区别 1.HTTP概述 HTTP(HyperText Transfer Protocol)是一种用于从WWW&…...
Nginx的Sub模块
Nginx 是一款高性能的 Web 服务器和反向代理服务器,其灵活的模块化设计使其成为许多开发者和运维人员的首选。其中,Sub 模块作为 Nginx 的一部分,提供了强大的字符串替换和正则匹配功能,本文将深入探讨 Sub 模块的用途、示例以及使用中需要注意的事项。 1. Sub 模块的用途…...
使用大模型做应用的一些问题
使用了一段时间的大模型应用,遇到一些问题,分享给大家。 使用大模型的基本情况 使用了下面三种大模型: 百度 ERNIE-3 kimi 大模型 chatGPT3.5 使用的大模型应用架构: langchainlangchain RAGlangchain Agentvector 数据…...
2024 前端面试每日1小时
三日 1. 如何理解Vue的模板编译原理 Vue的模板编译实际就是将模板字符串通过解析、优化和代码生成等步骤转换为渲染函数的过程。这个过程中,AST扮演了非常重要的角色,它用树形结构描述了模板的内容和结构,是编译过程的核心数据结构ÿ…...
2024.05.22学习记录
1、面经复习: Vue组件通讯、vuex、js严格模式、options请求、vue3 Setup 语法糖、React hook 2、代码随想录刷题:动态规划 3、rosebush组件库 完成Alert和Alert测试 Menu组件初步开发...
C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...
Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...
抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...
Redis数据倾斜问题解决
Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中,部分节点存储的数据量或访问量远高于其他节点,导致这些节点负载过高,影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...
USB Over IP专用硬件的5个特点
USB over IP技术通过将USB协议数据封装在标准TCP/IP网络数据包中,从根本上改变了USB连接。这允许客户端通过局域网或广域网远程访问和控制物理连接到服务器的USB设备(如专用硬件设备),从而消除了直接物理连接的需要。USB over IP的…...
NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合
在汽车智能化的汹涌浪潮中,车辆不再仅仅是传统的交通工具,而是逐步演变为高度智能的移动终端。这一转变的核心支撑,来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒(T-Box)方案:NXP S32K146 与…...
