1.卷积神经网络基础;
对于CNN中一些概念的理解
1.feature map
在CNN的各个卷积层中,数据都是以3维形式存在的。我们可以把它看成许多个2维平面图叠在一起,其中每个2维图称为一个feature map .
在输入层,如果是灰度图,只有一个feature map;如果是彩色图片,一般是3个feature map(RGB)。
其他层:层与层之间会有若干个卷积核(kernel),上一层每个feature map跟每个卷积核做卷积,都会产生下一层的一个feature map,如果有N个卷积核,下一层就会产生N个feature map.
2.多个feature map 的作用是什么
在CNN中,我们希望用一个网络模拟视觉通路的特性,分层的概念是自底向上构造简单到复杂的神经元。
下面只考虑某一层,在CNN中,在同一层,我们希望得到对于一张图片多种角度的描述,具体来讲就是用多种不同的卷积核对图像进行卷积,得到不同核上的响应,作为图像的特征。相当于我们通过描述某个人的身高/体重等特征来描述一个人。换到图像上来说,相当于形成图像在同一层次不同基上的描述。
下层的核主要是一些简单的边缘检测器,上层的核主要是一些简单核的叠加。具体多少个
featuremap, 简单问题少,复杂问题多,但自底向上一般是核的数量变多(但也有例外,如Alexnet),主要靠经验
3.卷积核的形状
每个卷积核具有长、宽、深三个维度。在CNN的一个卷积层中:
卷积核的长、宽都是人为指定的,长X宽也被称为卷积核的尺寸,常用的尺寸为3X3,5X5等;
卷积核的深度与当前图像的深度(feather map的张数)相同,所以指定卷积核时,只需指定其长和宽 两个参数。例如,在原始图像层 (输入层),如果图像是灰度图像,其feather map数量为1,则卷积核的深度也就是1;如果图像是grb图像,其feather map数量为3,则卷积核的深度也就是3.
还有一些细节参考原文链接
CNN基础概念及计算过程
2.leNet;
3.卷积神经网络进阶
1.AlexNet
-
首次证明了学习到的特征可以超越⼿⼯设计的特征,从而⼀举打破计算机视觉研究的前状。
特征: -
8层变换,其中有5层卷积和2层全连接隐藏层,以及1个全连接输出层。
-
将sigmoid激活函数改成了更加简单的ReLU激活函数。
-
用Dropout来控制全连接层的模型复杂度。
-
引入数据增强,如翻转、裁剪和颜色变化,从而进一步扩大数据集来缓解过拟合。
**2.使用重复元素的网络(VGG) **
3.⽹络中的⽹络(NiN)
- LeNet、AlexNet和VGG:先以由卷积层构成的模块充分抽取 空间特征,再以由全连接层构成的模块来输出分类结果。
- NiN:串联多个由卷积层和“全连接”层构成的小⽹络来构建⼀个深层⽹络。
- ⽤了输出通道数等于标签类别数的NiN块,然后使⽤全局平均池化层对每个通道中所有元素求平均并直接⽤于分类。
4.GoogLeNet - 由Inception基础块组成。
- Inception块相当于⼀个有4条线路的⼦⽹络。它通过不同窗口形状的卷积层和最⼤池化层来并⾏抽取信息,并使⽤1×1卷积层减少通道数从而降低模型复杂度。
- 可以⾃定义的超参数是每个层的输出通道数,我们以此来控制模型复杂度。
4
易错题