神经网络的可训练参数量

神经网络的可训练参数量

神经网络中参数的数量是一个重要的考虑因素,因为它直接影响了模型的复杂性、训练和推理的效率,模型的泛化能力。

卷积层

输出尺寸 = 输入尺寸 − 卷积核尺寸 + 2 × 填充 步幅 + 1 \text{输出尺寸}=\frac{\text{输入尺寸}-\text{卷积核尺寸}+2\times \text{填充}}{\text{步幅}}+1 输出尺寸=步幅输入尺寸卷积核尺寸+2×填充+1
参数量 = K 2 × C i × C o + C o 参数量=K^2\times C_i \times C_o + C_o 参数量=K2×Ci×Co+Co
其中K为卷积核大小, C i C_i Ci为输入通道数, C o C_o Co为输出通道数,最后一项为每个卷积核对应的偏置的参数。

假设输入为(512, 512, 3),卷积层为

model.add(Conv2D(32,(3,3),input_shape=(512,512,3)))

输出格式为(510, 510,3),参数量为896。

输出尺寸 = 512 − 3 + 2 × 0 1 + 1 = 510 \text{输出尺寸}=\frac{512-3+2\times 0}{1}+1=510 输出尺寸=15123+2×0+1=510
参数量 = 3 2 × 3 × 32 + 32 = 896 \text{参数量}=3^2\times 3\times 32+32=896 参数量=32×3×32+32=896

激活层

激活层引入了非线性特征,但本身没有可训练参数。

池化层

池化层本身没有可训练参数,但是会影响输出尺寸。
输出尺寸 = ⌊ 输入尺寸 − 池化核尺寸 步幅 + 1 ⌋ \text{输出尺寸} = \left\lfloor \frac{{\text{输入尺寸} - \text{池化核尺寸}}}{{\text{步幅}}} + 1 \right\rfloor 输出尺寸=步幅输入尺寸池化核尺寸+1

展平层

展平层的作用是将之前输出特征转换为一维向量,以便连接到全连接层,其本身没有可训练参数。

全连接层

参数量 = T i × T o + T o 参数量=T_i\times T_o +T_o 参数量=Ti×To+To
其中 T i T_i Ti为输入通道数, T o T_o To为输出通道数,最后一项为偏置项的参数。
输入为(1600),输出为(400),全连接层为

model.add(Dense(400))

参数量为640400。

参数量 = 1600 × 400 + 400 = 640400 参数量=1600\times 400 + 400=640400 参数量=1600×400+400=640400

参考

  1. 神经网络参数量的计算
  • 8
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值