本文主要为学习笔记,如有错误和侵权请联系本人。
1.网络结构
- 输入层(INPUT):输入是32x32x1的图像
- 第一个卷积层(C1):卷积核大小为:5x5,卷积核的个数为:6,滑动步长为:1,经过该卷积层后得到的feature maps为:6@28x28(6个28x28的特征图)。
- 第一个池化层(S2):池化层中核的大小为2x2,步长为2,经过该层之后特征图的大小为6@14x14。
- 第二个卷积层(C3):卷积核的大小为5x5,卷积核的个数为16,滑动步长为1,经过该层卷积后得到的feature maps为16@10x10。
- 第二个池化层(S4):池化层中核的大小为2x2,步长为2,经过该层之后特征图的大小为16@5x5
- 全连接层1(C5):该层可以通过120个卷积核组实现,卷积核组的大小为16x5x5(即卷积核的大小为5x5,数量为16个),经过该层后得到的输出为120维的向量。(即该层有120个神经元)注意:该全连接层是通过卷积方式实现的。
- 全连接层2(F6):该层的输入是120个特征,输出是84个特征,该层有84个神经元。
- 输出层(OUTPUT):该层有10个神经元,该层每个神经元的输入是84维的特征向量,输出是10维的特征向量。
2.待训练的参数个数
输入 | 输出 | 核大小 | 步长 | 训练参数 | |
---|---|---|---|---|---|
输入层(INPUT) | 1x32x32 | 0 | |||
卷积层1 | 1x32x32 | 6x28x28 | 6个5x5的卷积核 | 1 | 6*(5*5+1)=156 |
池化层1 | 6x28x28 | 6x14x14 | 2x2 | 2 | 0 |
卷积层2 | 6x14x14 | 16x10x10 | 16个6x5x5的卷积核 | 1 | 16*(655+1)=2416 |
池化层2 | 16x10x10 | 16x5x5 | 2x2 | 2 | 0 |
全连接层1 | 16x5x5 | 120x1x1 | 120个16x5x5的卷积核 | 1 | 120*(1655+1)=48120 |
全连接层2 | 120 | 84 | 120*84+84=10164 | ||
输出层 | 84 | 10 | 84*10+10=850 |
因此网络总共需要训练的参数为:156+2416+48120+10164+850=61706