1. Alexnet
1.1 网络结构
1.2 网络说明
- 网络一共有8层可学习层——5层卷积层和3层全连接层
- 改进
- 输入样本
从原始图像(256,256)中,随机的crop出一些图像(224,224)。
水平翻转图像。【反射变换,flip】
给图像增加一些随机的光照。【光照、彩色变换,color jittering】
- 池化层均采用最大池化
- 选用ReLU作为非线性环节激活函数
- 网络规模扩大,参数数量接近6000万
- 出现“多个卷积层+一个池化层”的结构
- Dropout:在每个全连接层后面使用一个 Dropout 层,以概率 p 随机关闭激活函数
- 双GPU:AlexNet使用两块GTX580显卡进行训练,两块显卡只需要在特定的层进行通信
详细解释:以第一层conv1为例
- relu1:max(0,x),作为激活函数紧接在卷积层后面
- norm1:局部响应归一化LRN
- norm1:局部响应归一化LRN
- pool1:采用max pooling
- pooling核大小为3×3
- stride为2,即pooling核的步长是2,即2倍降采样
- 此处的pool1层是有交叠的池化层,即pooling核在相邻位置有重叠
2. VGG-16
2.1 网络结构
2.2 参数数量变化
2.3 网络说明
- 改进
- 网络规模进一步增大,参数数量约为1.38亿
- 由于各卷积层、池化层的超参数基本相同,整体结构呈现出规整的特点。
2. 普遍规律
- 随网络深入,高和宽衰减,通道数增多。
3.残差网络
3.1 残差网络的缺陷
3.2 残差网络的优势
3.3 梯度消失问题
3.4 残差块
3.5 残差网络
- 普通网络的基准模型受VGG网络的启发
- 卷积层主要有3×3的过滤器,并遵循两个简单的设计规则:①对输出特征图的尺寸相同的各层,都有相同数量的过滤器; ②如果特征图的大小减半,那么过滤器的数量就增加一倍,以保证每一层的时间复杂度相同。
- ResNet模型比VGG网络更少的过滤器和更低的复杂性。ResNet具有34层的权重层,有36亿FLOPs,只是VGG-19(19.6亿FLOPs)的18%。
4.常用数据集
4.1 MNIST
- MNIST数据集是由0〜9手写数字图片和数字标签所组成的,由60000个训练样本和10000个测试样本组成,每个样本都是一张28 * 28像素的灰度手写数字图片。
4.2 Fashion-MNIST数据集
- FashionMNIST 是一个替代 MNIST 手写数字集 的图像数据集。它是由 Zalando旗下的研究部门提供,涵盖了来自 10 种类别的共 7 万个不同商品的正面图片。
- FashionMNIST 的大小、格式和训练集/测试集划分与原始的MNIST 完全一致。60000/10000 的训练测试数据划分,28x28的灰度图片。你可以直接用它来测试你的机器学习和深度学习算法性能,且不需要改动任何的代码
4.3 CIFAR-10数据集
- CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像。有50000个训练图像和10000个测试图像
- 数据集分为五个训练批次和一个测试批次,每个批次有10000个图像。测试批次包含来自每个类别的恰好1000个随机选择的图像
4.4 PASCAL VOC数据集
- PASCAL的全称是Pattern Analysis, Statistical Modelling and Computational Learning
- VOC的全称是Visual Object Classes
- 目标分类(识别)、检测、分割最常用的数据集之一
- 第一届PASCAL VOC举办于2005年,2012年终止。常用的是 PASCAL 2012
4.5 MS COCO数据集
- PASCAL的全称是Microsoft Common Objects in Context,起源于微软于2014年出资标注的Microsoft COCO数据集
- 数据集以scene understanding为目标,主要从复杂的日常场景中截取
- 包含目标分类(识别)、检测、分割、语义标注等数据集
- ImageNet竞赛停办后,COCO竞赛就成为是当前目标识别、检测等领域的一个最权威、最重要的标杆
- 官网:http://cocodataset.org
4.6 ImageNet数据集
- 始于2009年,李飞飞与Google的合作:“ImageNet: A Large-Scale Hierarchical Image Database”
- 总图像数据:14,197,122
- 总类别数:21841
- 带有标记框的图像数:1,034,908
4.7 ISLVRC 2012子数据集
- 训练集:1,281,167张图片+标签
- 类别数:1,000
- 验证集:50,000张图片+标签
- 测试集:100,000张图片
5. 卷积与滤波
5.1 图像滤波与卷积
- 与1维信号滤波类似,图像滤波由卷积定义:
- 在图像中,也常以模版的形式定义:
- 如果滤波器对称,则二者等价
- 滤波器f(x, y)左右、上下反转:得到f(−x, −y);
- 按照前述公式计算卷积(先乘后累加)
5.2 图像去噪(图像平滑)
- 在一个小区域内(通常3*3)像素值平均
5.3 图像去噪(图像平滑)
图像边缘检测——基本算子
图像边缘检测算子
-
Sobel算子
-
LoG算子
边缘检测算子结果比较
6. 数据集与评价指标
- 算法评估相关概念
- TP: 被正确地划分为正例的个数,即实际为正例且被分类器划分为正例的实例数
- FP: 被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的实例数
- FN: 被错误地划分为负例的个数,即实际为正例但被分类器划分为负例的实例数
- TN: 被正确地划分为负例的个数,即实际为负例且被分类器划分为负例的实例数
- P(精确率): TP/(TP+FP)
- R(召回率): TP/(TP+FN)。召回率越高,准确度越低
- P-R曲线
- P-R的关系曲线图,表示了召回率和准确率之间的关系
- 精度(准确率)越高,召回率越低
- 置信度与准确率
- 调整阈值可改变准确率或召回值
- 可以通过改变阈值(也可以看作上下移动蓝色的虚线),来选择让系统识别能出多少个图片,当然阈值的变化会导致Precision与Recall值发生变化。比如,把蓝色虚线放到第一张图片下面,也就是说让系统只识别出最上面的那张飞机图片,那么Precision的值就是100%,而Recall的值则是20%。如果把蓝色虚线放到第二张图片下面,也就是说让系统只识别出最上面的前两张图片,那么Precision的值还是100%,而Recall的值则增长到是40%。
- AP计算
- mAP:均值平均准确率
- 其中N代表测试集中所有图片的个数, P(k)表示在能识别出 个图片的时候Precision的值,而 Δr(k)则表示识别图片个数从k−1变化到k时(通过调整阈值)Recall值的变化情况。
- mAP计算
- 每一个类别均可确定对应的AP
- 多类的检测中,取每个类AP的平均值,即为mAP