深度学习与CV教程(10) - 轻量化CNN架构 (SqueezeNet,ShuffleNet,MobileNet等).doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
深度学习与CV教程(10) - 轻量化CNN架构 (SqueezeNet,ShuffleNet,MobileNet等) 深度学习与计算机视觉是当前人工智能领域的热门话题,卷积神经网络(CNN)是其中一个关键技术。然而,随着模型的深度和宽度增加,计算复杂度和参数量也随之增加,这将带来计算资源和存储空间的压力。为了解决这个问题,研究界和工业界近年来都在努力“保持效果的情况下压缩网络复杂度”,诞生了很多轻量化网络。 本篇教程将讲解神经网络参数与复杂度计算,以及主流轻量级网络,包括SqueezeNet、Xception、ShuffleNet v1~v2、MobileNet v1~v3等。 神经网络参数与复杂度计算是轻量化网络的基础知识。理论计算量(FLOPs)是衡量神经网络计算复杂度的重要指标,单位是浮点运算次数(FLoating-point Operation)。参数数量(params)是衡量神经网络模型大小的重要指标,单位通常为 \(M\),用 float32 表示。 典型结构对比中,我们可以看到标准卷积层(std conv)、全连接层(fc)和group conv、depth-wise conv等不同类型的卷积层。每种卷积层都有其特点和优缺,了解这些卷积层的参数量和计算复杂度是设计轻量化网络的基础。 SqueezeNet是轻量化网络中一个著名的网络,它发表于 ICLR 2017,它拥有与 AlexNet 相同的精度,但只用了 AlexNet 1/50 的参数量。SqueezeNet 的核心在于采用不同于常规的卷积方式来降低参数量,具体做法是使用 Fire Module,先用 \(1 \times 1\) 卷积降低通道数目,然后用 \(1 \times 1\) 卷积和 \(3 \times 3\) 卷积提升通道数。 SqueezeNet 采用了三种策略来降低参数量:① 将 \(3 \times 3\) 卷积替换为 \(1 \times 1\) 卷积② 减少 \(3 \times 3\) 卷积的通道数③ 将降采样操作延后,这样可以给卷积提供更大的 activation map,从而保留更多的信息,提供更高的分类准确率。 Fire Module 是 SqueezeNet 网络的基础模块,设计如下图所示:一个 Fire Module 由 Squeeze 和 Extract 两部分组成:Squeeze 部分包括了一系列连续的 \(1 \times 1\) 卷积;Extract 部分包括了一系列连续的 \(1 \times 1\) 卷积和一系列连续的 \(3 \times 3\) 卷积,然后将 \(1 \times 1\) 和 \(3 \times 3\) 卷积的结果相加。 此外,Xception、ShuffleNet v1~v2、MobileNet v1~v3等轻量化网络也都有其独特的设计和优缺,这些网络的设计思想和实现细节都是值得我们深入研究和学习的对象。
剩余18页未读,继续阅读
- 粉丝: 1
- 资源: 2837
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Python大作业-爬虫(高分大作业)
- Python 图片压缩工具
- qt4.8.6资源,用户qt安装,编译与学习
- (176465412)电气设计视频教程-Eplan.P8
- Python大作业爬虫项目并且用web展示爬虫的内容(高分项目)源码+说明
- Python项目-实例-27 生成词云图.zip
- (176566822)数据库课程设计ssm027学校运动会信息管理系统+jsp.sql
- C# WPF-激光焊接机配套软件源码及文档(带视觉需halcon)
- (177333248)c++实现的仿QQ贪吃蛇大作战多人联机游戏.zip
- Python大作业-爬虫(高分大作业).zip
- (177487602)c++ 家谱管理系统.zip
- IMG-8274.GIF
- (177938850)115-基于51单片机和PROTEUS的基于C51单片机的智能交通灯设计.zip
- 基于微信小程序的宏华水利小程序.zip
- (OC)数据加载SVG图片
- linux3.8.6内核资源