1.CNN 即为卷积神经网络。
参考Charlotte77博客(https://www.cnblogs.com/charlotte77)
1.1为什么需要CNN
传统全连接神经网络对于张量中每一个元素添加权重和偏置,会导致整个网络产生的参数过于巨大。(对于一个2828大小的灰度图像,对其进行矩阵量化并打平后为一个2828=784个元素的一维列向量,隐藏层网络为15个神经元,会添加78415个权重。隐藏层和输出层10个神经元连接后,会添加7841510个权重,最后加上隐藏层和输出层15+10个偏置,总参数量达到78415*10+15+10 = 117625个参数)
并且经过多次反向传播迭代按反向梯度调整参数时,会出现梯度消失的问题。(反向传播即对于当前梯度求导并按照w = w-k*w’的公式更新参数。当梯度消失时,会导致参数无法更新)所以通过CNN能够有效减少神经网络中的参数,并能够保留输入的特征值。
1.2为什么CNN能够在减少参数的情况下仍然可以正确输出结果
对于图像识别,我们不需要完整的判断图像中的每一个像素,大多数情况下只需要提取其中特定的特征值。譬如我们看一张猫的图片,可能看到猫的眼镜或者嘴巴就知道这是张猫片,而不需要说每个部分都看完了才知道,啊,原来这个是猫啊。所以如果我们可以用某种方式对一张图片的某个典型特征识别,那么这张图片的类别也就知道了。这个时候就产生了卷积的概念。