TensorFLow - CNN简介

来自CloudWiki
跳转至: 导航搜索

卷积神经网络

深度学习最主要的网络结构就是卷积神经网络(CNN)

CNN在原来多层神经网络的基础上,加入了特征学习部分,具体操作就是在原来的全连接的层前面加入了部分连接的卷积层与降维层。 卷积神经网络(CNN)包括:输入层、卷积层、激活函数、池化层、全连接层组成;即INPUT(输入层)-CONV(卷积层)-RELU(激活函数)-POOL(池化层)-FC(全连接层)

输入层

输入层:输入原始数据(如图像),并进行去均值 和归一化操作

卷积层

卷积层:对输入数据进行特征提取:

Tf2-12.png

例如:输入图像是32*32*3,3是它的深度(即R、G、B),卷积层是一个5*5*3的filter。通过一个filter与输入图像的卷积可以得到一个28*28*1的特征图。

上图是用了两个filter得到了两个特征图;

池化层

池化层:而池化层往往在卷积层后面,通过池化来降低卷积层输出的特征向量,同时改善结果对输入的特征图进行压缩。即一方面使特征图变小,简化网络计算复杂度;一方面进行特征压缩,提取主要特征。

Tf2-13.png

激活函数

激活函数:用来在神经网络中加入非线性因素,使得神经网络可以更好地解决较为复杂的问题

常用的激活函数: Sigmoid函数、 tanh函数和ReLU

全连接层

全连接层:连接所有的特征,将输出值送给分类器(如softmax分类器)

Tf2-14.png