当前位置: 首页 > news >正文

(下:补充——五个模型的理论基础)深度学习——图像分类篇章

目录

1.1 卷积神经网络基础

3.1 AlexNet网络结构详解与花分类数据集下载

4.1 VGG网络详解及感受野的计算

5.1 GoogLeNet网络详解

6.1 ResNet网络结构,BN以及迁移学习详解

总结(可以直接看总结)


1.1 卷积神经网络基础

视频讲解:
1.1 卷积神经网络基础_哔哩哔哩_bilibili

发展不是一帆风顺的

全连接层:

卷积层()

目的:进行图像特征提取

特性:拥有局部感知机制,权值共享

扩展到多维

 特征总结:

  1. 卷积核的channel与输入特征层的channek相同
  2. 输出的特征矩阵channel与卷积核个数相同

sigmoid/Relu  两个激活函数  各有缺点:

Sigmoid:饱和时梯度值小,网络层数较深时易出现梯度消失
Relu:反向传播时出现非常大的梯度更新后导致权重分布中心小于零,导致该处导数始终为零,反向传播无法更新权重,即进入失活状态。

出现越界情况用padding处理(增补)

池化层()

和卷积层类似 但是要更简单

目的:对特征图像进行稀疏处理,减少数据运算量

(补充)反向传播(后面跳过了)

说明:本节理论较多,会枯燥,尽管内容不需要完全掌握,但是要大致理解,留有印象

误差的计算:

softmax:让结果满足概率分布(即概率和为1)  (猫/狗)

sigmoid:(人类/男人)

误差的反向传播:

3.1 AlexNet网络结构详解与花分类数据集下载

视频讲解:
3.1 AlexNet网络结构详解与花分类数据集下载_哔哩哔哩_bilibili

AlexNet(2012冠军)

该网络的亮点在于:

  • (1)首次利用 GPU进行网络加速训练。
  • (2)使用了 ReLu 激活函数,而不是传统的 sigmoid 激活函数以及 Tanh 激活函数。
  • (3)使用了 LRN 局部响应归一化。
  • (4)在全连接层的前两层中使用了 Dropout随机失活神经元操作,以减少过拟合。

中间的图像很好的诠释了AlexNet的好处,减少了过拟合的现象

解决方法:使用Dropout的方式在网络正传播过程中随机失活一部分神经元

经卷积后的矩阵尺寸大小计算公式为:N=(W-F+2P)/S+1
输入图片大小 W*W
Filter大小F*F
步长 S
padding的像素数P

4.1 VGG网络详解及感受野的计算

视频讲解:
4.1 VGG网络详解及感受野的计算_哔哩哔哩_bilibili

网络结构:

网络亮点: 

  • 通过堆叠多个3*3的卷积核来替代大尺度卷积核(减少所需参数 )
  • 通过堆善两个3x3的卷积核替代5x5的卷积核
  • 通过堆叠三个3x3的卷积核替代7x7的卷积核。

为什么这么干?
效果相同的情况下,参数更少。

5.1 GoogLeNet网络详解

网络结构:

网络中的亮点:

  • 引入了Inception结构(融合不同尺度的特征信息)
  • 使用1x1的卷积核进行降维以及映射处理    减少参数/特征矩阵深度
  • 添加两个辅助分类器帮助训练
  • 丢弃全连接层,使用平均池化层(大大减少模型参数)

注意:AlexNet和VGG都只有一个输出层,GooLeNet有三个输出层

6.1 ResNet网络结构,BN以及迁移学习详解

视频讲解:
6.1 ResNet网络结构,BN以及迁移学习详解_哔哩哔哩_bilibili

网络结构:

网络中的亮点:

  • 超深的网络结构(突破1000层)
  • 提出residual模块  
  • 使用Batch Normalization加速训练(丟奔dropout)

随着网络加深,梯度消失&&梯度爆炸现象越来越明显     BN等方式解决

Batch Normalization原理:
要让整个训练样本的数据集满足分布规律(均值为0方差为1)
退化问题,通过残差解决

迁移学习:
常见的迁移学习方式:

  • 1.载入权重后训练所有参数
  • 2.载入权重后只训练最后几层参数
  • 3.载入权重后在原网络基础上再添加一层全连接层,仅训练最后一个全连接层

总结(可以直接看总结):

综上呢,其实就是延续上一篇文章(上)基于机器学习的图像识别——遥感图像分类(LeNet-5;AlexNet;VGGNet;GoogLeNet;ResNet)-CSDN博客

五种”神经网络模型“的进一步讲解,偏向于理论层面

但两篇文章整理的是不同博主的讲解视频,讲的都蛮好的,通过”对比学习“可以发现,二者间会有一部分共通之处——这些共同之处一定是基础/重点,当然我已经帮大家整理好了,请各位放心食用。

http://www.lryc.cn/news/545689.html

相关文章:

  • 使用Python自动生成图文并茂的网页分析报告
  • uniapp-原生android插件开发摘要
  • GIT工具学习【1】:基本操作
  • 《国密算法开发实战:从合规落地到性能优化》
  • 【语法】C++中string类中的两个问题及解答
  • LeetCode-154. 寻找旋转排序数组中的最小值 II
  • 2.数据结构:1.Tire 字符串统计
  • C语言复习4:有关数组的基础常见算法
  • Ubuntu从零创建Hadoop集群
  • GPIO概念
  • Node.js, Bun, Deno 比较概述
  • C# 类库打包dll文件
  • Linux中的UDP编程接口基本使用
  • RAG项目实战:金融问答系统
  • 大白话React第十一章React 相关的高级特性以及在实际项目中的应用优化
  • 虚拟机Linux操作(持续更新ing)
  • 【开源-线程池(Thread Pool)项目对比】
  • JMeter 实战项目脚本录制最佳实践(含 BadBoy 录制方式)
  • Jackson注解实战:@JsonInclude的妙用
  • CAN总线通信协议学习1——物理层
  • Vim 常用快捷键大全:跳转、编辑、查找替换全解析
  • 【Python 数据结构 2.时间复杂度和空间复杂度】
  • 【Qt QML】QML鼠标事件(MouseArea)
  • LeetCode 202. 快乐数 java题解
  • 《认知·策略·跃迁:新能源汽车工程师的深度学习系统构建指南》
  • PHP环境安装达梦数据库驱动实操
  • Electron + Vite + React + TypeScript 跨平台开发实践指南
  • Java---入门基础篇(下)---方法与数组
  • 【分布式理论11】分布式协同之分布式事务(一个应用操作多个资源):从刚性事务到柔性事务的演进
  • 【文献阅读】Collective Decision for Open Set Recognition