神经网络与深度学习课程总结(三)

目录

1.基本卷积神经网络

1.1 AlexNet

1.1.1 网络结构

1.1.2 网络说明

1.1.3网络改进

1.2 VGG-16

1.2.1网络结构

1.2.2 网络说明

1.3 残差网络

1.3.1 残差网络的必要性

1.3.2 构建残差网络

1.3.3 网络说明

2.常用数据集

1. MNIST

2. Fashion-MNIST数据集

3. CIFAR-10数据集

4. PASCAL VOC数据集

5. MS COCO数据集

6. ImageNet数据集

7. ISLVRC 2012子数据集

3.算法评估

3.1 相关概念

3.2 AP计算

4.目标检测与YOLO

4.1 目标检测问题

4.2 目标检测技术发展

4.3 目标检测基本思想

4.4 YOLO网络结构


1.基本卷积神经网络

1.1 AlexNet

 1.1.1 网络结构

1.1.2 网络说明

        AlexNet网络结构相对简单,使用了8层卷积神经网络,前5层是卷积层,剩下的3层是全连接层。

        改进: (1) 池化层均采用最大池化; (2) 选用ReLU作为非线性环节激活函数; (3) 网络规模扩大,参数数量接近6000万; (4) 出现“多个卷积层+一个池化层”的结构。

        普遍规律:随网络深入,宽、高衰减,通道数增加。

1.1.3网络改进

(1)改进输入样本

        最简单、通用的图像数据变形的方式。

        从原始图像(256,256)中,随机的crop出 一些图像(224,224)。【平移变换,crop 】

        水平翻转图像。【反射变换,flip】

        给图像增加一些随机的光照。【光照、彩 色变换,color jittering】

 

(2)改进激活函数

        采用ReLU替代Tan Sigmoid;用于卷积层和全连接层之后。 

 

(3)添加Dropout

        在每个全连接层后面使用一个 Dropout 层,以概率 p 随机关闭激活函数。

(4)采用双GPU策略

        AlexNet使用两块GTX580显卡进行训练,两块显卡只需要在特定的层进行通信。

 

1.2 VGG-16

1.2.1网络结构

 

 1.2.2 网络说明

        改进:网络规模进一步增大,参数数量约为1.38亿;由于各卷积层、池化层的超参数基本相同,整体结构呈现出规整的特点。

        普遍规律:随网络深入,高和宽衰减,通道数增多。

1.3 残差网络

1.3.1 残差网络的必要性

非残差网络的缺陷:

 

 残差网络的优势:

 

 梯度消失问题:

 

1.3.2 构建残差网络

残差快:

 残差网络:

 1.3.3 网络说明

        普通网络的基准模型受VGG网络的启发

        卷积层主要有3×3的过滤器,并遵循两个简 单的设计规则:①对输出特征图的尺寸相同的各层,都有相同数量的过滤器; ②如果特征 图的大小减半,那么过滤器的数量就增加一倍,以保证每一层的时间复杂度相同。

        ResNet模型比VGG网络更少的过滤器和更低的 复杂性。ResNet具有34层的权重层,有36亿 FLOPs,只是VGG-19(19.6亿FLOPs)的18%。

2.常用数据集

1. MNIST

  • MNIST数据集是由0〜9手写数字图片和数字标签所组成的,由60000个训练样本和10000个测试样本组成,每个样本都是一张28 * 28像素的灰度手写数字图片。

 

2. Fashion-MNIST数据集

  • FashionMNIST 是一个替代 MNIST 手写数字集 的图像数据集。它是由 Zalando旗下的研究部门提供,涵盖了来自 10 种类别的共 7 万个不同商品的正面图片。
  • FashionMNIST 的大小、格式和训练集/测试集划分与原始的MNIST 完全一致。60000/10000 的训练测试数据划分,28x28的灰度图片。你可以直接用它来测试你的机器学习和深度学习算法性能,且不需要改动任何的代码

3. CIFAR-10数据集

  • CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像。有50000个训练图像和10000个测试图像
  • 数据集分为五个训练批次和一个测试批次,每个批次有10000个图像。测试批次包含来自每个类别的恰好1000个随机选择的图像

4. PASCAL VOC数据集

  • PASCAL的全称是Pattern Analysis, Statistical Modelling and Computational Learning
  • VOC的全称是Visual Object Classes
  • 目标分类(识别)、检测、分割最常用的数据集之一
  • 第一届PASCAL VOC举办于2005年,2012年终止。常用的是 PASCAL 2012

5. MS COCO数据集

  • PASCAL的全称是Microsoft Common Objects in Context,起源于微软于2014年出资标注的Microsoft COCO数据集
  • 数据集以scene understanding为目标,主要从复杂的日常场景中截取
  • 包含目标分类(识别)、检测、分割、语义标注等数据集
  • ImageNet竞赛停办后,COCO竞赛就成为是当前目标识别、检测等领域的一个最权威、最重要的标杆
  • 官网:http://cocodataset.org

6. ImageNet数据集

  • 始于2009年,李飞飞与Google的合作:“ImageNet: A Large-Scale Hierarchical Image Database”
  • 总图像数据:14,197,122
  • 总类别数:21841
  • 带有标记框的图像数:1,034,908

7. ISLVRC 2012子数据集

  • 训练集:1,281,167张图片+标签
  • 类别数:1,000
  • 验证集:50,000张图片+标签
  • 测试集:100,000张图片

3.算法评估

3.1 相关概念

        TP:被正确地划分为正例的个数,即实际为正例且被分类器划分为正例的实例数
        FP:被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的实例数
        FN:被错误地划分为负例的个数,即实际为正例但被分类器划分为负例的实例数
        TN:被正确地划分为负例的个数,即实际为负例且被分类器划分为负例的实例数

        精确率P(Precision):TP/(TP+FP)

        召回率R(Recall):TP/(TP+FN)。

        P-R曲线:召回率越高,准确率越低。

 

示例:

        有一个测试集含有5个飞机(正样本),5个大雁(负样本),需要做分类问题,判断图片是否是飞机。分类为飞机的照片中,含有3个飞机,1个大雁;分类为大雁的照片中,4个大雁,2个飞机。那么TP:3,FP:1,FN:2,TN:4。P=75%,R=60%。

        最终神经网络会计算出一个概率,调整判断的阈值可以准确改变准确率或召回率,在刚才例子中,对应某阈值,样本被分类为飞机,改变阈值会改变划分,进一步影响准确率或召回值。

3.2 AP计算

mAP:均值平均准确率。

         其中𝑁代表测试集中所有图片的个数 𝑃(𝑘)表示在能识别出 𝑘个图片的时候Precision 的值,而 Δ𝑟(𝑘)则表示识别图片个数从 𝑘−1变化到 𝑘时(通过调整阈值)Recall 值的变化情况 。


示例:
         在上述例子中,AP的计算值为:

=(1∗(0.2−0))+(1∗(0.4−0.2))+(0.66∗(0.4−0.4))+(0.75∗(0.6−0.4))+(0.6∗(0.6−0.6))+(0.66∗(0.8−0.6))+(0.57∗(0.8−0.8))+(0.5∗(0.8−0.8))+(0.44∗(0.8−0.8))+(0.5∗(1−0.8))=0.782.
=(1∗0.2)+(1∗0.2)+(0.66∗0)+(0.75∗0.2)+(0.6∗0)+(0.66∗0.2)+(0.57∗0)+(0.5∗0)+(0.44∗0)+(0.5∗0.2)=0.782.

        那些Recall值没有变化的地方,对增加AP值没有贡献。

mAP计算:每一个类别均可确定对应的AP。在多类检测中,取每个类AP的平均值,即位mAP。实际工业检测中,可能不用这些指标,用一些其他指标。

4.目标检测与YOLO
 

4.1 目标检测问题

        目标检测是在给定的图片中精确找到物体所在位置,并标注出物体的类别。这实际上是一个分类和回归问题。问题:物体的尺寸变化范围很大,摆放物体的角度,姿态不定,而且可以出现在图片的任何地方,并且物体还可以是多个类别。

 4.2 目标检测技术发展

 

4.3 目标检测基本思想

        基本的滑动窗口: 采用滑动窗口的目标检测算法思路非常简单,它将的基本原理就是采用不同大小和比例 (宽高比) 的窗口在整张图片上以设定的步长进行滑动,遍历图片的所有位置, 然后对这些窗口对应的区域做图像分类,这样就可以实现对整张图片的检测了。

 

        实际上这么做存在问题:滑动次数太多,计算太慢;目标大小不同,每一个滑动位置需要用很多框,图片宽度和高度都不相同,比例也不相同,因此需要取很多框,消耗时间更多;。这些问题都导致这样的基本思路用在目标检测中,会导致检测时间十分漫长,基本不可用。

        因此,可以对滑动窗口进行改进。

        一般图片中,大多数位置都不存在目标。可以确定那些更有可能出现目标的位置,再有针对性的用 CNN 进行检测——两步法(Region Proposal)。两步法依然很费时!
        进一步减少出现目标的位置,而且将目标分类检测和定位问题合在一个网络里——一步法( YOLO)。很多系统基本上都采用YOLO,因为YOLO十分迅速。

        二步法中的每个滑动窗口之间存在大量重叠,直接将图片划分成不重叠的窗口,进行检测。

4.4 YOLO网络结构

YOLO网络结构概略图:

YOLO官方的模型结构图:

 

         YOLO的结构非常简单,就是单纯的卷积、池化最后加了两层全连接,从网络结构上看,与前面介绍的CNN分类网络没有本质的区别,最大的差异是输出层用线性函数做激活函数,因为需要预测bounding box的位置(数值型),而不仅仅是对象的概率。所以粗略来说,YOLO的整个结构就是输入图片经过神经网络的变换得到一个输出的张量,如下图所示:

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值