卷积神经网络CNN中参数的总数目计算

由三个卷积层组成的CNN:kernel=3 × 3,stride=2,padding=SAME。 最低层输出10个特征映射(feature map),中间层20个特征映射,最高层30个特征映射。输入是200 × 300的RGB图片。那么CNN中参数的总数目是多少?

1. 算偏置个数:

第一个卷积层 kernel=3×3,输入有3个通道(RGB图片),因此每个特征映射有3×3×3个weight,加上bias,每个特征映射对应28个参数。由于第一层有10个特征映射,因此有280个参数;

第二个卷积层 kernel=3×3,输入是前一层的10个特征映射,因此第二层的每个特征映射有3×3×10个weight,加上bias,每个特征映射对应91个参数。由于第二层有20个特征映射,因此需要91×20=1820个参数;

第三个卷积层 kernel=3×3,输入是前一层的20个特征映射,因此第三层的每个特征映射有3×3×20个weight,加上bias,每个特征映射对应181个参数。由于第三层有30个特征映射,因此这一层共有181×30=5430个参数。

因此共有280+1820+5430=7530个参数。

2. 不算偏置个数:

第一个卷积层 kernel=3×3,输入有3个通道(RGB图片),因此每个特征映射有3×3×3个weight,每个特征映射对应27个参数。由于第一层有10个特征映射,因此有270个参数;

第二个卷积层 kernel=3×3,输入是前一层的10个特征映射,因此第二层的每个特征映射有3×3×10个weight,每个特征映射对应90个参数。由于第二层有20个特征映射,因此需要90×20=1800个参数;

第三个卷积层 kernel=3×3,输入是前一层的20个特征映射,因此第三层的每个特征映射有3×3×20个weight,每个特征映射对应180个参数。由于第三层有30个特征映射,因此这一层共有180×30=5400个参数。

因此共有270+1800+5400=7470个参数。

你可能感兴趣的:(神经网络,cnn,深度学习,神经网络)