GoogLeNet v1结构「建议收藏」

GoogLeNet v1结构「建议收藏」GooLeNetInception块GooLeNetGooLeNet是google2014年推出的深度神经网络模型,原论文名称为:Goingdeeperwithconvolutions,在沐神的书上也被叫做含并⾏连结的⽹络(主要由于Inception块中的结构)。该模型在2014年ILSVRC2014比赛中竞赛中夺得冠军,14年之后也在不断发展,这里就介绍一下初始的版本。Inception块GooLeNet思想有点类似于VGG,先构建块,网络主要通过块的堆叠实现,不过这里的块与VGG块不同,称

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

GoogLeNet是google2014年推出的深度神经网络模型,原论文名称为:Going deeper with convolutions,在沐神的书上也被叫做含并⾏连结的⽹络(主要由于Inception块中的结构)。该模型在2014年ILSVRC 2014比赛中竞赛中夺得冠军,14年之后也在不断发展,这里就介绍一下初始的版本。

Inception块

GoogLeNet思想有点类似于VGG,先构建块,网络主要通过块的堆叠实现,不过这里的块与VGG块不同,称之为Inception,GoogLeNet的核心就是Inception块,一个Inception块的结构如下图:
Inception块的结构
一个Inception块可以说是集合了LeNet,AlexNet,NiN,VGG其中的架构,包括3×3卷积层、1×1卷积层、5×5卷积层和池化层,可以从上图看到,Inception块与其他的什么VGG块、NiN块不一样的是,VGG与NiN块内部都是一条路的运算,而一个Inception块包括4条路,将输入通过不同的路得到不同的输出(注意这里的输出形状都是一样的),然后将这些输出在channel方向concat起来得到一个Inception的最后输出。我们从左到右将路记为第1,2,3,4路,一个Inception块的这些路具体介绍如下:
第一条路: 只用到了1×1的卷积核,所以输出不改变原输入的形状,输出channel数为超参数。
第二条路: 用到了1×1卷积核与3×3卷积核,1×1卷积层不改变输入形状,channel数自定,3×3卷积层的padding为1,即分别在四周添1行列,stride为1,输出的形状为 ( n − 3 + 2 + 1 ) / 1 = n (n-3+2+1)/1=n (n3+2+1)/1=n(n为输入长或者高),所以可以看到输出形状还是与输入相同,但channel数不一样。
第三条路: 用到了1×1卷积核与5×5卷积核,1×1卷积层不改变输入形状,channel数自定,5×5卷积层的padding为2,即分别在四周添加2行列,输出形状为 ( n − 5 + 4 + 1 ) / 1 = n (n-5+4+1)/1=n (n5+4+1)/1=n(n为输入长或者高),所以可以看到输出形状还是与输入相同,但channel数不一样。
第四条路: 用到了3×3最大池化与1×1卷积,最大池化的padding为1,每个channel输出形状还是与输入相同,接一个1×1的卷积层,也不改变输入形状。
最后将这四条路的输出按照通道数方向合并,得到一个Inception块的最后输出。
第一个Inception块可由下图表示(来自沐神):
第一个Inception块描述

GoogLeNet

GoogLeNet核心就是不同Inception块的堆叠,原作者使用的是9个Inception块,我们可以把GoogLeNet分成5段,称之为5个stage,具体结构如下:
在这里插入图片描述
具体来说,GoogLeNet开始使用一个7×7的卷积层,3×3的最大池化;1×1卷积层,3×3的最大池化,3×3的最大池化;然后是两个Inception块,当然前一个块的输出形状要对应后一个块的输入形状,接一个3×3的最大池化;5个Inception块,接一个3×3的最大池化;2个Inception块,接一个全局平均池化,最后接一个全连接得到最后输出。

代码可见:链接
原论文可见:GoogLeNet

参考资料:李沐—动手学深度学习v2
深度学习笔记 11/16

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170456.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux安装gcc的四种方法「建议收藏」

    Linux安装gcc的四种方法「建议收藏」相比于windows系统,Linux安装程序就比较复杂了,很多需要root用户才能安装。常见的有以下几种安装方法 源码安装 rpm包安装 yum安装(RedHat、CentOS) apt-get安装(debian,ubuntu) 源码安装以安装gcc为例,登陆https://gcc.gnu.org/,下载自己想要的版本的gcc安装包上传gcc-4.1.2.tar.gz到Linux服务器任意目录,解压解压目录执行shell命令./configurat.

    2022年5月26日
    89
  • 最新单片机毕业设计题目大全集_单片机毕业设计怎么做

    最新单片机毕业设计题目大全集_单片机毕业设计怎么做?近期不少学弟学妹询问学长关于单片机和嵌入式相关的毕设选题,学长特意写下这篇文章以作回应!以下是学长亲手整理的物联网相关的毕业设计选题,都是经过学长精心审核的题目,适合作为毕设,难度不高,工作量达标,对毕设有任何疑问都可以问学长哦!相对容易工作量达标题目新颖,含创新点httpshttpshttpshttpshttpshttps。……

    2022年10月3日
    2
  • bond0脚本

    #!/usr/bin/bashthisisbond0##2021-3-28cat>/etc/sysconfig/network-scripts/ifcfg-bond0<<-EOFDEVICE=bond0TYPE=EthernetONBOOT=yesNM_CONTROLLED=noBOOTPROTO=noneIPADDR=192.168.146.128PREFIX=24IPV6INIT=noUSERCTL=noGATEWAY=192.168.146.2E

    2022年4月10日
    65
  • 详解PyTorch可视化工具visdom(一)

    一、介绍在深度学习领域,模型训练是一个必须的过程,因此常常需要实时监听并可视化一些数据,如损失值loss,正确率acc等。在Tensorflow中,最常使用的工具非Tensorboard莫属;在Pytorch中,也有类似的TensorboardX,但据说其在张量数据加载的效率方面不如visdom。visdom是FaceBook开发的一款可视化工具,其实质是一款在网页端的web服务器,对Pytorch的支持较好。二、如何安装及启动2.1安装安装命令pipinstallvisdom安装

    2022年4月4日
    48
  • java打印数组内容

    java打印数组内容在java中直接输出数组只能得到引用地址byte[]bytes={1,2,3,4,5};int[]ints={1,2,3,4,5};System.out.println(bytes);System.out.println(ints);输出[B@1b6d3586[S@4554617c打印数组内容publicstaticvoidmain(Stringargs

    2022年4月29日
    52
  • webstorm激活码2019(注册激活)

    (webstorm激活码2019)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月29日
    583

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号