经典卷积神经网络之LeNet-5

        学习经典卷积神经网络目的就是了解卷积神经网络的发展历程,要知道先进算法的网络架构都是从经典卷积神经网络发展而来,废话不多说下面直接介绍LeNet-5卷积神经网络。
网络架构:
经典卷积神经网络之LeNet-5
其结构如右图所示,下面将逐层的介绍:
        第一层:输入层,收入的图片是一张大小为32*32的单通道图片,也就是(32, 32, 1)
        第二层:卷积层,filters=6, kernel_size=5, strides=1, padding=“valid”
                (32+0-5)/1+1=28
                那么得到的输出大小就是:(28, 28, 6)
                有多少参数需要训练:5×5×6×1+6=1565\times5\times6\times1+6=156
        第三层:池化层,kernel_size=2, strides=2, padding=“valid”
                (28+0-2)/2+1=14
                那么得到的输出大小就是:(14, 14, 6)
                有多少参数需要训练:无
        第四层:卷积层:filters=16, kernel_size=5, strides=1, padding=“valid”
                (14+0-5)/1+1=10
                那么得到的输出大小就是:(10, 10, 16)
                有多少需要训练的参数:5×5×16×6+16=24165\times5\times16\times6+16=2416
        第五层:池化层,kernel_size=2, strides=2, padding=“valid”
                (10+0-2)/2+1=5
                那么得到的输出大小就是:(5, 5, 16)
                有多少参数需要训练:无
        第六层:全连接层
                神经元个数=120
                有多少参数需要训练:5×5×16×120+120=481205\times5\times16\times120+120=48120
                这里就是将第五层进行展平:5×5×120=4005\times5\times120=400;那么全连接层的权重就是[400, 120]的矩阵,偏置就是120个
        第七层:全连接层
                神经元的个数=84
                有多少参数需要训练:120×84+84=10164120\times84+84=10164
                第七层的权重:[120, 84]的矩阵,偏置:84个
        第八层:
                神经元个数=10,这是因为要做手写数字识别任务
                有多少参数需要训练:84×10+10=85084\times10+10=850
tensorflow的网络结构代码如下:
经典卷积神经网络之LeNet-5
模型结构:
经典卷积神经网络之LeNet-5
        Lenet5是最早的卷积神经网络之一,可以看到其结构非常的简单,是由卷积、池化、全连接层拼接而成,而且其深度也很浅,但是它带来的影响确实很大。