网站首页 > 技术文章 正文
——1——
CNN卷积神经网络
卷积神经网络 (CNN) 是一种直接从数据中学习的深度学习网络架构。CNN 对于在图像中寻找以及识别对象特别有用。它对于分类非图像数据(如音频、时间序列和信号数据)也非常有效。
神经网络接受输入图像/特征向量,并通过一系列隐藏层转换,然后使用非线性激活函数。每个隐藏层也由一组神经元组成,其中每个神经元都与前一层中的所有神经元完全连接。神经网络的最后一层(即“输出层”)也是全连接的,代表网络的最终输出分类。
一般卷积神经网络有如下结构:
- ?数据输入层/ Input layer
- ?卷积计算层/ CONV layer
- ?ReLU激励层 / ReLU layer
- ?池化层 / Pooling layer
- ?全连接层 / FC layer
当然卷积层,Relu激励层与Pooling层可以多次使用
——2——
卷积核或者说特征检测器
在CNN卷积神经网络中,卷积核是一个过滤器,用于从图像中提取特征。
公式 = [i-k]+1
i -> 输入大小,K-> 内核大小
——3——
Stride
Stride是CNN卷积神经网络过滤器的一个参数,用于修改卷积核图像或视频上的移动量。当stride等于1时,卷积核每次只移动一个像素,当stride等于2时,卷积核每次移动2个像素。
公式 =[i-k/s]+1
i -> 输入大小,K-> 内核大小,S-> stride
——4——
填充 padding
padding指的是当输入图像被 CNN 卷积内核处理时添加到图像以外的其他像素值。例如,如果 CNN卷积神经网络 中的padding设置为零,则添加的每个像素值都将为零。当我们使用过滤器或内核扫描图像时,图像的大小会变小。我们必须避免这种情况,因为我们想保留图像的原始大小,以提取一些图形边缘特征。因此,我们将在图像之外添加一些额外的像素。
公式=[i-k+2p/s]+1
i -> 输入大小,K-> 内核大小,S-> 步幅,p-> 填充
CNN卷积神经网络的padding与transformer模型的pad mask类似,其操作是在图片周围填充0来扩展图片尺寸,以便经过CNN卷积后,确保图片尺寸保持不变,而transformer模型的pad mask是为了把所有的输入句子统一成统一的长度,确保后面的attention矩阵相乘的操作
——5——
Pooling
卷积神经网络中的池化是一种用于泛化由卷积滤波器提取的特征信息,并帮助CNN卷积神经网络识别独立于图像位置的特征技术。当然pooling有最大池化与平均池化操作。
——6——
Flatten
Flattening用于将池化特征图中的所有生成的二维数组转换为一个一维的连续线性向量。将扁平矩阵作为输入送到全连接层以对图像进行分类。
——7——
用于构建 CNN 地层
卷积神经网络与其他神经网络的区别在于其在图像、语音或音频信号输入方面的卓越性能。它们具有三种主要类型的层,它们是:
- 卷积层
- 池化层
- 全连接(FC)层
卷积层
该层是用于从输入图像中提取各种特征的第一层。在这一层中,我们使用过滤器或内核方法从输入图像中提取特征。
池化层
该层的主要目的是减小卷积特征图的大小以降低计算成本。这是通过减少层之间的连接并在每个特征图上独立操作来执行的。根据所使用的方法,有几种类型的池化操作。我们有最大池和平均池。
全连接层
全连接(FC)层由权重和偏差以及神经元组成,用于连接两个不同层之间的神经元。这些层通常放置在输出层之前,形成 CNN 架构的最后几层。
——8——
Dropout
CNN 的另一个典型特征是 Dropout 层。Dropout 层是一个掩码,它使某些神经元进行屏蔽,而其他所有神经元保持不变。
——9——
激活函数
激活函数决定神经元是否应该被激活。这意味着它将决定神经元对网络的输入在预测过程中是否重要。有几种常用的激活函数,例如 ReLU、Softmax、tanH 和 Sigmoid 函数。这些功能中的每一个都有特定的用途。
- Sigmoid — 用于 CNN 模型中的二元分类
- tanH - tanh 函数与 sigmoid 函数非常相似。唯一的区别是它围绕原点对称。在这种情况下,值的范围是从 -1 到 1。
- Softmax - 它用于多项逻辑回归,通常用作神经网络的最后一个激活函数,以将网络的输出标准化为预测输出类的概率分布。
- RelU - 使用 ReLU 函数优于其他激活函数的主要优点是它不会同时激活所有神经元。
猜你喜欢
- 2024-09-25 应聘机器学习工程师?这是你需要知道的12个基础面试问题
- 2024-09-25 Richard Sutton 直言卷积反向传播已经落后,AI 突破要有新思路:持续反向传播
- 2024-09-25 深度学习常用概念总结(一) 人工智能中深度学习的概念
- 2024-09-25 吴恩达深度学习笔记(21)-神经网络的权重初始化为什么要随机?
- 2024-09-25 特斯拉AI芯片深度解读 特斯拉车规级芯片
- 2024-09-25 5分钟理解RELU以及他在深度学习中的作用
- 2024-09-25 局部响应归一化与批归一化的区别 批归一化层作用
- 2024-09-25 看完立刻理解GAN!初学者也没关系 初学者的好处和坏处
- 2024-09-25 人工智能神经网络中的基础概念有哪些?
- 2024-09-25 步长?填充?池化?教你从读懂词语开始了解计算机视觉识别最火模型|CNN入门手册(中)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)