GoogleNet神经网络介绍

一、简介

GoogleNet,也称为GoogLeNet,是谷歌工程师设计的一种深度神经网络结构,它在2014年的ImageNet图像识别挑战赛中取得了冠军。该神经网络的设计特点主要体现在其深度和宽度上,通过引入名为Inception的核心子网络结构,使得网络能够在多个尺度上提取特征,从而增强了其预测能力。

AlexNet与VGG都只有一个输出层

GoogleNet有三个输出层(其中两个为辅助分类器)

二、inception结构

初始结构

之前的网络,比如AlexNet和VGG都是串行结构:将卷积层、最大池化下采样和全连接层连接起来。

inception结构所使用的是并行结构:在上一层输出之后,将得到的特征矩阵同时输入到4个分支中进行处理,处理之后,将我们所得到的四个分支的特征矩阵按深度进行拼接得到输出特征矩阵 。

第一个分支是 1x1 大小的卷积核

第二个分支是 3x3 大小的卷积核

第三个分支是 5x5 大小的卷积核

第四个分支是 3x3 大小的池化核的最大池化下采样 

通过这四个分支,得到不同尺度的特征矩阵。

ps:每个分支所得的特征矩阵高和宽必须相同,否则无法沿深度方向进行拼接。

降维的inception结构

图中三个黄色方框的 1x1 卷积核起到降维的作用。

具体的降维原理 

1、初始通道为512,使用64个 5x5 的卷积核进行卷积。

所需要参数计算公式:卷积核尺寸 x 输入特征矩阵的深度 x 卷积核的个数

第一种情况所需要的参数是 819200,非常大的一个数值。

2、初始通道为512,使用24个 1x1 的卷积核进行卷积,再使用64个 5x5 的卷积核进行卷积。

先使用24个 1x1 的卷积核进行卷积对输入特征矩阵进行降维,因为特征矩阵的深度是由卷积核的个数决定的, 所以会将512深度变为24深度,再进行计算所需要的参数个数。

将两部分使用卷积核的需要参数相加,即为全部所需要的参数,一共50688。

很明显,通过使用 1x1 的卷积核进行降维之后,所需要的参数大大减少。

降维的目的就是为了减少输入特征矩阵的深度,从而减少卷积参数,减少计算量。

 三、辅助分类器

具体实现

1、池化层

第一层是一个平均池化下采样:池化核 5x5, 步距为3,

第一个辅助分类器来自于 inception(4a) 的输出 14 x 14 x 512,第二个辅助分类器来自于 inception(4d) 的输出 14 x 14 x 528。

根据矩阵尺寸大小计算公式 out = (14 - 5 + 0) / 3 + 1,

所以第一个辅助分类器的输出为 4 x 4 x 512

第二个辅助分类器的输出为 4 x 4 x 528。(池化不改变特征矩阵的深度)

2、卷积降维

采用128个卷积核大小为 1x1 的卷积层进行卷积处理,目的是为了降低维度,并且使用了relu激活函数。

3、全连接层

采用节点为1024的全连接层,使用relu激活函数。

全连接层与全连接层之间使用dropout函数,以 70% 的比例随机失活神经元。(百分比可根据具体情况更改比例)

4、输出

输出层的节点个数对应数据集的类别个数, 再通过softmax激活函数得到概率分布。

图示说明

第一个辅助分类器来自于 inception(4a)

第二个辅助分类器来自于 inception(4d)

四、参数表格

第一列:一系列层的名称

第二列:卷积核或者是池化核的参数大小       

第三列:经过计算后的输出的特征矩阵的大小

辅助分类器中的参数

 # 1 x 1 :辅助分类器中1 x 1 卷积核的个数

#  3 x 3 reduce :在 3 x 3卷积前 1x1 卷积降维处理的个数

#  3 x 3 :辅助分类器中3 x 3 卷积核的个数

#  5 x 5 reduce :在 5 x 5卷积前 1x1 卷积降维处理的个数

#  5 x 5 : 辅助分类器中5 x 5 卷积核的个数

#  pool proj :在最大池化后进行的 1x1 卷积降维处理的个数

下图标注可帮助理解。

大家可以在网上找GoogleNet整个神经网络的图片,再结合那一整张参数列表帮助自己更好的理解整个GoogleNet神经网络。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/509563.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

红酒:红酒的分类标准与市场细分

红酒的分类标准与市场细分是红酒产业中非常重要的概念。通过对红酒进行分类,可以更好地满足不同消费者的需求,提升红酒的市场份额和品牌影响力。 首先,红酒的分类标准可以根据不同的维度进行划分。常见的分类标准是根据葡萄酒的口感、香气、颜…

RK3588 NPU研究(一)

使用NPU进行AI计算,具体对应模型推理 对应代码位置 hardware/rockchip/rknpu2 examples: yolo5 编译 下载NDK工具https://developer.android.google.cn/ndk/downloads?hlzh-cn源码中使用16b,测试可以使用16/17/18/19/20,不可以使用21&…

开源代码分享(17)—基于yalmip+cplex的微电网优化调度(附matlab代码)

1基本概念 微网(Micro-Grid,MG)是进行电能调度时常见的概念,作为组织各分布式单元的结构。微网概念的提出旨在实现分布式电源的灵活、高效应用,解决数量庞大、形式多样的分布式电源并网问题[8]。微网中集成了电源、储能…

DS1302时钟芯片

目录 DS1302简介 前言 DS1302内部结构 理解: DS1302引脚图 DS1302常用寄存器 寄存器控制指令 解释: 常用寄存器指令 DS1302控制时序 单字节读 代码辅助理解 单字节写 代码辅助理解 仿真案例 电路图 keil文件 DS1302简介 前言 DS1302…

Pycharm环境配置完整教程

目录 python解释器下载 检查是否正确安装 Pycharm下载 Pycharm环境配置 本文主要介绍python解释器安装、Pycharm环境配置以及运行第一个程序的零基础的教程,即使是python小白也能正确配置相应的python学习环境哦! python解释器下载 官网地址&#…

在jupyter notebook中使用conda环境

在jupyter notebook中使用conda环境 1. 环境配置 conda activate my-conda-env # this is the environment for your project and code conda install ipykernel conda deactivateconda activate base # could be also some other environment conda install nb_cond…

java学习之路-数组定义与使用

目录 ​编辑 1.什么是数组 2.数组的创建及其初始化 2.1数组的创建 2.2数组的初始化 3.数组的使用 3.1数组元素访问 3.2遍历数组 4.数组是引用类型 4.1jvm的内存分布 4.2基本类型变量与引用类型变量的区别 4.3引用变量详解 4.4 null 5.数组的使用场景 5.1存储数据 5…

【网课必备】学浪视频下载到本地

学浪作为知识付费平台,拥有大量的课程,所以很多人在学浪上购买自己的课程,但是学浪官方没有提供下载选项,只可以在学浪客户端软件观看,并不是很方便 于是为了解决这一个需求,小白老师s开发了学浪视频下载到…

uniapp 开发之原生Android插件

开发须知 在您阅读此文档时,我们假定您已经具备了相应Android应用开发经验,使用Android Studio开发过Android原生。也应该对HTML,JavaScript,CSS等有一定的了解, 并且熟悉在JavaScript和JAVA环境下的JSON格式数据操作等。 为了插件开发者更方便快捷的开…

verdi出现的问题

仿真时Verdi出现的问题: User Defined system task or function ($fsdbDumpfile) registered during elaboration and used within the simulation has not been registered during simulation. 解决方法:在run脚本中加上以下设置 又遇到如下问题&#x…

基于kmeans的聚类微博舆情分析系统

第一章绪论 1.1研究背景 如今在我们的生活与生产的每个角落都可以见到数据与信息的身影。自从上十世纪八十年代的中后期开始,我们使用的互联网技术已经开始快速发展,近些年来云计算、大数据和物联网等与互联网有相领域的发展让互联网技术达到了史无前例…

揭秘阿里巴巴面试题:JVM垃圾回收存活算法和两次标记过程

大家好,我是你们的小米。今天我们来聊聊一个热门话题,那就是阿里巴巴的面试题:JVM垃圾回收存活算法和两次标记过程。作为一个热爱技术、乐于分享的小米,我将会带领大家一起深入探讨这个话题。 引用计数法 首先,我们来了解一下引用计数法。这是一种简单直观的垃圾回收算法…

备战蓝桥杯---刷杂题1

1.来个小定理(上次DP的青蛙过河用过) 事实上,假如他们的gcd!1,那么P,q都可以表示成gcd的倍数,因此假如一个数不是gcd的倍数就不可以表示,若互质由裴蜀定理大于一定时一定可以表示出。 事实上为&#xff08…

关于 QSound播放wav音频文件,播放失败“using null output device, none available” 的解决方法

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/137264493 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…

GaussDB云数据库极简版安装与使用-新手指南

一、前言 作为一款领先的企业级数据库管理系统,GaussDB 提供了强大的性能、高度可靠性和丰富的功能,是企业构建可靠、高性能的数据库解决方案的理想选择。 本文主要针对高校和个人测试环境,介绍极简版安装和使用过程,更加适合高…

护眼台灯哪个牌子好?护眼台灯品牌排行前十名推荐

台灯可以说家家必备的一盏灯具,如果家长有正在上学的孩子的更需要一款好的台灯,因为不管是看书、写字、阅读都离不开台灯的帮助,而且一款好的台灯不仅仅能够提供明亮充足的照明环境,而且还能起到保护视力健康,预防近视…

echarts实现炫酷科技感的流光效果

前言: echarts实现炫酷科技感的流光效果 效果图: 实现步骤: 1、引入echarts,直接安装或者cdn引入 npm i echarts https://cdn.jsdelivr.net/npm/echarts5.4.3/dist/echarts.min.js 2、封装 option方法,第一个数据是折线数据&a…

互联网轻量级框架整合之JavaEE基础I

不得不解释得几个概念 JavaEE SUN公司提出来的企业版Java开发中间件,主要用于企业级互联网系统的框架搭建,同时因为Java语言优质的平台无关性、可移植性、健壮性、支持多线程和安全性等优势,其迅速成为构建企业互联网平台的主流技术&#x…

AI预测福彩3D第24弹【2024年4月2日预测--第4套算法重新开始计算第10次测试】

今天继续对第4套算法进行测试,因为第4套算法已连续多期命中,相对来说还算稳定。好了,废话不多说了,直接上预测的结果吧~ 2024年4月2日福彩3D的七码预测结果如下 第一套: 百位:1 2 …

旅游管理系统|基于Springboot的旅游管理系统设计与实现(源码+数据库+文档)

旅游管理系统目录 目录 基于Springboot的旅游管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、用户管理 2、景点分类管理 3、景点信息管理 4、酒店信息管理 5、景点信息 6、游记分享管理 四、数据库设计 1、实体ER图 2、具体的表设计如下所示&#xf…