pytorch实现GoogLeNet
这里写目录标题
- 1.GoogLeNet原理
- 2.pytorch实现GoogLeNet代码
1.GoogLeNet原理
GoogLeNet是google推出的基于Inception模块的深度神经网络模型,在随后的两年中一直在改进,形成了Inception V2、Inception V3、Inception V4等版本。
什么是Inception
Inception就是把多个卷积或池化操作,放在一起组装成一个网络模块,设计神经网络时以模块为单位去组装整个网络结构。模块如下图所示
什么是Inception
Inception就是把多个卷积或池化操作,放在一起组装成一个网络模块,设计神经网络时以模块为单位去组装整个网络结构。模块如下图所示。
在未使用这种方式的网络里,我们一层往往只使用一种操作,比如卷积或者池化,而且卷积操作的卷积核尺寸也是固定大小的。但是,在实际情况下,在不同尺度的图片里,需要不同大小的卷积核,这样才能使性能最好,或者或,对于同一张图片,不同尺寸的卷积核的表现效果是不一样的,因为他们的感受野不同。所以,我们希望让网络自己去选择,Inception便能够满足这样的需求,一个Inception模块中并列提供多种卷积核的操作,网络在训练的过程中通过调节参数自己去选择使用,同时,由于网络中都需要池化操作,所以此处也把池化层并列加入网络中。
实际中需要什么样的Inception
我们在上面提供了一种Inception的结构,但是这个结构存在很多问题,是不能够直接使用的。首要问题就是参数太多,导致特征图厚度太大。为了解决这个问题,作者在其中加入了1X1的卷积核,改进后的Inception结构如下图:
这样做有两个好处,首先是大大减少了参数量,其次,增加的1X1卷积后面也会跟着有非线性激励,这样同时也能够提升网络的表达能力。
整体网络结构设计
对上图说明如下:
1)GoogLeNet采用了模块化的结构(Inception结构),方便增添和修改;
2)网络最后采用了average pooling(平均池化)来代替全连接层,该想法来自NIN(Network in Network),事实证明这样可以将准确率提高0.6%。
3)虽然移除了全连接,但是网络中依然使用了Dropout ;
4)为了避免梯度消失,网络额外增加了2个辅助的softmax用于向前传导梯度(辅助分类器)
对于前三点都很好理解,下面我们重点看一下第4点。这里的辅助分类器只是在训练时使用,在正常预测时会被去掉。辅助分类器促进了更稳定的学习和更好的收敛,往往在接近训练结束时,辅助分支网络开始超越没有任何分支的网络的准确性,达到了更高的水平。
2.pytorch实现GoogLeNet代码
点这里下载
pytorch实现GoogLeNet相关推荐
- 利用Pytorch实现GoogLeNet网络
目 录 1 GoogLeNet网络 1.1 网络结构及参数 1.2 Inception结构 1.3 带降维功能的Inception结构 1.4 辅助分类器 2 利用Pytorch实现GoogLeNe ...
- Pytorch搭建GoogLeNet网络(奥特曼分类)
1 爬取奥特曼 get_data.py import requests import urllib.parse as up import json import time import osmajor ...
- 5.2 使用pytorch搭建GoogLeNet网络 笔记
B站资源 csdn本家 文章目录 model train predict model 1.BasicConv2d类 2.Inception 3.InceptionAux(nn.Module):#辅助分 ...
- PyTorch 实现经典模型4:GoogLeNet
GoogLeNet 创新点: 通过多种卷积核叠加网络复杂性 学习多种卷积 提升计算效率 GoogLeNet网络深度达到22层 1x1卷积降低维度 降低计算量,提升计算效率 网络结构 代码 import ...
- CNN经典网络模型(四):GoogLeNet简介及代码实现(PyTorch超详细注释版)
目录 一.开发背景 二.网络结构 三.模型特点 四.代码实现 1. model.py 2. train.py 3. predict.py 4. spilit_data.py 五.参考内容 一.开发背景 ...
- GoogLeNet网络详解并使用pytorch搭建模型
1.GoogLeNet网络详解 网络中的创新点: (1)引入了Inception结构(融合不同尺度的特征信息) (2)使用1x1的卷积核进行降维以及映射处理 (虽然VGG网络中也有,但该论文介绍的更详 ...
- Googlenet笔记
文章目录 基于 ImageNet 预训练的 AlexNet 和 GoogLeNet 模型可以从 Caffe Model Zoo网站进行下载.修改和使用 -[caffe平台的,没整明白](http:// ...
- 【学习笔记】GoogleNet 网络结构
跟着大佬学图像分类系列,→ 传送门 ← 本博客图像分类系列文章传送门: AlexNet VGG GoogleNet(当前) ResNet 前言 图像分类是学习目标检测的"量变"内容 ...
- 深度学习PyTorch(二)卷积神经网络
文章目录 背景及应用 基础及计算 卷积 池化 感受野 卷积神经网络的定义bvb CNN在pytorch中的实现 **卷积**: **池化**: 标准化 数据预处理 Batch Normalizatio ...
最新文章
- 大白话系列之C#委托与事件讲解(一)
- Flutter学习记录(三、Flutter项目学习navBar的使用)
- 算法训练营 重编码_参加编码训练营之前要考虑的7件事
- Fresco对Listview等快速滑动时停止加载
- CentOS_6.x安装VNC_Server
- eclipse 设置Java快捷键补全
- UCDOS点阵字库提取
- 使用NVivo完善定性编码的艺术
- 线性分类器定义和局限性
- python分析 【都挺好】小说任务关系
- cpu散片是什么意思?
- Urchin = Analytics Google的免费网站统计系统发布
- python+selenium+request实行全自动12306抢票和购票
- AK acm/oj.Print a Chessboard
- 中国大学慕课公开课-《视听语言》-学习笔记-2
- 【每日一题】最大正方形面积——进阶,矩形面积
- 日更100天(42)每天进步一点点
- python gui包_超酷 Python 程序包 ,一行代码搭建 GUI 界面
- Pycharm Professional长期免费使用方法(学生党)
- Filebeat日志采集器实例
热门文章
- Linux C 套接字socket UDP
- 客户和服务器之间响应的序列,网络编程-第五讲-TCP客户-服务器程序例子.pdf-原创力文档...
- mysql用户函数_MySQL 函数、用户自定义函数
- 编程英语:widget [小部件]
- 小米造车 500 天,现在怎么样了?
- access vba打开excel文件_除了VBA,还有哪些编程语言可以操作Excel文件?
- JSTL : 标签库详解
- 两个 Python 的冷技巧
- ASP.NET MVC实现Excel文件的上传下载
- 计算机考研难易程度,社会学考研院校难易程度排名