【卷积神经网络】经典网络之 LeNet-5, AlexNet 与 VGG-16

随着计算机硬件的升级与性能的提高,运算量已不再是阻碍深度学习发展的难题。卷积神经网络(Convolution Neural Network,CNN)是深度学习中一项代表性的工作,其雏形是 1998 年 LeCun 提出的 LeNet-5 模型。如今,卷积神经网络已被广泛应用于计算机视觉领域。本文主要介绍卷积神经网络中的经典网络,包括 LeNet-5, AlexNet 和 VGG-16.

目录

1 LeNet-5

2 AlexNet

3 VGG-16


1 LeNet-5

        LeNet-5 是经典卷积神经网络之一,1998 年由 Yann LeCun 等人在论文 《Gradient-Based Learning Applied to Document Recognition》中提出。LeNet-5 网络使用了卷积层、池化层和全连接层,实现可以应用于手写体识别的卷积神经网络。

论文链接如下:

《Gradient-Based Learning Applied to Document Recognition》

        LeNet-5 包含 2 个卷积层和 3 个全连接层,包含学习参数的网络层有 5 层。LeNet-5 的输入图像大小是 32 x 32,颜色通道数为 1,这表明 LeNet-5 仅支持输入黑白图像。 

卷积 / 池化操作图像大小 / 神经元个数待训练的参数个数
Input32 × 32 × 1/
Conv15 × 5, s = 128 × 28 × 6150
avg pool12 × 2, s = 214 × 14 × 6/
Conv25 × 5, s = 110 × 10 × 162,400
avg pool22 × 2, s = 25 × 5 × 16/
FC112048,000
FC28410,080
FC3 (Output)10840

        LeNet-5 网络拥有约 6.1 万个待训练的参数,与如今常见的卷积神经网络不同, LeNet-5 激活层使用了 Sigmoid 函数,池化层采用平均池化,另外最后一层的输出使用 RBF 函数处理(而现在常用的处理方法是 Softmax 函数)。

2 AlexNet

        与 LeNet-5 类似,AlexNet 是另一个用于图像识别的经典神经网络。AlexNet 的名字来源于其第一作者 Alex Krizhevsky,于 2012 年 ImageNet 赛事夺冠之后为人们所熟知。AlexNet 沿用了 LeNet-5 的思路,把卷积,池化操作应用于更深层的神经网络中。

论文链接如下:

《ImageNet Classification with Deep Convolutional Neural Networks》

卷积 / 池化操作图像大小 / 神经元个数待训练的参数个数
Input224  × 224  × 3/
Conv111 × 11, s = 455 × 55 × 9634,848
max pool13 × 3, s = 227 × 27 × 96/
Conv25 × 5, p = 1, s = 127 × 27 × 256614,400
max pool23 × 3, s = 213 × 13 × 256/
Conv33 × 3, p = 1, s = 113 × 13 × 384884,736
Conv43 × 3, p = 1, s = 113 × 13 × 3841,327,104
Conv53 × 3, p = 1, s = 113 × 13 × 256884,736
max pool33 × 3, s = 26 × 6 × 256/
FC14,09637,748,736
FC24,09616,777,216
FC3 (Output)1,0004,096,000

        AlexNet 网络拥有约 6200 万个参数,AlexNet 的创新点包括:
(1)使用 ReLU 作为卷积层的激活函数,避免了 Sigmoid 函数在网络层数增加时梯度消失或爆炸问题;
(2)全连接层使用 DropOut 随机失活方式,屏蔽一部分神经元的输出值,避免模型的过拟合;
(3)使用重叠的最大池化。AlexNet 使用最大池化替代此前人们常用的平均池化,避免了平均池化的模糊问题,并且池化的步长比池化核小,使池化输出有一定的重叠,丰富输出特征。

3 VGG-16

        VGG 网络是 Oxford 的 Visual Geometry Group 团队提出,在 2014 年的 ImageNet 赛事中取得亚军。VGG 在 AlexNet 的基础上进一步增加了神经网络的深度,表明当网络层数增加到 16~19 个时可以实现显著改进。

论文链接如下:

《Very Deep Convolutional Networks for Large-Scale Image Recognition》

        VGG 网络有两个常见的版本,VGG-16 和 VGG-19,分别对应上图中的模型 D 和模型 E,数字 16 和 19 表示带有待训练权重的网络层数。VGG-16 有 13 个卷积层和 3 个全连接层,VGG-19 比 VGG-16 多 3 个卷积层,有 16 个卷积层和 3 个全连接层。

卷积 / 池化操作图像大小 / 神经元个数待训练的参数个数
Input224 × 224 × 3/
Conv13 × 3, p = 1, s = 1224 × 224 × 641,728
Conv23 × 3, p = 1, s = 1224 × 224  × 6436,864
max pool12 × 2, s = 2112 × 112 × 64/
Conv33 × 3, p = 1, s = 1112 × 112 × 12873,728
Conv43 × 3, p = 1, s = 1112 × 112 × 128147,456
max pool22 × 2, s = 256 × 56 × 128/
Conv53 × 3, p = 1, s = 156 × 56 × 256294,912
Conv63 × 3, p = 1, s = 156 × 56 × 256589,824
Conv73 × 3, p = 1, s = 156 × 56 × 256589,824
max pool32 × 2, s = 228 × 28 × 256/
Conv83 × 3, p = 1, s = 128 × 28 × 5121,179,648
Conv93 × 3, p = 1, s = 128 × 28 × 5122,359,296
Conv103 × 3, p = 1, s = 128 × 28 × 5122,359,296
max pool42 × 2, s = 214 × 14 × 512/
Conv113 × 3, p = 1, s = 114 × 14 × 5122,359,296
Conv123 × 3, p = 1, s = 114 × 14 × 5122,359,296
Conv133 × 3, p = 1, s = 114 × 14 × 5122,359,296
max pool52 × 2, s = 27 × 7 × 512/
FC14,096102,760,448
FC24,09616,777,216
FC3 (Output)1,0004,096,000

        VGG-16 网络拥有约 1.38 亿个参数。它的主要创新之处在于,VGG 使用了多个连续的卷积层,以及尺寸更小的卷积核(3 × 3 大小),替代 AlexNet 中大尺寸的卷积核(11 × 11,5 × 5 等大小),以更好地提取图像的深层特征。

        另外,随着神经网络层数的增加,输出图像的宽高减半,卷积层的输出特征数从最初的 64,增加到 128,256 和 512。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Axure高保真原型】多图表动态切换

今天和大家分享多图表动态切换的原型模板,点击不同的图标可以动态切换对应的表,包括柱状图、条形图、饼图、环形图、折线图、曲线图、面积图、阶梯图、雷达图;而且图表数据可以在左侧表格中动态维护,包括增加修改和删除&#xff0…

百万级并发IM即时消息系统(2)

1.用户model type UserBasic struct {gorm.ModelName stringPassWord stringPhone string valid:"matches(^1[3-9]{1}\\d{9}$)"Email string valid:"email"Avatar string //头像Identity stringClientIp s…

docker高级(DockerFile解析)

1、构建三步骤 编写Dockerfile文件 docker build命令构建镜像 docker run依镜像运行容器实例 2、DockerFile构建过程解析 Dockerfile内容基础知识 1:每条保留字指令都必须为大写字母且后面要跟随至少一个参数 2:指令按照从上到下,顺序执行…

JavaScript Web APIs -03 事件流、事件委托、其他事件(加载、滚动、尺寸)

Web APIs - 03 文章目录 Web APIs - 03事件流捕获和冒泡阻止冒泡 事件委托其他事件页面加载事件元素滚动事件页面尺寸事件 元素尺寸与位置 进一步学习 事件进阶,实现更多交互的网页特效,结合事件流的特征优化事件执行的效率 掌握阻止事件冒泡的方法理解事…

爬虫逆向实战(二十八)--某税网第一步登录

一、数据接口分析 主页地址:某税网 1、抓包 通过抓包可以发现登录接口是factorAccountLogin 2、判断是否有加密参数 请求参数是否加密? 通过查看载荷模块可以发现有一个datagram 和 一个signature加密参数 请求头是否加密? 通过查看“标…

如何从ChatGPT中获得最佳聊天对话效果

从了解ChatGPT工作原理开始,然后从互动中学习,这是一位AI研究员的建议。 人们利用ChatGPT来撰写文章、论文、生成文案和计算机代码,或者仅仅作为学习或研究工具。然而,大多数人不了解它的工作原理或它能做什么,所以他…

excel怎么设置任意选一个单元格纵横竖横都有颜色

有时excel表格内容过多的时候,我们通过excel设置任意选一个单元格纵横,竖横背景颜色,这样会更加具有辨识度。设置方式截图如下 设置成功后,预览的效果图

如何修复 Cloudflare 错误 1015“您受到速率限制”

目录 错误 1015 您受到费率限制 如何修复错误 1015 您的速率受到限制 Cloudflare 降低用户活动速度 禁用网站的速率限制 擦除当前的速率限制设置 增加网站可以处理的请求数量 修改时间限制 增加带宽支持 网站优化 社区支持 为网站访问者提供无错误的体验 应该如何学…

无涯教程-Android - Spinner函数

Spinner允许您从下拉菜单中选择一个项目 例如。使用Gmail应用程序时,将显示如下所示的下拉菜单,您需要从下拉菜单中选择一个项目。 Spinner Example 示例 本示例演示计算机的类别,您需要从类别中选择一个类别。 以下是修改后的主要Activity文件src/com.example.spinner/Andr…

域内密码喷洒

在Kerberos阶段认证的AS-REQ阶段,请求包cname对应的值是用户名,当用户名存在时候,密码正确和错误两种情况下,AS-REP返回包不一样,所以可以利用这一点对域用户名进行密码喷洒攻击 域内密码喷洒工具 Kerbrute kerbrut…

顺序表链表OJ题(2)->【数据结构】

W...Y的主页 😊 代码仓库分享 💕 前言: 单链表的结构常常不完美,没有双向链表那么”优秀“,所以繁衍出很多OJ练习题。今天我们继续来look look数据结构习题。 下面就是OJ时间!!! …

Vue安装过程的困惑解答——nodejs和vue关系、webpack、vue-cli、vue的项目结构

文章目录 1、为什么在使用vue前要下载nodejs?2、为什么安装nodejs后就能使用NPM包管理工具?3、为什么是V8引擎并且使用C实现?4、为什么会安装淘宝镜像?5、什么是webpack模板?6、什么是脚手架 vue-cli?6.1 安…

9.1 消息 字体 颜色 文件对话框 发布软件

保存 void Widget::on_savebtn_clicked() {QString filename QFileDialog::getSaveFileName(this, "保存", "C:/Users/yc/Desktop/", "图片 (*.png *.xpm *.jpg);;文本 (*.txt);;所有文件 (*.*)");if(filename.isNull()){QMessageBox::informa…

window下jdk安装及更换jdk版本的一些问题。

目录 jdk安装jdk的选择。oracle的jdk怎么安装。openjdk怎么安装。 jdk的版本控制。更换jdk的一些问题。 jdk安装 jdk的选择。 目前有两种可选的jdk,oracle的和开源的Openjdk,这两种jdk的区别可以自行查阅,就结果而言,openjdk开源…

包含文心一言在内的首批国产大模型 全面开放

8月31起,国内 11 家通过《生成式人工智能服务管理暂行办法》备案的 AI 大模型产品将陆续上线,面向全社会开放。北京 5 家大模型产品分别是百度的 “文心一言”、抖音的 “云雀”、百川智能的 “百川大模型”、清华系 AI 公司智谱华章旗下的 “智谱清言”…

【解决】idea启动spring MVC报错:一个或多个listeners启动失败Listener ClassNotFoundException

idea配置教程。tomcat调试报错Artifact :war exploded: Error during artifact deployment。 修改代码后,启动不生效,仍是旧代码。 根本原因是: Modules output path和Artifacts output directory不匹配 Modules output path一定要等于Ar…

JavaScript Web APIs - 06 正则表达式

Web APIs - 06 文章目录 Web APIs - 06正则表达式正则基本使用元字符边界符量词范围字符类 替换和修饰符正则插件change 事件判断是否有类 目标:能够利用正则表达式完成小兔鲜注册页面的表单验证,具备常见的表单验证能力 正则表达式综合案例阶段案例 正…

Docker harbor私有仓库部署与管理

一、搭建本地私有仓库二、Harbor私有仓库部署与管理1、Harbor概述2、Harbor的特性3、Harbor的核心组件3.1 Proxy3.2 Registry3.3 Core services3.3.1 UI(harbor-ui)3.3.2 WebHook3.3.3 Token 服务 3.4 Database(harbor-db)3.5 Log…

C++ 学习系列 -- const 关键字

C 中引入了 const 关键字,被 const 关键字修饰的变量其值不能修改,是只读的。 一 const 变量的初始化与存储 1. const 变量初始化时就需要赋初值,否则无法编译通过 二 const 与指针 指针常量: 指针所指向的值不可改变&…

Python程序化交易接口批量获取数据源码

小编举例下面是一个简单的示例代码,展示如何使用Python的程序化交易接口批量获取数据,例如开发文档参考:MetaTradeAPI (metatradeapi) - Gitee.com 签名 int Init(); 功能 API 初始化 参数 无 返回值 授权成功的交易账户数量 返回值 &…