了解Keras Conv2D层中的参数数量

问题描述 投票:1回答:1

我的第一层是:

model.add(tf.keras.layers.Conv2D(filters=32, kernel_size=3, padding="same", activation="relu", input_shape=[32, 32, 3]))

以及“模型摘要”表中的参数数量:

    Layer (type)                 Output Shape              Param #   
=================================================================
conv2d_4 (Conv2D)            (None, 32, 32, 32)        896  

根据我的理解,参数的数量必须是:

(No of filters) X (Number of parameters in Kernel)

即就我而言==> 32 X (3 X 3) = 288

但是它是896。896怎么样?

谢谢

keras conv-neural-network convolution
1个回答
3
投票

使用以下公式计算Keras Conv2D层中的参数数量:

number_parameters = out_channels * (in_channels * kernel_h * kernel_w + 1)  # 1 for bias

所以,就您而言,

in_channels = 3
out_channels = 32
kernel_h = kernel_w = 3
number_parameters = 32(3*3*3 + 1) = 896
© www.soinside.com 2019 - 2024. All rights reserved.