参数量Params和每秒浮点运算次数FLOPs的单位是多少

先看一下yolov8的表


模型计算量(FLOPs)和参数量(Params)是衡量深度学习算法复杂度的两个重要指标,它们可以用来评估一个模型的性能和实用性。以下是对这两个指标的理解:


1、Params - 参数量

即模型中需要学习的参数数量,它是衡量模型复杂度的另一个重要指标。模型的参数量越多,表示模型的表达能力越强,但也意味着模型需要更多的计算资源和数据来训练和推断。比如,在训练模型时需要更多的GPU内存,推断时需要更多内存来存储模型参数。

论文中常用到的是: Params(M)

即一个模型包含多少个参数 。单位M,是million(百万 : 1 000 000 )缩写 ——也即(10的6次方)


2、FLOPs - 模型计算量

即浮点运算次数(Floating Point Operations, FLOPs),注意 s小写(s表复数)

指运行一次网络模型需要进行浮点运算的次数,可以理解为计算量。是衡量模型在推断(inference)过程中需要执行多少次浮点运算的量。FLOPs通常用于衡量模型的计算效率和速度,也可以用来衡量算法/模型的复杂度。比如,在边缘设备或者移动设备上部署模型时,需要考虑到设备的限制,如果模型的计算量过大,则会导致推断时间过长,不适合实际应用。

大模型的单位通常为 G(GFLOPs:10亿次浮点运算, 10 的9次方),小模型单位通常为 M通常只考虑乘加操作(Multi-Adds)的数量,而且只考虑 CONV 和 FC 等参数层的计算量,忽略 BN 和 PReLU 等等。

3、FLOPS

FLOPS(即“每秒浮点运算次数”,“每秒峰值速度”),可以理解为计算速度,是“每秒所执行的浮点运算次数”(Floating Point Perations per Second)的缩写。它常被用来估算电脑的执行效能,衡量硬件性能的指标,尤其是在使用到大量浮点运算的科学计算领域中。正因为FLOPS字尾的那个S,代表秒,而不是复数,所以不能省略掉。

一次浮点预算是一个FLOPS

FLOPS 计算公式

一个MFLOPS(megaFLOPS)等于每秒一百万(=10^6)次的浮点运算,
一个GFLOPS(gigaFLOPS)等于每秒十亿(=10^9)次的浮点运算,
一个TFLOPS(teraFLOPS)等于每秒一万亿(=10^12)次的浮点运算,(1太拉)
一个PFLOPS(petaFLOPS)等于每秒一千万亿(=10^15)次的浮点运算,
一个EFLOPS(exaFLOPS)等于每秒一百京(=10^18)次的浮点运算,
一个ZFLOPS(zettaFLOPS)等于每秒十万京(=10^21)次的浮点运算。

4、 模型大小

指一个模型的大小,即模型所占存储空间,单位MB(MByte的缩写):

在深度学习神经网络中,最常见的数据格式是float32,占4个字节(Byte)。类似地,float16,占2个字节。1024个字节为1KB,1024x1024个字节为1MB。那么存储10000个参数需要的内存大小为10000x4 Bytes,约为39KB。存储1M(100万)个参数需要的内存大小为39x100/1024MB,约为3.8MB。深度学习神经网络的参数量通常是百万级之上的,所以我们可以将3.8MB看作是一个基本单位,即每一百万个数字需要3.8MB。

换算:

1 GB = 1000 MB
1 MB = 1000 KB
1 KB= 1000 Byte
1 Byte = 8 bit

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

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

相关文章

pytorch基础【4】梯度计算、链式法则、梯度清零

文章目录 梯度计算计算图(Computational Graph)梯度求导(Gradient Computation)函数与概念 示例代码更多细节梯度求导的过程梯度求导的基本步骤示例代码注意事项总结 链式法则是什么?链式法则的数学定义链式法则在深度…

VMR,支持30+种编程语言的SDK版本管理器,支持Windows/MacOS/Linux。

官方文档地址:documents 官方项目地址:github 欢迎安装使用,分享转发,前往github star。 跨平台,支持Windows,Linux,MacOS支持多种语言和工具,省心受到lazygit的启发,拥…

Flutter【组件】可折叠文本组件

简介 flutter 可折叠文本组件。 点击展开,收起折叠文本。支持样式自定义 github地址: github.com/ThinkerJack… pub地址:https://pub.dev/packages/jac_uikit 展开收起文本 使用方式: ExpandableText(content: 测试 * 50,ma…

生活实用口语柯桥成人外语培训机构“客服”用英文怎么说?

● 01. “客服”英语怎么说? ● 我们都知道“客服”就是“客户服务”, 所以Customer Service就是#15857575376客服的意思。 但是这里的“客服”指代的不是客服人员, 而是一种Service服务。 如果你想要表达客服人员可以加上具体的职位&a…

中国500米分辨率年平均LAI数据集(2000-2020)

叶面积指数LAI(Leaf Area Index)是描述植被冠层几何结构的基本参数之一,被定义为单位地表面积上所有叶片面积的倍数,它控制着植被的许多生物物理过程,如光合作用、呼吸作用、蒸腾作用、碳循环和降水截获等,是陆面过程一个十分重要…

安装免费版的jfrog artifactory oss

1、下载 软件,本案例安装的是 jfrog-artifactory-oss-7.59.11-linux.tar.gz https://releases.jfrog.io/artifactory/bintray-artifactory/org/artifactory/oss/jfrog-artifactory-oss/ 2、解压下载下来的压缩包 tar zxf jfrog-artifactory-oss-7.59.11-linux.tar…

10 种语言文本准确渲染;Mac无需联网的本地聊天应用;多模态语言模型(MLM)基准测试的引擎;Yolo DotNet版本

✨ 1: Glyph-ByT5 10 种语言文本准确渲染,将文本渲染的准确性从提高到近 90% ,同时还能实现段落渲染自动布局 Glyph-ByT5是一种定制的文本编码器,旨在实现准确的文字视觉渲染。其核心思想是通过细致的字形-文本配对数据集的微调&#xff0c…

VBA技术资料MF161:按需要显示特定工作表

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套,分为初级、中级、高级三大部分,教程是对VBA的系统讲解&#…

最新AI智能聊天对话问答系统源码(详细图文搭建部署教程)+AI绘画系统(Midjourney),DALL-E3文生图,TTS语音识别输入,文档分析

一、文章前言 随着人工智能技术的持续进步,AI绘画已经发展成为一个日益成熟的领域。越来越多的人开始尝试使用AI绘画软件来创作艺术作品。尽管这些AI绘画软件对绘画领域产生了显著影响,但它们并不会完全取代画师。与传统手绘不同,AI绘画可以…

ELISA Flex: Monkey IFN-γ (HRP)

ELISA Flex: Monkey IFN-γ (HRP)该ELISA试剂盒能够检测溶液样本比如细胞培养上清或者血清/血浆中猴子γ干扰素(IFN-γ)的含量。 产品组分: 捕获抗体:克隆号MT126L(0.5mg/ml) 检测抗体:克隆号7…

3d模型有个虚拟外框怎么去除?---模大狮模型网

在3D建模和渲染过程中,虚拟外框(Bounding Box)是一个常见的显示元素,用于表示模型的包围盒或选择状态。尽管虚拟外框在一些情况下有其作用,但在最终渲染或呈现阶段,我们通常希望清除这些辅助显示,以展示纯粹的模型效果…

深入了解 Android 中的 ViewStub

在 Android 开发中,性能优化一直是一个重要的话题。ViewStub 作为一种轻量级视图容器,可以帮助我们在合适的时机延迟加载视图,从而优化应用性能。本文将详细介绍 ViewStub 的概念、使用方法以及在实际开发中的应用场景。 什么是 ViewStub&am…

一个简单、快速用于训练和微调中等规模GPT模型的开源项目

大家好,今天给大家分享的是一个简单、快速用于训练和微调中等规模GPT模型的开源项目,该项目旨在拓宽深度学习领域的应用,特别是为深度学习的入门者提供便利。 Nano GPT是一个基于PyTorch的开源项目,由前特斯拉AI负责人Andrej Ka…

linux搭建sftp服务

1. 添加用户及用户组 使用 groupadd sftpgroup 添加sftpgroup 用户组; 使用useradd -G sftpgroup -s /sbin/nologin cmssftp给sftpgroup 添加cmssftp用户; 使用passwd cmssftp给用户cmssftp进行设置密码(默认为:654321)。具体如下图所示: 2.…

运维篇-配置高级

黑马程序员Spring Boot2 文章目录 1、临时属性1.1 命令行中使用临属性1.2 开发环境设定临时属性 2、配置文件分类3、自定义配置文件 1、临时属性 1.1 命令行中使用临属性 使用jar命令启动Sprigboot工程师可以使用临时属性替换配置文件中的属性临时属性添加方式:ja…

vue3 页面左右滑动钩子封装

// useSwiper.js文件 import { ref, onMounted, onUnmounted } from "vue"; export function useSwiper({tabList, //tab数据curTabId,// 当前tab idcurTabIndex,// 当前tab 索引tabChange,// tab改变事件animation,// 动画animationData,// 动画 }) {let minOffset …

jeecg spring数据源用户名和密码加密 避免明文安全漏洞

1.目的 由于系统部署在互联网,配置文件中的数据库账号密码使用明文,存在安全隐患,做等保测试时要求对其加密。 2.实现方法 Jeecg框架本身有PasswordUtil可以使用PBEWITHMD5andDES进行加密,这里为方便改造,且安全性较…

探索数据分析无限潜能:vividime Desktop助力企业智能决策

在数字化浪潮席卷全球的今天,数据已经成为企业最宝贵的资产之一。通过对海量数据的深度挖掘和分析,企业能够洞察市场趋势、优化运营流程、提升用户体验,从而在激烈的市场竞争中脱颖而出。永洪科技的vividime Desktop作为一款功能强大、操作简…

Scala语言:大数据开发的未来之星 - 零基础到精通入门指南

前言 随着大数据时代的到来,数据量的急剧增长为软件开发带来了新的挑战和机遇。Scala语言因其函数式编程和面向对象的特性,以及与Apache Spark的完美协作,在大数据开发领域迅速崛起,成为该领域的新兴宠儿。本篇将从零基础开始&…

【Java】Object、Objects、包装类、StringBuilder、StringJoiner

目录 1.API2.Object类3.Objects类4.包装类4.1包装类概述4.2包装类的其他常见操作 5.StringBuilder 可变字符串5.1概述5.2StringBuilder案例 6.StringJoiner 1.API API:应用程序编程接口,全称application programing interface,即Java已经写好…