卷积神经网络
(1)输入层:将每个像素代表一个特征节点输入到网络中
(2)卷积层:主要目的是使原信号特征增强并降低噪音(下图)
(3)池化层(降采样层):降低网络训练参数及模型的过拟合程度
(4)全连接层:对生成的特征进行加权
(5)softmax层:获得当前样例属于不同类别的概率
卷积层:图像矩阵和权值矩阵的点乘
卷积操作相对于全连接的优点的优点:①局部连接:每个输出特征不用查看每个输入特征,值需要查看与卷积核相乘的这部分输入特征;②:权值共享:卷积核在图像上滑动过程中保持不变。(3*3的卷积核,所需参数为9)
池化:(1) 均值池化:对背景信息更加敏感
(2) 最大池化:对纹理特征信息更加敏感
用步长大于1的卷积操作也是降维的一种方式,有时候使用卷积来池化的效果比池化效果更好。
python
input_data = tf.nn.Variable(np.random.rand(10,6,6,4),dtype=np.float32)
filter_data=tf.Variable(np.random.rand(3,3,4,2),dtype=np.float32)# 3*3的卷积核,输入4通道输出2通道
y = tf.nn.conv2d(input,_datafilter_data,strides=[1,1,1,1],padding='VALID') #卷积函数,(10,6,6,4)变成(10,4,4,2)
output = tf.nn.max_pool(value=y,ksize=[1,2,2,1],strides=[1,2,2,1],,padding='SAVE') #(10,4,4,2) 变成(10,2,2,2)