吴恩达卷积神经网络学习笔记(一)
一.卷积神经网络(一)1.1 计算机视觉图片分类和图片识别,目标检测,图片风格迁移特征向量的维度卷积神经网络一般应用于计算机视觉领域,由于有的时候图片的像素点很多,导致神经网络输入特征值的维数很多。1.2 边缘检测示例弄清一张照片中的物体,利用电脑进行去识别,垂直边缘检测,水平边缘检测。如下图所示,原图是一个661的矩阵,卷积核是一个331的矩阵,经过卷积后得到一个441的矩阵。(为了检测图像中的
一.卷积神经网络(一)
1.1 计算机视觉
图片分类和图片识别,目标检测,图片风格迁移

特征向量的维度

卷积神经网络一般应用于计算机视觉领域,由于有的时候图片的像素点很多,导致神经网络输入特征值的维数很多。
1.2 边缘检测示例
弄清一张照片中的物体,利用电脑进行去识别,垂直边缘检测,水平边缘检测。

如下图所示,原图是一个661的矩阵,卷积核是一个331的矩阵,经过卷积后得到一个441的矩阵。(为了检测图像中的垂直边缘,可以构造一个3*3的矩阵,在共用习惯中,在卷积神经网络的术语中,它被称为过滤器。在论文中,有时候会被称为核)

计算过程如下:(各方格一一对应,相乘然后进行相加)
| 3 | 0 | 1 |… … … …| 1 | 0 | -1 |
| 1 | 5 | 8 |…*… . … .| 1 | 0 | -1 | =3+1+2-1-8-2=-5
| 2 | 7 | 2 |… … … …| 1 | 0 | -1 |
此例子与上面相同(垂直边缘的原理)

卷积运算提供了一个比较方便的算法来发现图像中的垂直边缘。
1.3 更多边缘检测例子
垂直边缘检测不仅可以检测垂直方向的边缘,还可以区分该边是从亮到暗(正边)还是从暗到亮(负边)。

除了之前卷积核中数字组合外还有很多,在做边缘检测的过程中最好将卷积核中的数字作为参数进行学习,这样得到的神经网络效果最好。

滤波器的不同,会有不一样的特性

通过反向传播,Sobel滤波器和Scharr滤波器以及其他滤波器,对于数据的捕捉能力甚至胜过任何手写的滤波器,可以检测出45度、60度或73度,甚至是任何角度的边缘。
1.4 Padding(在边缘是否填充)
如果有n*n个方格,乘以f*f的滤波器,那么将会得到一个(n-f+1)*(n-f+1)的输出,这样的卷积方式,其存在两个缺陷:
一是当一个6*6的图像经过3*3的卷积核卷积后会变成一个4*4的图像,这使图像经过卷积后变小了;
二是原矩阵边缘处只被运算一次,而中心处会被运算多次,导致边缘处大部分信息被丢失了。

不过可以在输出边缘都填充一圈像素点。
下图是两种卷积方式:
Valid卷积是令padding为0,意味着不填充
Same卷积是通过添加padding使卷积前和卷积后图像的大小相同(p=(f-1)/2)。
引入padding后维数的公式为n+2p-f+1。

推荐使用奇数的过滤器,其中n为n*n的图像,p为填充的像素点(可以自定义),f为过滤器(f*f的过滤器),由此出现一个(n+2p-f+1)*(n+2p-f+1)的输出。
1.5 卷积步长stride(filer每次移动的长度)
当步长为2时,每进行一次运算后都要向左或者下移动两个像素点,如下图。

有步长的情况下维数的计算公式:
n×n * f×f =(n+2p-f)/s+1 × (n+2p-f)/s+1

镜像操作(mirroring operation):
| 3 | 0 | 1 | | 2 | 8 | 1 |
| 1 | 5 | 8 | ========> | 7 | 5 | 0 |
| 2 | 7 | 2 | | 2 | 1 | 3 |
沿着对角线进行对称交换数值。

一般不进行此类操作
在B站看了吴恩达深度学习课程第四课——卷积神经网络的视频,想做个笔记,让这个寒假过得充实一点,嘻嘻,有感兴趣的同学一起来玩呀!
更多推荐
所有评论(0)