形象理解深度学习中八大类型卷积

频道:生活应用 日期: 浏览:24

点击上方“小白学视觉”,选择加"星标"或“置顶”

重磅干货,第一时间送达

卷积在神经网络和深度学习领域具有显著作用,它是一种核心机制,能够对输入数据进行有效处理,通过模拟人类视觉系统等方式,提取图像中的关键信息,增强特征表示能力,进而提升模型的整体性能,在众多应用场景中发挥着不可或缺的作用。

在人脸识别任务里,最初的几个卷积层级负责识别输入图像里重要位置点的存在,随后的卷积层级负责学习轮廓和形态,最末尾的卷积层级负责识别人脸特征。在这个案例中,首先把原始输入空间转化为低维空间,用来表示点或像素信息,接着把该空间再转化为包含边和形状的另一个空间,最后将空间降维至专门用于对图像中的人脸进行分类。卷积操作能够应用于任意维度的数据。

八大卷积类型

下面就来介绍在学习过程中经常用到的几种卷积网络构造,尽量配上图像说明,并且大量采用动态图像演示;悄悄告诉你,这是面试时必须掌握的知识点,我们接着往下看,大概需要五分钟时间。

一维卷积

最基础的一种卷积形式是一维卷积,这种卷积方法常用于处理序列类型的数据集,不过它同样适用于其他场景。通过这种卷积方式,可以从输入序列中提取出局部的一维子序列,并且能够在卷积窗口区域识别出局部存在的模式。图示部分详细说明了将一维卷积滤波器作用于序列的过程,目的是为了生成新的特征。在自然语言处理领域中,一维卷积也有不少常见的应用,在该领域中,每一个句子都被转换成由多个单词构成的序列形式。

一维二维三维卷积类型详解_卷积神经网络特征提取_卷积在生活应用

二维卷积

在图像数据集中,CNN结构主要运用二维卷积滤波器,这种滤波器沿着x轴和y轴两个维度移动,从图像信息里提取出低阶特征,其运算结果会形成一个二维矩阵结构。

1、单通道卷积

深度学习里,卷积运算涉及先逐项相乘再求和。针对单通道图像,卷积过程可这样理解。当前所用的滤波器是一个3x3的矩阵,其值已给定。该滤波器在输入数据上移动。每当它停在一个点上,就会执行乘法与加法操作。每个移动点会得到一个结果。所有这些结果组合起来,就形成了一个3x3的矩阵作为最终输出。

一维二维三维卷积类型详解_卷积在生活应用_卷积神经网络特征提取

2、多通道卷积

我们日常接触的诸多软件里,经常需要应对含有多个子通道的视觉材料,像RGB色彩模型就是其中常见的范例,该范例里的每一个色彩通道,都着重突显了原始画面某个特定的视觉属性,它们分别从不同维度描绘了图像的细节特征。

一维二维三维卷积类型详解_卷积在生活应用_卷积神经网络特征提取

这个图示能够让人更明白地看到多通道卷积的运作方式,输入层呈现为一个5 x 5 x 3的矩阵,其中包含三个不同的通道。而所用的滤波器则是一个3 x 3 x 3的矩阵。在操作开始时,每个滤波器中的独立内核都要依次作用于输入层的三个通道,然后将结果进行累加。这一过程需要重复三次,最终会得到三个尺寸为3×3的新通道。

一维二维三维卷积类型详解_卷积神经网络特征提取_卷积在生活应用

多通道二维卷积的起始步骤,是各个滤波器中的单个核心,依次作用在输入层的三个不同通道上。

一维二维三维卷积类型详解_卷积神经网络特征提取_卷积在生活应用

多通道二维卷积的下一环节,是将这三个通道合并成一个,通过逐项相加的方式,从而得到单一通道的结果。

三维卷积

三维卷积通过在数据集上使用三维滤波器来提取特征,滤波器沿x、y、z三个维度移动,从而获得基础的特性表达。这种卷积的输出结果构成一个立体结构,可能是立方体或长方体形状。它在视频分析、医学影像处理等场景中具备实用意义。此外,这种卷积方法并不局限于三维领域,也能处理二维图像输入,例如对照片进行分析。

一维二维三维卷积类型详解_卷积神经网络特征提取_卷积在生活应用

空洞卷积(dilated convolution)

空洞卷积通过衡量核内部数值的间隔来界定其结构,这种卷积方式因间隔的存在而扩大了核的覆盖范围,举例来说,一个3乘3的核,若膨胀系数为2,其观察区域便等同于一个5乘5的核,虽然计算复杂度维持不变,但此方法能生成不同的特征,即在不增加额外开销的情况下,实现更宽广的感受野。

卷积在生活应用_卷积神经网络特征提取_一维二维三维卷积类型详解

卷积在生活应用_一维二维三维卷积类型详解_卷积神经网络特征提取

转置卷积(解卷积、反卷积)

在诸多软件与网络系统设计中,我们时常需要执行与常规卷积逆向的操作,也就是进行上采样处理,此类操作常见于将低维信息投射至高维领域,比如用于生成高清图像或通过自动编码器、语义分割等手段实现特征映射。

惯常的做法是借助插值方法或者人工设定法则来完成上采样操作,不过,采用神经网络这类先进结构开元ky888棋牌官网版,能够使网络自主掌握恰当的转换过程,无需人工介入。

针对图示案例,我们运用3 x 3核在2 x 2数据上实施转置卷积,以1 x 1单位间距填充2 x 2边界,最终上采样结果呈现为4 x 4尺寸。

卷积神经网络特征提取_一维二维三维卷积类型详解_卷积在生活应用

深度可分离卷积

我们起初对输入层实施深度卷积处理。不同于常规的2D卷积,这里不采用一个3 x 3 x 3的滤波器,而是选用三个独立的内核。每个内核的规格为3 x 3 x 1。这三个内核各自只与输入层的单个通道执行卷积运算,注意,并非同时作用于所有通道。

每一个这样的卷积能够生成一个5×5×1的图像,接着把这些图像叠放在一起,就可以构成一个5×5×3的图像,此时输出的大小为5 x 5 x 3,虽然空间维度缩小了,但深度保持不变。

卷积在生活应用_一维二维三维卷积类型详解_卷积神经网络特征提取

深度可分卷积的初始阶段,采用三个独立的卷积核,而非运用一个3 x 3 x 3的单一滤波器执行二维卷积,每个卷积核的规格为3 x 3 x 1。这些卷积核各自仅与输入层的单个通道实施卷积运算,注意这里仅涉及一个通道,并非全部通道参与。通过这样的卷积操作,会生成一个5×5×1的图像。接下来,将这些生成的图像进行叠加组合,最终形成5×5×3的图像结构。在此之后,我们的输出尺寸为5 x 5 x 3。

深度可分离卷积的后续步骤中,为了增加深度,我们运用了1x1卷积,其卷积核尺寸为1x1x3。将5 x 5 x 3的输入图像与每一个1 x 1 x 3的卷积核进行匹配,能够得到大小为5 x 5 x 1的映射结果。

一维二维三维卷积类型详解_卷积在生活应用_卷积神经网络特征提取

因此,完成128次1x1卷积运算,就能得到一个体积为5 x 5 x 128的层结构。

卷积在生活应用_一维二维三维卷积类型详解_卷积神经网络特征提取

运用这两个环节,深度可分离卷积能够将初始特征图(7 x 7 x 3)转变为最终特征图(5 x 5 x 128)。深度可分离卷积的完整操作流程,在附图中有详细展示。

卷积神经网络特征提取_卷积在生活应用_一维二维三维卷积类型详解

深度可分离卷积有什么好处呢?那就是高效性,跟二维卷积相比,深度可分离卷积所耗费的计算量更小。

我们来看看二维卷积算例的运算开销。涉及128个三行三列三深度的核,每个核要移动五行五列。总共需要进行128乘以3乘以3乘以3乘以5乘以5次乘法。这个数量是八万六千四百。

可分离卷积效果如何?在首个深度卷积环节,涉及三个3x3x1的滤波器,每次在空间上滑动5x5个位置。这对应着3x3x3x1x5x5=675次乘法运算。进入1x1卷积阶段,使用128个1x1x3的滤波器,同样以5x5的步幅进行移动。这一步骤总共需要128x1x1x3x5x5=9600次乘法计算。

因此,从整体上看,深度可分离卷积总共需要进行675次乘法,再加上9600次乘法,合计为10,275次乘法运算。这一数字仅相当于二维卷积运算所需次数的大约百分之十二。

1 x 1卷积

一个数字会与输入层里每一个数字逐一相乘,这是1 x 1卷积的基本操作。当输入层包含多个通道时,这种卷积方式会产生特别的效果。下图展示了1 x 1卷积如何处理高维度的输入数据,其尺寸为H x W x D。对1 x 1 x D的滤波器执行卷积操作后,输出结果的通道数量变为H x W x 1。若重复应用N次这样的1 x 1卷积,并将所有结果合并,最终生成的输出层维度将是H x W x N。

卷积在生活应用_卷积神经网络特征提取_一维二维三维卷积类型详解

最开始,在某个网络文件里提出了1 x 1的卷积方法,接着在Google Inception模型中,这种卷积得到了非常广泛的运用,其突出的好处在于:能够有效降低数据维度,从而提升计算效率,并且可以形成高效的低维特征表示开yun体育app入口登录,此外,在特征池化操作完成之后,还可以再次引入非线性处理步骤。

图中可见前两点优势,经过1 x 1卷积,尺寸大幅降低,假如初始输入有200个通道,1 x 1卷积便将这些通道(功能)合并为单一通道,第三点是1 x 1卷积后,能够加入ReLU等非线性激励,非线性使网络能掌握更复杂的功能。

分组卷积

二零一二年,AlexNet论文提出了分组卷积的概念。采用这种方法的关键目的在于,使得网络训练能够借助两台内存有限的GPU完成,每台GPU的容量为1.5GB。接下来的AlexNet设计,在多数层级中都包含了两个各自独立的卷积通道。该网络通过在两个GPU之间分配模型,实现了并行处理(当然,若配备更多GPU,也能够执行多GPU并行化)。

卷积在生活应用_一维二维三维卷积类型详解_卷积神经网络特征提取

我们说明分组卷积的运作方式。首先,常规的二维卷积按以下顺序进行。在此案例中,借助128个尺寸为3 x 3 x 3的滤波器,把规格为(7 x 7 x 3)的输入层处理成规格为(5 x 5 x 128)的输出层。

在通常情况下,借助Dout内核,其规格为 h x w x Din开元ky888棋牌官方版,能够将规格为 Hin x Win x Din 的输入层,转变成规格为 Hout x Wout x Dout 的输出层。

卷积神经网络特征提取_一维二维三维卷积类型详解_卷积在生活应用

在分组卷积处理里,过滤器被划分成多个部分。每个部分执行特定层数的二维卷积运算,具体方式如图所示。

卷积神经网络特征提取_一维二维三维卷积类型详解_卷积在生活应用

这种分组卷积涉及两个滤波器组,每个组里的滤波器深度仅是标准二维卷积深度的一半,具体为Din/2。每个组都由Dout/2个滤波器构成。

第一个滤波器组(红色)和输入层的前半部分进行运算,第二个滤波器组(蓝色)则和输入层的后半部分进行运算。这样一来,每个滤波器组都能生成Dout / 2个通道。两个滤波器组合在一起,总共形成了Dout个通道。最后,我们把这些Dout个通道全部叠加到输出层上。

PS参考附录:

好消息!

小白学视觉知识星球

开始面向外开放啦


一维二维三维卷积类型详解_卷积在生活应用_卷积神经网络特征提取



下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖安装扩展组件,运用SFM方法,研究立体视觉技术,实现目标追踪,分析生物视觉现象,进行超分辨率图像处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像区域划分,口罩状态确认,道路车道标记,车辆数量统计,眼部轮廓描绘,车牌号码辨认,文字符号辨识,人物情感分析,书面文字获取,人脸身份验证等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请通过扫描下方微信号加入团体,注明:”姓名+机构名称+专业领域“,比如:”李四 + 清华大学 + 人工智能“请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

卷积神经网络特征提取_卷积在生活应用_一维二维三维卷积类型详解


一维二维三维卷积类型详解_卷积在生活应用_卷积神经网络特征提取

网友留言(0)

评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。