分组卷积计算量_深度学习中卷积的参数量与计算量

普通卷积

输入卷积:Win * Hin * Cin

卷积核:k * k

输出卷积:Wout * Hout * Cout

参数量:(即卷积核的参数)

k * k * Cin * Cout

或者:(k * k * Cin + 1) * Cout (包括偏置bias)

计算量:

k * k * Cin * Wout * Hout * Cout

bfa272094b30bde3d372fb589e9b3835.png

深度可分离卷积(Depthwise Separable Convolution)

深度可分离卷积可以分为:depthwise conv + pointwise conv

depthwise 卷积(输入channel等于输出channel)

输入卷积:Win * Hin * Cin

卷积核:k * k

输出卷积:Wout * Hout * Cin

参数量:

k * k * Cin

计算量:

k * k * Cin * Wout * Hout

e84ac8fb4daa9a5ee45cad027ba55ef2.png

pointwise conv即普通的1x1卷积,参数来按照普通1x1卷积来算

组卷积(Group Convolution)

输入卷积:Win * Hin * Cin

卷积核:k * k

输出卷积:Wout * Hout * Cout

分成g组

参数量:(即卷积核的参数)

k * k * (Cin / g) * (Cout / g) * g = k * k * Cin * Cout * (1 / g)

自然,分组卷积的参数量是标准卷积的 1/g

计算量:

k * k * (Cin/g) * (Wout/g) * Hout * Cout * g= k * k * Cin * Wout * Hout * Cout * (1/g)

1cee01cee278853e5d3b0eb26466db12.png

9cd702c6445b6ef0a7612bb890294c02.png

参考:

卷积核的参数量和计算量 https://www.cnblogs.com/ywheunji/p/11887906.html

理解分组卷积和深度可分离卷积如何降低参数量 https://zhuanlan.zhihu.com/p/65377955

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值