FLOPS的含义及其计算方式

参考FLOPS的含义及其计算方式 - 云+社区 - 腾讯云

1. 深度学习框架FLOPs的概念

Floating point operations

即:浮点运算数量


Paper里比较流行的单位是GFLOPs

1 GFLOPs = 10^9 FLOPs

即:10亿次浮点运算

2. 深度学习框架FLOPs的组成

1. 卷积运算Conv

用以下动图中直观的解释:

Image大小为 5x5

卷积核大小为 3x3

那么一次3x3的卷积(求右图矩阵一个元素的值)所需运算量:(3x3)个乘法+(3x3-1)个加法 = 17

要得到右图convolved feature (3x3的大小):17x9 = 153

2. BatchNorm

3. ReLu

4. Linear

5. Upsample

6. Poolings

其中,Conv所占的比重通常是最大的

此外,它和输入图像的大小也有关系

而#Parameters和图像大小无关

3. 计算FLOPs的代码或包

因为无人驾驶车载板子对模型复杂度有要求

今天在Github上找了一下午代码(基于Pytorch)

终于找到一个既傻瓜又好用的!!!

示例代码(以VGG16为例):

可以看到

算上import 和 print()也仅仅6行代码!

不仅输出了整个框架的复杂度

Flops: 15.5 x 10^9 次浮点运算
Params: 138.36 百万个参数

4. 常用框架的复杂度

  • 7
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Wanderer001

ROIAlign原理

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

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

打赏作者

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

抵扣说明:

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

余额充值