1.CNN介绍
1.1CNN的用途
step1:通过判断鸟嘴这一部分图片来判断是不是是鸟类。
step2:两种鸟类公用一个神经元来进行判断,而不用两个不同的神经元。
step3:图像的缩放,将奇数行偶数列像素去除,进行缩放。
1.2 CNN网络架构
不同层实现的功能不同:
2.CNN介绍
2.1 卷积层Convolution layer
2.1.1 卷积层
每一个filter(矩阵)中的值是学习出来的,而不是人为的给定。从左上角开始,假定以1的步长(stride)进行位移先右移在下移,并对每一个矩阵进行运算。
一个网络中拥有大量的filter即不同的矩阵,以filter2为例。这个过程叫做特征映射(Feature Map)
2.1.2 彩色图像
彩色图像是由RGB组成的,因而可以看做是个立方体,相应的filter也是个立方体。
2.1.3 卷积与全连接的比较
卷积就是将全连接中部分的weight拿掉。
卷积为3*3的filter做卷积等同于将像素点平铺后进行运算。如图,各颜色一一对应。
2.2 池化层Pooling layer
2.2.1 max pooling
将矩阵进行划分,取每个的最大值。
其效果为:
每一个filter代表着一个channel
2.3 泛化层flatten layer
Flatten层用来将输入“压平”,即把多维的输入一维化,常用在从卷积层到全连接层的过渡。Flatten不影响batch的大小。
3.CNN in Keras
4.CNN原理
5.CNN应用