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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Tomcat下载——tomcat7、tomcat8、tomcat9官网下载链接

    Tomcat下载——tomcat7、tomcat8、tomcat9官网下载链接1.官网下载链接:https://tomcat.apache.org2.选择Download——>tomcat7/8/9,如下图所示:3.选择32/64位相应下载。4.下载好的zip包进行解压缩即可。…

    2022年5月19日
    47
  • Linux下route命令用法

    Linux下route命令用法显示现在所有路由#routeroot@ubuntu:~#routeKernelIProutingtableDestination  Gateway    Genmask    FlagsMetricRef  UseIface10.147.9.0   *       255.255.255.0 U  1

    2022年7月18日
    16
  • <四> H264解码输出yuv文件

    <四> H264解码输出yuv文件现在来写下s5pv210的h264解码,这一章有些部分我理解的不是很透彻,只能写个大概了。希望看到的人能给出些意见,有些地方写错的还望指正出来!  解码过程与编码过程类似,编码过程是先初始化编码器,然后从编码器输出buf中读出h264文件头数据,写入输出文件,然后开始不断地将一帧帧NV12格式的图像写入到编码器的输入buf,启动编码,从编码器输出buf中将h264视频数据写入到输出文件。解

    2022年6月15日
    42
  • JAVA留言板_java项目实例源码

    JAVA留言板_java项目实例源码java实现简单留言板功能的代码实例数据库对应的表:guestbook:id,name,phone,email,title,content,time;id新建webproject:guestbookbuildPath:引入连接数据库的驱动的类库在webRoot目录中加入:+faceditor+jsweb.xml代码:xmlns=”http://java….

    2022年9月25日
    4
  • 2019-07高德地图行政区域省市区json数据获取(php代码)

    2019-07高德地图行政区域省市区json数据获取(php代码)写在前面从省向下查三级,高德县级市的子级会返回街道,正常的市正常返回子级为区。具体高德api参数详情请查看https://lbs.amap.com/api/webservice/guide/api/district代码//获取json数据publicfunctiongetDataAction(){set_time_limit(0);$url=”…

    2022年6月21日
    27
  • Java IO流自动关闭

    Java IO流自动关闭Filef=newFile();Filedes=newFile();try(FileInputStreaminput=newFileInputStream(f);FileOutputStreamout=newFileOutputStream(des);){}catch(FileNotFoundExceptione1){ }catch(IO…

    2022年5月27日
    35

发表回复

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

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