神经网络的计算量(FLOPs)、参数量(Params)、推理时间(FPS)的定义及实现方法

目录

1. 定义

2. 实现方法

2.1. 计算参数量

2.2. 计算参数量和FLOPs

2.3. 计算推理时间(FPS)

3. 数据大小对参数量和FLOPs的影响

4. 参数量和FLOPs对于硬件要求

参考


1. 定义

在评价深度学习模型的大小、计算量、推理时间,经常使用的参数有:parameters, FLOPs,FPS, MACs, MAdds。除此以外,我们还经常见到MAC, FLOPS, GFLOPS, TFLOPS等,其中,后三个参数其实并非用来评价模型的计算量,而是用来评价计算机硬件的计算能力。下面分别介绍一下以上几个参数:

Params

参数量是指模型训练中需要训练的参数总数。用来衡量模型的大小(计算空间复杂度)。

FLOPs(Floating-point Operations)

浮点运算次数,理解为计算量(计算时间复杂度),可以用来衡量算法的复杂度,常用做神经网络模型速度的间接衡量标准(虽然最近已经有文章证明靠FLOPs间接标准评价模型的速度是不靠谱的,因为模型的计算速度还跟内存的吞吐等因素相关,但此标准依然广泛用作模型速度的参考评价标准)。一个乘法或一个加法都是一个FLOPs。

FPS(Frames Per Second):每秒传输帧数,网络每秒可以处理(检测)多少帧(多少张图片),即每秒内可以处理的图片数量或者处理一张图片所需时间来评估检测速度,时间越短,速度越快。FPS简单来理解就是图像的刷新频率,假设目标网络处理1帧要0.02s,此时FPS就是1/0.02=50。

MACs, MAdds(Multiply–Accumulate Operations)

乘加累积操作数,常常与FLOPs概念混淆,实际上1MACs包含一个乘法操作与一个加法操作,通常MACs与FLOPs存在一个2倍的关系。MACs和MAdds相同。

MAC(memory access cost)

内存使用量,用来评价模型在运行时的内存占用情况。

FLOPS(Floating-point Operati

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

华科附小第一名

您的支持对我的前行很重要!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值