1、参数量的计算
1.1 卷积网络
假设卷积核的大小为 k*k, 输入channel为M, 输出channel为N。
(1)bias为True时:
则参数数量为:k×k×M×N + N(bias的数量与输出channel的数量是一样的)
(2)bias为False时:
则参数数量为:k×k×M×N
(3)当使用BN时,还有两个可学习的参数α和β,参数量均为N
则参数数量为:k×k×M×N + 3×N
常用网络架构的参数数量:
AlexNet:62369155
VGG16:138357544
ResNet10(BasicBlock):14356544
ResNet18(BasicBlock):33161024
ResNet34(BasicBlock):63470656
ResNet50(Bottleneck):46159168
ResNet101(Bottleneck):85205312
ResNet152(Bottleneck):117364032
1.2 全连接层
假设 输入神经元数为M,输出神经元数为N,则
(1)bias为True时:
则参数数量为:M*N + N(bias的数量与输出神经元数的数量是一样的)
(2)bias为False时:
则参数数量为:M×N
2、计算量
2.1 卷积
假设输入特征图(B,C,H,W),卷积核大小为K×K, 输入通道为C,输出通道为N,步长stride为S, 输出特征图大小为H2,W2.
(1)一次卷积的计算量
一个k×k的卷积,执行一次卷积操作,需要k×k次乘法操作(卷积核中每个参数都要和特征图上的元素相乘一次),k×k−1 次加法操作(将卷积结果,k×k 个数加起来)

本文详细介绍了卷积网络和全连接层的参数数量计算方法,包括卷积核大小、通道数、bias以及BN层的影响。同时,列举了常见网络架构如AlexNet、VGG16和ResNet系列的参数数量。此外,还讨论了卷积和全连接层的计算量,涉及乘法、加法操作次数以及批量处理的计算复杂度。
最低0.47元/天 解锁文章
1559

被折叠的 条评论
为什么被折叠?



