CNN

柔情痞子 提交于 2020-02-29 13:47:21


1.全连接神经网络的局限性:

  • 当图片分辨率进一步增加时,当隐层数量增加时,参数会过多,参数增多导致计算速度缓慢,过拟合问题,需要合理的结构来有效减少参数个数.CNN可看做神经认知机的推广形式,CNN是一个多层的神经网络,每层由多个二维平面组成,其中每个平面由多个独立神经元组成.

2

2.1 CNN结构:

输入层:将每个像素代表一个特征点输入到网络中

卷积层:卷积运算的主要目的是使原信号特征增强,并降低噪音

降采样层:通过减少矩阵的长和宽,降低网络训练参数及模型的过拟合程度

全连接层:对生成的特征进行加权

softmax层:获得当前样例属于不同类别的概率

2.2 卷积

权值矩阵称为卷积核

卷积核在2维输入数据上滑动,对当前输入部分的元素进行矩阵乘法,然后将结果汇为单个输出像素值,重复直到

遍历整个图像,这个过程称为卷积

卷积操作之后的图像称为特征图feature map

局部连接:每个输入特性不用查看每个输入特征,只需查看部分输入特征

权值共享:卷积核在图像上滑动过程保持不变

多通道卷积:每个通道使用一个卷积核进行卷积操作,然后将这些特征图相同位置上的值相加,生成一个特征图
[m,m]->[n,n]
->[n,n]
->[n,n]
[m,m]through不同卷积核生成不同特征图,然后将这些特征图相加,然后加偏置,生成一张特征图

对图像用一个卷积核进行卷积运算,实际上是一个滤波的过程
每个卷积核都是一种特征提取方式,就像一个筛子,将图像中符合条件的部分筛选出来
padding 0填充 用额外的假象素 使得生成的特征图的尺寸和原图像的尺寸相等

2.3 pooling池化

降采样是降低特定信号的采样率的过程
计算图像一个区域上的某个特定特征的平均值或者最大值,这种聚合操作成为池化
卷积层的作用是探测上一层特征的局部连接,而池化的作用是在语义上把相似的特征合并起来,从而达到降维的目的
这些概要统计特征不仅具有低得多的维度,同时还会改善结果
均值池化:
最大池化:对池化区域内所有像素点取最大值,得到的特征纹理信息更加敏感
均值池化:对池化区域内像素点去均值,这种方法得到的特征数据对背景信息更加敏感
步长:卷积核在图片上移动的格数
步长大于1的卷积可以达到降维的目的 导致池化层是可选择的

2.4 卷积函数

import tensorflow as tf
import numpy as np            
tf.nn.conv2d(input,#需要做卷积的输入数据[batch,in_height,in_width,in_chnnels]
                 filter,#卷积核[filter_height,filter_width,in_chnnels,out_chnnels] #卷积核的高 宽 输入通道 输出通道数
                 strides,#图像每一维的步长,一维向量,有4个元素
                 padding,#SAME边缘填充适用于全尺寸操作 VALID表示边缘不填充
                 use_cudnn_on_gpu #默认
                 name             #默认
            ) 
  • 参数介绍

    input 4维向量
    batch 图片数量
    in_height[h1,h2,h3,…h[batch]]batch个tensor的height组成的一维向量
    in_width[w1,w2,w3,…w[batch]]batch个tensor的width组成的一维向量
    in_chnnels[c1,c2,c3…c[batch]]batch个tensor的in_chnnels组成的一维向量
    filter:
    filter_height卷积核的高度 [fh1,fh2,fh3,fh4…fhbatch]
    filter_width 卷积核的宽度 [fw1,fw2,fw3,…fwbatch]
    inchnnels 图像通道数
    out_chnnels 滤波器个数
    strides:一维向量,长度为4 [batch方向,height方向,width方向,chnnels方向]

2.5池化函数

tf.nn.max_pool(value,ksize,strides,padding,name=None)
value 池化的输入[batch, height, width, chnnels]
ksize:池化窗口的大小由于一般不在batch和chnnels上池化,所以ksize一般是[1,height,width,1]
strides:图像每一维的步长
padding:和卷积函数中padding含义一样

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!