利用全连接神经网络进行手写数字识别已经获得了较高的正确率,但是这个还可以提高。
首先先来看看全连接神经网络存在着什么问题:它忽略了结构,在将图片输入神经网络的时候,它是直接将其转换成一列,忽略像素点在位置上与其他像素点的关系。
在这个简单的手写数字识别中,忽略了这种结构关系还能保持一个不错的正确率,但是对于更加复杂的图像识别,忽略了这个结构关系往往不能获得好的结果。因此需要一种新的神经网络来解决这个问题。
卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一
相比于全连接,卷积神经网络使用卷积层与池化层对图像的特征进行处理,然后再用全连接输出结果。
卷积层需要学习参数,不同参数的卷积核对不同的图像会做出不同的响应。
池化层不需要学习参数,一般来说其是取最大值或者平均值。但是池化层的存在能大大增加神经网络的健壮性,因为即便是出现某些小的改变,对池化层的输出几乎无影响。
因为在多数情况下,我们均不知道这些参数之间有什么关系,而全连接就提供了一个很好的平台。
它假设全部参数之间都有关系,通过不断的学习,某些关系的边权会不断变大,说明这个关系是真实存在的;但某些关系的边权会不断减少,说明这个关系并不存在或者说这个关系非常弱,对最终的结果也不会有太大影响。