深度学习之CNN

来源:互联网 发布:淘宝市场行情标准版 编辑:程序博客网 时间:2024/05/16 05:29

1.熟悉各收敛函数:

通常 我们知道 因为relu 收敛效果要比sigmod 与tanh 要好,所以在cnn中常用relu,所以 其实 对于输出o=relu(wx+b) ,

sigmod函数的数学公式为: Θ(x)=11+ex 函数取值范围(0,1),

ReLU(校正线性单元:Rectified Linear Unit)激活函数


tanh(x)函数的数学公式为(函数取值范围(-1,1),):tanh(x)=sinh(x)cosh(x)



max(0,x)={0,x,if x  0if x > 0

步骤 建模--训练模型--保存模型--恢复模型--输入参数--进行预测

CNN里的层,除了输入/输出层之外,把隐含层又分成了卷积层、池化层、以及全连接层

1.卷积层会对原始输入数据做加权求和的处理

2.池化层是为了减小模型复杂度,通过降采样缩小特征图的尺寸。

3.全连接层是将最终高度抽象化的特征图与输出直接进行的全连接,这与入门级MNIST库的模型训练做的事儿是一样的,一个简单的全映射

举例:第一个卷积层C1对32*32的输入数据(假设成一个矩阵,其中每个元素代表当前位置像素点灰度值的强弱)进行二维加权相加,我们假设卷积器的权重矩阵是一个5*5的

输出会得到28*28的尺寸

输出宽度=输入宽度-(卷积器宽度-1):32-5+1=28
输出高度=输入高度-(卷积器高度-1

采样后28/2=14


2.3.1 卷积的原理

其实卷积很好理解,左侧绿色的部分的5*5矩阵其实一般就是我们输入的图片的灰度值(可以想象成一张5px*5px的黑白照片,然后把黑白照片上的每一个点转化成矩阵上的每一个元素),然后上面的黄色部分矩阵就是我们的过滤器,用来提取特征,(其实应该叫滤波器或者卷积核),让卷积核在输入矩阵上进行从左到右,从上到下滑动,然后每一次滑动,两个矩阵对应位置的元素相乘然后求和,就是右边那个矩阵的一个元素。

2.3.2 滑动的步长-stride

上面那张图片从左到右,每次滑动的时候只移动一格,但是其实它一次滑动多格,这就是步长



2.3.1 卷积的原理

其实卷积很好理解,左侧绿色的部分的5*5矩阵其实一般就是我们输入的图片的灰度值(可以想象成一张5px*5px的黑白照片,然后把黑白照片上的每一个点转化成矩阵上的每一个元素),然后上面的黄色部分矩阵就是我们的过滤器,用来提取特征,(其实应该叫滤波器或者卷积核),让卷积核在输入矩阵上进行从左到右,从上到下滑动,然后每一次滑动,两个矩阵对应位置的元素相乘然后求和,就是右边那个矩阵的一个元素。

2.3.2 滑动的步长-stride

上面那张图片从左到右,每次滑动的时候只移动一格,但是其实它一次滑动多格,这就是步长



0 0