『青年AI自强计划』第6章视觉分类任务LeNet5,AlexNet,ZFNet,VGG,GoogleNet,ResNet,ResNeXt,SENet,MobileNet!

本文主要是介绍『青年AI自强计划』第6章视觉分类任务LeNet5,AlexNet,ZFNet,VGG,GoogleNet,ResNet,ResNeXt,SENet,MobileNet!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

视觉分类任务

文章目录

    • 一、分类任务简介
      • 1.1、分类发展简史
    • 二、卷积知识回顾
      • 2.1、卷积运算
      • 2.2、池化运算
      • 2.3、padding运算
      • 2.4、三维卷积(池化)
      • 2.5、LeNet5 :一切的原点
    • 三、AlexNet&ZFNet
      • 3.1、AlexNet(2012):深度CNN与BD的首次触电
      • 3.2、ZFNet(2013):过渡,对AlexNet小调整
    • 四、VGG(2014):“标准模块+堆叠”
      • 4.1、VGG16 :“堆叠” block
      • 4.2、两个3×3的卷积核替代5×5(三个3×3卷积核替代7×7)分析
        • 4.2.1、两个3x3的卷积核替代5x5的卷积核
        • 4.2.2、三个3x3的卷积核替代7x7的卷积核
        • 4.2.3、优点总结
    • 五、GoogleNet :关键词“手动定制”
      • 5.1、GoogleNet-Iception V1(2014)
      • 5.2、Inception V3 卷积核分解
      • 5.3、网络可以有多深?
    • 六、ResNet(2015):打破限制,超越人类
    • 七、ResNeXt&SENet
      • 7.1、ResNeXt(2016):ResNet Plus升级版
      • 7.2、SENet(2017):集大成者
    • 八、各种网络对比图
    • 九、小结&模型压缩
      • 9.1、小结
      • 9.2、模型压缩:Deep Compression
      • 9.3、网络可以有多快?
    • 十、MobileNet:轻量化(参数少)

一、分类任务简介

1.1、分类发展简史

二、卷积知识回顾

2.1、卷积运算

2.2、池化运算

2.3、padding运算

2.4、三维卷积(池化)

2.5、LeNet5 :一切的原点

三、AlexNet&ZFNet

3.1、AlexNet(2012):深度CNN与BD的首次触电

注意:dropout现在在陆续退出历史舞台,因为大家发现参数初始化的足够好,用了batch_norm的话,可能没有必要使用dropout了,这是一个趋势!

3.2、ZFNet(2013):过渡,对AlexNet小调整

注意:红色框标记的是和AlexNet网络的不同之处,区别不大! 参数:模型本身选择的参数例如权重W,其他都是超参数了!

  • 第二层中由于第一层卷积用的步长为4太大了,导致了有非常多的混叠情况;因此改变了AlexNet的第一层即将滤波器的大小11x11变成7x7,并且将步长4变成了2,下图为AlexNet网络结构与ZFNet的比较。在稍微更改了第一层之后,分类性能提升了。

四、VGG(2014):“标准模块+堆叠”

4.1、VGG16 :“堆叠” block

注意:一个7×7的卷积核等价3个3×3卷积核,全部换成3×3的卷积核。实际等价是比较难得。有2个好处:

  • 多经过了2个激活函数(过得激活函数越多等于越能把决策边界描述的越细致)!
  • 选择参数量减少了!

4.2、两个3×3的卷积核替代5×5(三个3×3卷积核替代7×7)分析

4.2.1、两个3x3的卷积核替代5x5的卷积核
  • 知道了一个理论,两个3x3的卷积核替代5x5的卷积核,可以减少计算量,且最终的计算结果是一样的,但是为什么呢?
**一个5*5卷积**
我们使用5*5的卷积核对其卷积,步长为1,不填充
根据计算公式[(n+2*p-f)/2 + 1]向下取整。
得到的结果是:(32-5)/1+1=28
**两个3*3卷积核**
然后我们使用2个卷积核为33的,这里的两个是指进行2层33的卷积:
第一层3*3:
得到的结果是[(32-3)/1+1]=30
第二层3*3:
得到的结果是[(30-3)/1+1]=28
所以我们的最终结果和5x5的卷积核是一样的,都是28。
一个55的计算量为 5x5xchannels = 25xchannels;
两个33的计算量为 3x3xchannels*2 = 18xchannels
明显,两个3x3的卷积的计算量小于一个5x5卷积的计算量
4.2.2、三个3x3的卷积核替代7x7的卷积核
  • 同理,一个7x7的卷积核可以用三个个3x3的卷积核来替代。我们假设图片是32*32的
一个7*7卷积
我们使用5*5的卷积核对其卷积,步长为1,不填充
根据计算公式[(n+2*p-f)/2 + 1]
得到的结果是:(32-7)/1+1=26
三个3*3卷积核
然后我们使用2个卷积核为33的,这里的两个是指进行2层33的卷积:
第一层3*3:
得到的结果是(32-3)/1+1=30
第二层3*3:
得到的结果是(30-3)/1+1=28
第三层3*3:
得到的结果是(28-3)/1+1=26
所以我们的最终结果和7x7的卷积核是一样的,都是26。可以互相替换。
一个7x7的计算量为7x7xchannels = 49xchannels;
两个3*3的计算量为 3x3xchannelsx3 = 27xchannels
所以,三个3x3的卷积的计算量小于一个7x7卷积的计算量
以上是我的理解,如有其它更通俗的理解,欢迎指教。
4.2.3、优点总结
  • 堆叠含有小尺寸卷积核的卷积层来代替具有大尺寸的卷积核的卷积层,并且能够使得感受野大小不变,而且多个3x3的卷积核比一个大尺寸卷积核有更多的非线性(每个堆叠的卷积层中都包含激活函数),使得decision function更加具有判别性。

五、GoogleNet :关键词“手动定制”

注意:Inception是什么呢(盗梦空间的英文名字)?看成一个黑盒子,本质为特征提取器,展开为:不同尺寸的卷积层,还有池化层,先用1×1卷积核改变通道数,这里为降低通道的维度。看图说!超参数越多,人设计的时候考虑越多!

5.1、GoogleNet-Iception V1(2014)

  • GoogleNet家族

注意:V2版本看图中间,除了1×1的卷积核,其他都换成3×3的标准卷积核了。

5.2、Inception V3 卷积核分解

5.3、网络可以有多深?

注意:网络过深错误率上升了?为啥:网络退化!

  • 网络退化
  • 网络退化的原因?

注意:网络退化的原因:上面一些论文这方面的,我给一个感性的解释:在越多维的空间中画出决策边界越难!

六、ResNet(2015):打破限制,超越人类

图1 图2 图3:ResNet注意的事项

注意:residual block残差块,ResNet其中的Res就是代表残差,残差是什么意思呢?
就是上面第一图中,卷积直接短接了(短路的连接!),一旦短接了,里面的卷积叫做残差了。

  • 将输入的浅层信号直接输出特征集合,元素相加,图1中的右侧。
  • 这要求:输出的feature map(FP),必须和输入FP的尺寸完全相等。
  • 假设起这个短接线名字叫做废物检测器,意思就是接上之后(短接),中间的卷积单元证明是不是废物,如果不是废物的情况下:通过反向传播会学到一些有用的特征,参数值就会改变,左侧的恒等连接(短接)就没与那么重要了;如果这是废物的情况下:参数自己就学成0了。所以信号传输过来它真的是一个废物,他直接从上面的恒等连接(短接)传输走了。所以这个残差单元是有效的!
  • 两种版本,ResNet34借鉴VGG中图2中的左侧。ResNet50右侧借鉴GoogleNet,借鉴的网络不通。

七、ResNeXt&SENet

7.1、ResNeXt(2016):ResNet Plus升级版

注意:借鉴了VGG和GoogleNet。进行了融合!

7.2、SENet(2017):集大成者

图1

注意:这是ImageNet 的最后一次比赛。2010年开始的。

  • 之前的网络没有学习通道特征,平均池化。图1中。

八、各种网络对比图

  • 图中的坐标轴我们可以看出横坐标是操作的复杂度,纵坐标是精度。模型设计一开始的时候模型权重越多模型越大,其精度越高,后来出现了resNet、GoogleNet、Inception等网络架构之后,在取得相同或者更高精度之下,其权重参数不断下降。值得注意的是,并不是意味着横坐标越往右,它的运算时间越大。在这里并没有对时间进行统计,而是对模型参数和网络的精度进行了纵横对比。
  • 从图中我们可以看出来,AlexNet一类的模型没有考虑太多权重参数的问题,因此圆圈比较大。一开始AlexNet只是希望用深度网络能够找到更多图像当中的高维特征,后来发现当网络越深的时候需要的参数越多,硬件总是跟不上软件的发展,这个时候如果加深网络的话GPU的显存塞不下更多的参数,因此硬件限制了深度网络的发展。为了能够提高网络的深度和精度,于是大神们不断地研究,尝试使用小的卷积核代替大的卷积核能够带来精度上的提升,并且大面积地减少参数,于是网络的深度不再受硬件而制约。
    可是另外一方面,随着网络的深度越深,运算的时间就越慢,这也是个很蛋疼的事情,不能两全其美。作者相信在未来2-3年我们能够亲眼目睹比现有网络更深、精度更高、运算时间更少的网络出现。因为硬件也在快速地发展,特斯拉使用的NVIDIA Driver PX 2的运算速率已经比现在Titan X要快7倍。

九、小结&模型压缩

9.1、小结

注意:并不是网络深度越高精度越高,也不是参数越多精度越高,真正发挥左右的是“参数效率”!

  • 下面一个分支:之前一直考虑精度,之前运行在GPU资源。现在人手一部手机,比如人脸识别在手机上进行,还比如自动驾驶,这些设备算力比较小,和手机相当的水平。
  • 所以从2016年开始,分类这件事已经超过人类了,新的需求来了,想保证预测精度不太下降的情况下,减少参数让模型跑的更快,有两种方法:一种是模型压缩,不改变网络设计,比如还用VGG,直接在训练的网络上压缩一下,压缩的足够小,就可以使用了;一种是抛弃之前的网络街结构,从新设计一个轻量级网络结构。

9.2、模型压缩:Deep Compression

9.3、网络可以有多快?

十、MobileNet:轻量化(参数少)

注意:这是特殊的网络的设计2017年,它也涉及一个特殊的卷积姿势。

参考文献:

  • 清华大学AI自强计划

这篇关于『青年AI自强计划』第6章视觉分类任务LeNet5,AlexNet,ZFNet,VGG,GoogleNet,ResNet,ResNeXt,SENet,MobileNet!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/420554

相关文章

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资

Oracle数据库执行计划的查看与分析技巧

《Oracle数据库执行计划的查看与分析技巧》在Oracle数据库中,执行计划能够帮助我们深入了解SQL语句在数据库内部的执行细节,进而优化查询性能、提升系统效率,执行计划是Oracle数据库优化器为... 目录一、什么是执行计划二、查看执行计划的方法(一)使用 EXPLAIN PLAN 命令(二)通过 S

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

AI绘图怎么变现?想做点副业的小白必看!

在科技飞速发展的今天,AI绘图作为一种新兴技术,不仅改变了艺术创作的方式,也为创作者提供了多种变现途径。本文将详细探讨几种常见的AI绘图变现方式,帮助创作者更好地利用这一技术实现经济收益。 更多实操教程和AI绘画工具,可以扫描下方,免费获取 定制服务:个性化的创意商机 个性化定制 AI绘图技术能够根据用户需求生成个性化的头像、壁纸、插画等作品。例如,姓氏头像在电商平台上非常受欢迎,

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

从去中心化到智能化:Web3如何与AI共同塑造数字生态

在数字时代的演进中,Web3和人工智能(AI)正成为塑造未来互联网的两大核心力量。Web3的去中心化理念与AI的智能化技术,正相互交织,共同推动数字生态的变革。本文将探讨Web3与AI的融合如何改变数字世界,并展望这一新兴组合如何重塑我们的在线体验。 Web3的去中心化愿景 Web3代表了互联网的第三代发展,它基于去中心化的区块链技术,旨在创建一个开放、透明且用户主导的数字生态。不同于传统

认识、理解、分类——acm之搜索

普通搜索方法有两种:1、广度优先搜索;2、深度优先搜索; 更多搜索方法: 3、双向广度优先搜索; 4、启发式搜索(包括A*算法等); 搜索通常会用到的知识点:状态压缩(位压缩,利用hash思想压缩)。

AI一键生成 PPT

AI一键生成 PPT 操作步骤 作为一名打工人,是不是经常需要制作各种PPT来分享我的生活和想法。但是,你们知道,有时候灵感来了,时间却不够用了!😩直到我发现了Kimi AI——一个能够自动生成PPT的神奇助手!🌟 什么是Kimi? 一款月之暗面科技有限公司开发的AI办公工具,帮助用户快速生成高质量的演示文稿。 无论你是职场人士、学生还是教师,Kimi都能够为你的办公文

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G