| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 卷积神经网络中二维卷积核与三维卷积核有什么区别? -> 正文阅读 |
|
[人工智能]卷积神经网络中二维卷积核与三维卷积核有什么区别? |
目录 1?一维卷积神经网络(1D-CNN)? ? ? ? 一维卷积常用在序列模型、自然语言处理领域;
2 二维卷积神经网络(2D-CNN)?? ? ? ? 二维卷积常用在计算机视觉、图像处理领域(在视频的处理中,是对每一帧图像分别利用CNN来进行识别,没有考虑时间维度的信息); 2.1 单通道
2.2 多通道? ? ? ? 多通道卷积。每个卷积核都应用于上一层的输入通道,以生成一个输出通道。 ?所有输出通道组合在一起组成输出层。如下图所示: 动图:https://pica.zhimg.com/50/v2-9b822c07062fed010d0fecbac56c3763_720w.webp?source=1940ef5c ? ? ? ?输入层为的矩阵(即为三通道)。滤波器为的矩阵(即含有3个卷积核)。首先滤波器中的每个卷积核分别应用于输入层的三个通道。执行上次卷积计算,输出3个的通道。 https://pica.zhimg.com/50/v2-fa76727d15dfaa1f81c4eab712b4e866_720w.jpg?source=1940ef5c? ? ? ? ? 然后对这三通道相加即进行矩阵加法,得到一个的单通道。这个通道就是在输入层()应用单个滤波器()的结果。 ? ? ? ? 同样地,以上过程可以更为统一地看成一个3D的滤波器对输入层进行处理。其中输入层和滤波器有着相同的深度,即输入层的通道数量与滤波器中卷积核数量相同。3D滤波器即只需要在输入层(如图像)的2个维度高和宽滑动(这也是为什么3D滤波器用于处理3D矩阵时,该运算过程称为2D卷积的原因)。在每个滑动位置,执行乘法和加法运算得到一个运算结果(单个数字)。在下面的例子中,滑动在的输入层(为任意值),最后得到的输出层仅含一个输出通道。 ? ? ? ? 进一步地,我们就能非常轻易地理解如何在不同深度的层(Layer)进行转换。假设输入层有个通道,而输出层需要得到个通道。只需要将个过滤器对输入层进行处理,而每一个过滤器有个卷积核。每个过滤器提供一个输出通道。完成该过程将得到个通道组成输出层。 ? 以彩色图像RGB为例(一个过滤器):? ? ? ? ? ? 图是对一个3通道的图片做卷积操作,卷积核的大小为 3 × 3?,卷积核的数目为3,此时过滤器指的就是这三个卷积核的集合,维度是 3 × 3 × 3 ?,前面的 3 × 3 ?指的是卷积核的高度(H)和宽度(W),后面的那个 3 ?指的是卷积核的数目(通道数)。 ? ? ? ? 上面的操作是对三个通道分别做卷积操作,然后将卷积的结果相加,最后输出一个特征图。 ? ? ? ? 即: 一个过滤器就对应一个特征图。 2.3?2D卷积的计算
?其中输出层和输入层之间的参数关系为, ? 参数量为:? 3?三维卷积3.1?3D卷积? ? ? ? ?在上一个插图中,可以看出,这实际上是在完成3D卷积。但通常意义上,仍然称之为深度学习 的2D卷积。因为将滤波器深度和输入层深度相同,3D滤波器仅在2个维度上移动(例如图像的高度和宽度),得到的结果为单通道。 ? ? ? ??通过将2D卷积的推广,在3D卷积定义为滤波器的深度小于输入层的深度(即卷积核的个数小于输入层通道数),故3D滤波器需要在三个维度上滑动(输入层的长、宽、高)。在滤波器滑动的每个位置执行一次卷积操作,得到一个数值。当滤波器滑过整个3D空间,输出的结构也是3D的。 ? ? ? ? 2D卷积和3D卷积的主要区别为滤波器滑动的空间维度。3D卷积的优势在于描述3D空间中的?对象关系。3D关系在某一些应用中十分重要,如3D对象的分割以及医学图像的重构等。 https://pic1.zhimg.com/50/v2-e7e31e6b4a86e54dc07e61a8144ce6dc_720w.webp?source=1940ef5c ? ? ? ? ? 3D卷积操作如图所示,同样分为单通道和多通道:
? 这里采用代数的方式对三维卷积进行介绍,具体思想与一维卷积、二维卷积相同。
3.2?3D卷积的计算
?其中输出层和输入层之间的参数关系为, ? 参数量为:? 4 如何理解卷积神经网络中的通道(channel)? ? ? ? 在卷积神经网络中我们通常需要输入? 核心观点:
在第2条用的是过滤器,而不是卷积核?。 4.1 多通道?对于第1点和过滤器示例可以参考下图: ? ? ? ?这里输入通道数是3,每个通道都需要跟一个卷积核做卷积运算,然后将结果相加得到一个特征图的输出,这里有4个过滤器,因此得到4个特征图的输出,输出通道数为4。 单个特征图的计算可看下图: ? 4.2 单通道? ? ? ? 输入是灰色图片,输入通道数是1,卷积核有3个,做三次卷积操作,生成3个特征图,输出通道数为3。 ? ? ? ? 单通道特征图的计算为:? ? ? ? ? 这里可能会有人有疑惑为什么图片的类型是RGB的,它的通道数就是3呢? ? ? ? ? 这里要从计算机如何识别图片来考虑。在人眼中看到的图片是五颜六色,对于计算机来说就只是数字。那么计算机如何分辨图片颜色呢?——RGB。所有颜色都可以用这三种颜色来表示,因此我们只需要三个数字就可以表示一种颜色。 ? ? ? ? 计算机要表示整张图片,就是用数字去表示整张图片的所有像素,但是每个像素需要三个数值来表示,于是就有了图片的3通道。每个通道分别表示RGB三种颜色。 ? ? ? ? ? 最初的通道数是3,但是有的神经网络通道数目多达100多个,怎么理解呢? ? ? ? ? 我们依然可以类比RGB通道,对于多通道我们可以看做是颜色表示的更抽象版本,每一个通道都表示图像某一方面的信息。 ? 卷积神经网络(CNN)之一维卷积、二维卷积、三维卷积详解 - 程序员大本营 输入是7帧的灰度图。 对input 进行编码。 池化:只对空间维度进行池化。 卷积核是3*3*3,第一个3表示时间维度,后面两个表示空间维度? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 8:45:38- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |