神经网络参数量,计算量FLOPS,内存访问量MAC

本文详细介绍了神经网络中卷积层、全连接层以及BN层的参数量、计算量FLOPS和内存访问量MAC的计算方法。对于卷积层,参数量包括卷积核和偏置项,计算量主要关注乘法操作,内存访问涉及输入和输出特征图及权重。全连接层的参数、计算和内存访问与卷积层类似,但不涉及空间维度。BN层的参数量为输入通道数的两倍。文章还提到了深度可分离卷积和标准卷积的计算方式,并引用了相关资源。
摘要由CSDN通过智能技术生成

神经网络参数量,计算量FLOPS,内存访问量MAC(Memory Access Cost)

对于卷积层而言:

1.神经网络参数量计算方式

卷积层:假设输入特征图大小为: Hin x Win x M,卷积核大小KxK,N个卷积核,输出特征图大小为Hout x Wout x N.
参数量:K x K x M x N+N(这里加N表示N个卷积核的偏置项)
一般写法:K x K x M x N(不加偏置项)

2.计算量

(1)一次卷积乘法次数:K x K x M;
(2)一次卷积加法次数:K x K x M x 1;
(3)共同进行了Hout x Wout x N 次卷积运算;
(4)乘加运算总次数:(2 x K x K x M-1)x Hout x Wout x N
(5)一般只考虑乘法: K x K x M x Hout x Wout x N

3.内存访问量

假设输入特征图大小:Hin x Win x M;输出特征图大小为:Hout x Wout x N
参数量(权重):K x K x M x N
内存访问量:Hin x Win x M+Hout x Wout x N+K x K x M x N


对于全连接层而言:

假设输入Cin个神经元,输出Cout个神经元;

1.参数量

Cin x Cout + Cout

2.计算量

一个输出神经元的乘法次数:Cin;
一个输出神经元的加法次数:Cin-1;
所有输出神经元的乘法和加法总的运算次数:(2 xCin-1) x Cout

3.内存访问量

总的访问量:Cin+Cout+Cin x Cout


BN层的参数量:

2 x Cin(γ和β)

关于深度可分离卷积参数量和计算量的计算方式:
https://mydreamambitious.blog.csdn.net/article/details/124560414
关于标准卷积,分组卷积的参数量和计算量的计算方式:
https://www.cnblogs.com/hejunlin1992/p/12978988.html

知识点来源:【【精读AI论文】谷歌轻量化网络MobileNet V1
https://b23.tv/36kBxVP

  • 12
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值