本篇文章10268字,读完约26分钟

雷锋。(公开号码:雷锋。. com)出版社:这篇文章出自智湖,作者:于江高,雷锋翻印。com。

附言:yjango是我的网名,意思是我写的教程,不是网络结构。。

互联网上有很多关于卷积神经网络解释的精彩文章,恐怕很难找到比斯坦福的cs231n更全面的教程了。因此,这里对卷积神经网络的解释主要集中在不同的思维上。通过对卷积神经网络的分析,我们可以进一步理解神经网络变体中“因子共享”的概念。

YJango的卷积神经网络——介绍

注意:这篇文章将与其他现有的文章大不相同。阅读这篇文章需要本书的前几章作为初步知识,否则会有理解的障碍。没有看过前面内容的朋友建议观看公开课视频:深层神经网络设计概念。这些知识可以帮助我们更好地理解这篇文章。

YJango的卷积神经网络——介绍

Gitbook第一次阅读地址:卷积神经网络-介绍,阅读前刷新浏览器

如果要提出一种新的神经网络结构,应引入循环神经网络中的“分时”等先验知识,以减少学习所需的训练数据。卷积神经网络也引入了这样的先验知识:“空".之间的共享让我们以图片识别为切入点,看看这种先验知识是如何引入神经网络的。

YJango的卷积神经网络——介绍

目录

●视觉

●什么是图片识别

●识别结果取决于什么

低图像表达

●输入图片识别

●图片没有变形

●前馈神经网络在图像识别中的缺点

●用于图像识别的卷积神经网络

●本地连接

●空

●输出空表达式

●低深度尺寸加工

●零填充

低外形,概念捕捉

低更多过滤器

●非线性

低输出尺寸控制

●矩阵乘法执行卷积

●最大池

●全连接层

●结构发展

●满足图像不变性

●平移不变性

●旋转和视角不变性

●尺寸不变性

●理解●初始阶段

●1x1卷积核理解

低跳层连接resnet

视觉感知1。图片识别的任务是什么?

学习知识的第一步是阐明任务以及知识的输入和输出。卷积神经网络最初用于图像识别,所以让我们先来看看图像识别的本质。

首先,看看动物和人类之间的几组视觉差异。

苍蝇的视觉和人的视觉的区别

2.蛇的视觉和人类视觉的区别

(更多比较图表请参考链接)

从以上两组对比图片可以看出,即使同一张图片通过不同的视觉系统,也会得到不同的感知。

这就引出了一个知识:生物看到的不是世界的本来面貌,而是一种适合其生存环境的长期进化的感知模式。蛇的猎物通常在晚上移动,所以它进化出了一个可以在晚上很好观察的感觉系统,即感觉热。

YJango的卷积神经网络——介绍

任何视觉系统都会将图像的反射与大脑中看到的概念联系起来。

因此,事实上,图片识别并不是要客观地识别这个东西是什么,而是要找到人类视觉联想的方式并重新应用它。如果我们不是人,而是蛇,图片识别在寻找什么??现在不一样了。

YJango的卷积神经网络——介绍

图片识别实际上是寻找(学习)人类视觉联想??,然后再次应用。

第二,什么样的图像被识别取决于什么因素?

让我们用两张图片来理解识别结果所依赖的因素。

老年妇女和女孩

请观察上面的图片。你看到一个老妇人还是一个年轻女孩?用不同的方式看这幅图会得到不同的答案。这幅画可以被看作是一个大鼻子大眼睛的老妇人。它也可以作为一个女孩来观察,但是在这个时候,老妇人的嘴会被识别为女孩脖子上的项链,而老妇人的眼睛会被识别为女孩的耳朵。

YJango的卷积神经网络——介绍

海豚、男人和女人

如果上面的图片被成年人观察,大多数人会看到一对深情的男女。如果孩子们看到这张图片,他们会看到一群海豚(雄性和雌性的轮廓是由海豚构建的)。因此,识别结果受年龄和文化等因素的影响,换句话说:

YJango的卷积神经网络——介绍

图片被识别不仅取决于图片本身,还取决于如何观察图片。

图像表达

我们知道“图片识别就是从大量的数据中找到人类视觉联想的方式。”?,然后再次应用。输入在哪里,也就是你所看到的。输出,表明这是什么东西。

YJango的卷积神经网络——介绍

在自然界中,它是物体的反映,那么图像是如何在计算机中表达和存储的呢?

图像是在计算机中按顺序排列的一串数字,数值范围从0到255。0表示最暗,255表示最亮。你可以把这一堆数字表示成一个长向量,这是张量流的mnist教程中784维向量的表示。然而,这将丢失平面结构的信息。为了保持这种结构的信息,通常选择矩阵的表示:28x28矩阵。

YJango的卷积神经网络——介绍

上面的图片是一个只有黑色和白色的灰色图像,而更常见的图片表达是rgb颜色模型,也就是说,红色,绿色和蓝色以不同的比例添加,以产生各种颜色。

YJango的卷积神经网络——介绍

这样,在rgb颜色模型中,单个矩阵被扩展成按顺序排列的三个矩阵,这也可以通过三维张量来理解,并且每个矩阵也被称为该图片的通道。

在计算机中,图片是由数字组成的“长方体”。它可以用宽度、高度和深度来描述,如图所示。

图像识别的输入是具有形状(宽度、高度、深度)的三维张量。

接下来要考虑的是如何处理这样一个“数字长方体”。

图像不变性在决定如何处理“数字长方体”之前,有必要知道所建立的网络具有什么特征。我们知道一个对象将被识别为同一个对象,不管它是在屏幕的左侧还是右侧,这个特征是不变性的,如下图所示。

YJango的卷积神经网络——介绍

我们希望建立的网络能够尽可能满足这些不变性特征。

为了理解卷积神经网络对这些不变性特征的贡献,我们将它们与没有这些不变性特征的前馈神经网络进行比较。

图像识别-前馈神经网络为了方便起见,我们使用深度仅为1的灰度图像作为例子。要完成的任务是识别图片中是否有宽度为4x4的“水平折叠”。在图中,黄色圆点代表值为0的像素,黑色圆点代表值为1的像素。我们知道,无论这个水平褶皱位于图中的什么位置,它都将被视为同一个水平褶皱。

YJango的卷积神经网络——介绍

如果训练前馈神经网络来完成这一任务,则表示图像的三维张量将被展平成向量作为网络的输入,即(宽度、高度、深度)为(4,4,1)的图像将被展开成维数为16的向量作为网络的输入层。经过几个不同节点数的隐藏层后,最终输出两个节点,表示“交叉概率”和“不交叉概率”,如下图所示。

YJango的卷积神经网络——介绍

接下来,我们使用数字(十六进制)对图片中的每个像素进行编号。当训练中间有正确对象的网络时,网络将只调整编号为5、6、9和a的节点的权重。如果网络识别出位于右下角的“交叉折叠”,则无法识别。

YJango的卷积神经网络——介绍

解决方案是用位于不同位置的大量对象进行训练,并增加网络隐藏层的数量,以扩展网络学习这些变体的能力。

但是,这样做效率很低,因为我们知道左侧的“交叉折叠”和右侧的“交叉折叠”都是“交叉折叠”。为什么同样的事情在位置改变后必须重新学习?有什么方法可以把在中间学到的定律应用到其他位置吗?换句话说,让不同的位置使用相同的权重。

YJango的卷积神经网络——介绍

图像识别-卷积神经网络卷积神经网络是一种神经网络,允许在不同的位置共享权重。

局部连接在卷积神经网络中,我们首先选择一个局部区域,并用这个局部区域来扫描整个图像。被局部区域包围的所有节点将被连接到下一级的节点。

为了更好地与前馈神经网络进行比较,我将这些以矩阵形式排列的节点扩展成向量。下图显示了编号为0、1、4和5的节点如何通过红色方框连接到下一级的节点0。

YJango的卷积神经网络——介绍

强连接和弱连接的红色方框称为过滤器或内核或特征检测器。过滤器的范围称为过滤器尺寸,这里显示的是2×2过滤器尺寸。

第二层中节点0的值是局部区域的线性组合,也就是说,带圆圈的节点的值乘以相应的权重,然后相加。在输入值、输出值和角标由图中的数字表示的情况下,下面列出了用于计算输出值0的两个表达式。

YJango的卷积神经网络——介绍

注意:在局部区域的线性组合之后,将像前馈神经网络一样添加偏移。

在空之间共享当过滤器扫描到其他位置以计算输出节点时,它被共享。

下图显示了当过滤器扫过不同区域时,节点是如何链接的。动态图的最后一帧显示了所有连接。可以注意到,每个输出节点不像前馈神经网络那样与所有输入节点连接,而是部分连接。这就是为什么它也被称为全连接神经网络的前馈神经网络。该图显示了一步一步移动滤镜来扫描整个图片,一次移动的量称为步幅。

YJango的卷积神经网络——介绍

空之间的共享是由卷积神经网络引入的先验知识。

输出表达式如前所述,为了保留图片的平面结构信息,图片不使用矢量表示。类似地,如果卷积输出安排在上图中,平面结构信息将丢失。所以我们仍然把它们排列成矩阵,得到下图所示的连接。

YJango的卷积神经网络——介绍

这是你在网上看到的下图。观看此图时,请理解上图中的连接,即每九个输入节点(绿色)连接到一个输出节点(粉色)。

由特征检测器计算的粉红色区域也称为“卷积特征”或“激活图”或“特征图”。

深度维的处理现在我们已经知道如何处理只有一个深度维的灰度图像。然而,如前所述,图片的常见表达是三通道的rgb颜色模型,如下图所示。当深度是一个复数时,每个特征检测器是如何错综复杂的?

YJango的卷积神经网络——介绍

现象:在2x2表示的过滤器尺寸中,一个2表示宽度维度中的局部连接的数量,另一个2表示高度维度中的局部连接的数量,但是在深度维度中没有局部连接,因为深度维度不是局部的,而是全部连接。

YJango的卷积神经网络——介绍

在二维卷积中,滤波器在张量的宽度维度和高度维度上局部连通,在深度维度上贯穿所有通道。

类比:想象一下,当你切一个蛋糕时,不管有多少层,你通常都是把它整个切开,但它是部分切开的,分为两个维度:长度和宽度。

下图显示了当深度复杂时,过滤器如何将输入节点连接到输出节点。图中的红色、绿色和蓝色节点代表三个通道。黄色节点表示通过特征检测器的卷积获得的特征图。其中,透明黑色圆圈中的12个节点将连接到黄色和黑色节点。

YJango的卷积神经网络——介绍

当输入深度为1时,由滤波器大小2x2圈出的四个输入节点连接到一个输出节点。

当输入深度为3:滤波器大小为2×2时,但在运行3个通道后,圆圈中的12个输入节点连接到一个输出节点。

当输入深度为:2x2x2x输入节点连接到一个输出节点。

(可以在三维编辑下从矢量中查看)

注意:三个通道的权重不共享。也就是说,当深度变为3时,权重被扩展到三个组。如公式(3)所示,不同的通道使用它们自己的权重。公式中添加的角标记r、g、b、g和b分别代表红色通道、绿色通道和蓝色通道的权重。

YJango的卷积神经网络——介绍

计算示例:红色通道的输入节点数为0,绿色通道的输入节点数为5。代表蓝色通道。如公式(4)所示,此时一个输出节点实际上是12个输入节点的线性组合。

当过滤器扫描到其他位置以计算输出节点时,12个权重在不同的位置共享,如下图所示。透明黑盒中的12个节点连接到白盒选择的黄色节点。

每个过滤器将通过空之间的局部连接和共享获得宽度维度和高度维度上的特征图,其贯穿整个深度维度。

细心的零填充读者应该已经注意到,一个4×4的图片被一个2×2的滤波器卷积,变成一个3×3的图片。如果每次卷积后它会变小,那么经过几层后它会变得越来越小。零填充有助于控制此时特征图的输出大小,避免边缘信息被逐步丢弃的问题。

YJango的卷积神经网络——介绍

例如,在下面的4×4图片的边缘被零填充并且用3×3滤波器卷积之后,特征图的大小仍然是4×4。

通常,每个人都希望在卷积过程中保持图片的原始大小。选择3×3滤镜和1个零填充,或5×5滤镜和2个零填充来保持图片的原始大小。这就是为什么人们选择3x3和5x5过滤器。另一个原因是,3×3过滤器考虑1距离内的像素和所有其他像素之间的关系,而5×5过滤器考虑2距离内的像素和所有其他像素之间的关系。

YJango的卷积神经网络——介绍

大小:要素地图的大小等于(input_size+2 * padding_size?filter_size)/stride+1 .

注意:上述公式计算一维的宽度或高度。Padding_size还指示单侧零填充的数量。例如,(4+2-3)/1+1 = 4,保持原始大小。

你不必背诵这个公式。其中(input_size+2 * padding_size)是零填充扩展后的实际卷积大小。减去过滤器大小以指示可滑动的范围。除以你能滑动一次的次数,你就能得到滑动的次数,这意味着你能得到多少输出节点。在添加第一个没有滑动的输出节点后,它就是最终的大小。

YJango的卷积神经网络——介绍

在知道每个过滤器正在做什么之后,我们将考虑这样一个过滤器将捕获什么样的信息。

我们知道不同的形状可以由微小的“部分”组合而成。例如,在下图中,由2x2范围形成的16个形状可以组合成具有各种格式的“较大”形状。

每个卷积滤波器可以检测特定的形状。特征地图保留了抓取后的空结构。如果检测到的精细图形的特征图被再次卷积作为新的输入,则可以检测到“较大”形状的概念。例如,下图中的第一个“大”形状可以由2、3、4和5个基本形状组成。第二个可以由2、4、5和6组成。第三个可以由6,1组成。

YJango的卷积神经网络——介绍

除了基本形状之外,颜色和对比度等概念也对识别结果有影响。卷积层还将根据需要探索特定的概念。

从下图可以看出,由不同值的滤波器卷积的要素图可以检测边缘、角点、模糊、突出等概念。

正如我们前面提到的,图片被识别为什么不仅取决于图片本身,还取决于如何观察图片。

滤波器中的权重矩阵w由网络根据数据学习,也就是说,我们让神经网络学习如何自己观察图片。

以一位老妇人和一位年轻女孩的照片为例。当标签是一个年轻女孩时,卷积网络将学会捕捉可以成为年轻女孩的形状和概念。当标签是一位老妇人时,卷积网络将学会捕捉可以成为老妇人的形状和概念。

YJango的卷积神经网络——介绍

下图显示了在人脸识别中卷积后,可以检测到的形状和概念变得越来越抽象和复杂。

卷积神经网络将试图找到解释训练数据的最佳方法。

多个过滤器每个过滤器可以抓取和检测特定形状的存在。如果我们想检测下图中的长框形状,我们可以使用四个过滤器来检测四个基本“部分”。

因此,我们自然会选择用多个不同的过滤器抓取相同的图片。如下图所示(如果动态图片太大,请查看此链接观看),同一张图片可以通过两个不同的过滤器(红色和绿色)进行扫描,以获得具有不同特征的要素图。每次添加一个过滤器,就意味着您希望网络多获取一个功能。

YJango的卷积神经网络——介绍

这样,卷积层的输出不再是深度为1的平面,而是像输入一样具有复杂深度的长方体。

如下图所示,当我们添加一个过滤器(紫色)时,我们可以再次得到一个要素图。在按顺序堆叠由不同滤波器卷积的特征图之后,获得卷积层的最终输出。

卷积层的输入为长方体,输出为长方体。

这样,卷积后的长方体输出可以作为新的输入发送到另一个卷积层进行处理。

加入非线性与前馈神经网络相同。经过线性组合和偏移后,将加入非线性以增强模型的拟合能力。

卷积特征图的relu变换(元素方向)后得到的输出如下图所示。

输出长方体现在我们知道卷积层的输出也是长方体。什么因素决定和控制输出长方体的宽度、高度和深度?

在此直接使用cs231n摘要:

计算示例:请体验cs231n的卷积演示。

矩阵乘法执行卷积。如果以传统的扫描方式逐步计算局部节点和滤波器权重的点乘,则不能有效利用gpu的并行能力。因此,更常见的方法是使用两个大型矩阵的乘法来一次覆盖所有计算。

YJango的卷积神经网络——介绍

因为卷积层的每个输出节点都是通过几个输入节点的线性组合来计算的。因为输出节点的数量是,所以存在线性组合。

读过我的线性代数教程的读者应该记得,矩阵乘以矩阵的含义可以理解为线性组合成批的顺序排列。一个矩阵表示的信息是多组权重,另一个矩阵表示的信息是需要组合的向量。习惯上,将组件放在矩阵乘法的右侧,将权重放在矩阵乘法的左侧。因此,这个大的矩阵乘法可以表示为,其中和是一个矩阵。

YJango的卷积神经网络——介绍

卷积的每个输出都是通过将本地输入节点和相应的滤波器权重扩展成向量来计算的,如公式(2)所示。那么每一行是每个过滤器的重量,并且有一个;的每一列都是所有需要组合的节点(上面动态图中黑色透明框架中的节点),并且还有一个。列数表示在扫描整个图片之前,每个滤镜必须滑动多少次。因为我们有多个过滤器,行数就是过滤器的数量。

YJango的卷积神经网络——介绍

最后,我们得到:

当然,在矩阵相乘之后,它需要被组织成一个三维张量,其形状为,用于后续处理(例如,将其发送到另一个卷积层)。还需要一步一步地在本地滑动图片,最后将它们堆叠起来形成计算矩阵乘法的形式。

YJango的卷积神经网络——介绍

最大池化在卷积后会有一个池化操作,尽管还有其他操作,如平均池化,这里只提到最大池化。

最大池化的操作如下图所示:整个画面被分割成几个大小相同的池,没有重叠。在每个小块中只取最大的数目,然后丢弃其他节点,并保持原始平面结构以获得输出。

YJango的卷积神经网络——介绍

最大池化在不同深度单独进行,不需要参数控制。那么问题是,最大池的作用是什么?一些信息被丢弃后没有效果吗?

最大池的主要功能是降采样,但不会破坏识别结果。这意味着卷积的特征图包含用于识别对象的不必要的冗余信息。然后,我们依次思考这些“冗余”信息是如何产生的。

YJango的卷积神经网络——介绍

凭直觉,为了检测某个形状的存在,我们用一个过滤器一步一步地扫描整个画面。然而,只有通过该特定形状的区域的卷积获得的输出才是真正有用的,并且通过该滤波器的其他区域的卷积获得的数值可能对判断该形状是否存在几乎没有影响。例如,在下图中,我们仍然考虑检测“横向折叠”的形状。在卷积后获得的3×3特征图中,编号为3的节点非常有用,其他值与此任务无关。因此,使用3×3最大汇集后,对“横向褶皱”的检测没有影响。想象一下,如果你在这个例子中不使用最大池,让网络自己学习。该网络还将学习与最大池相似的权重。因为这是一种近似效果,所以增加了更多参数的成本,但最好直接进行最大池化。

YJango的卷积神经网络——介绍

但是max pooling也有一些缺点。因为不是所有的抓取都像上面的例子。一些周围的信息也会影响对某个概念是否存在的判断。最大池相当于所有要素地图。就像用同样网眼的渔网捕鱼一样,总会有一条鱼从网中溜走。

YJango的卷积神经网络——介绍

当完全连接的图层捕捉到足够的特征来识别图片时,下一步就是如何对它们进行分类。全连接层(也称为前馈层)可用于将最终输出映射到可线性分离的空.通常,在卷积网络的末端,在末端获得的立方体将被展平成长向量,该向量将被发送到完全连接层,用于与输出层分类。

YJango的卷积神经网络——介绍

卷积神经网络大致是革命层、汇集层、relu层和全连通层的组合,例如,结构如下图所示。

这也反映了为什么深层神经网络或深层学习被称为深层的一个原因:该模型集成了特征捕获层和分类层。负责特征捕获的卷积层主要用于学习如何观察。

下图简要描述了机器学习的发展,从最初手动定义特征并将它们放入分类器的方法,到让机器自己学习特征,再到最大限度减少人工干预的深度学习。

结构发展上面介绍了卷积神经网络的基本概念。以下是一些众所周知的卷积神经网络结构,详情请见cs231n。

● lenet:卷积神经网络的首次成功应用

● alexnet:与lenet相似,但更深更大。堆叠卷积层用于捕获要素(通常是紧接着最大汇集层的卷积层)

● zf网:增加中间卷积层的尺寸,使第一层的步长和滤波器尺寸变小。

● googlenet:减少参数数量,在最后一层用最大池层替换整个连接层,更重要的是,使用initiation-v4模块。

● vggnet:仅使用3×3卷积层和2×2汇集层从头到尾进行叠加。

● resnet:引入跨层连接和批量规范化。

● densenet:从头到尾连接跨层。

综上所述;这些结构的发展趋势是:

●使用卷积层和小过滤器尺寸的汇集

●删除参数过多的完整连接层

●初始阶段(细节将在后面解释)

低跳跃层连接

不变性的满足接下来,我将谈谈关于卷积神经网络如何满足图像不变性的个人想法。同时,结合不变性,直观地解释了上述构造发育的重要变化。

需要理解的是为什么增加不变性可以提高网络性能。这并不是因为我们使用了更酷的处理方法,而是因为我们添加了先验知识,我们不需要从零开始学习数据,这节省了训练所需的数据量。思考提高绩效的原因必须从培训所需的数据量开始。指出满足新的不变性特征的神经网络是计算机视觉的主要研究方向。

YJango的卷积神经网络——介绍

翻译不变性可以说,空之间的局部连接和共享最初被引入卷积神经网络以满足翻译不变性。

因为空是共享的,相同的形状在不同的位置可以被等同地识别,所以没有必要学习每个位置。

旋转和视角不变性。我个人认为卷积神经网络克服这种不变性的主要手段是依靠大量的数据。没有明确添加“旋转和视图不变性”的先验特征。

可变形的卷积网络似乎增强了这种退化。

尺寸不变性不同于平移不变性,原始卷积网络没有明确考虑这一特征。

我们知道过滤器的尺寸是预先选定的,不同尺寸所寻求的形状(概念)的范围是不同的。

直观地说,如果你选择一个小范围并一步一步地组合它,你仍然可以得到一个大范围的形状。例如,3×3大小的形状可以由2×2形状组合而成。因此,形状的大小不变性对于卷积神经网络来说不是问题。恐怕zf网使第一层的步幅和过滤尺寸变小了,vggnet仍然可以通过将所有过滤尺寸设置为3×3来获得极好的结果。

YJango的卷积神经网络——介绍

然而,除了形状之外,许多概念通常是通过考虑一个像素和它周围的多个像素之间的关系而获得的。也就是说,5x5滤波器也有它的优点。同时,小尺寸堆叠需要许多过滤器一起完成。如果要抓取的形状恰好在5x5的范围内,5x5将比3x3更有效。因此,一次使用多个不同的过滤器大小来捕获具有不同范围的多个概念是一个合乎逻辑的想法,这也是事件。可以说,初始是为了尺寸不变性而引入的先验知识。

YJango的卷积神经网络——介绍

下图显示了初始阶段的结构。虽然有不同的版本,但动机是一样的:消除大小对识别结果的影响,一次使用多个不同的过滤器大小来捕获多个不同范围的概念,并让网络自己选择所需的特征。

YJango的卷积神经网络——介绍

你一定注意到了蓝色的1x1卷积,所以把它放在一边,先看看左边的结构。

在输入(可以是作为该层输入的卷积长方体输出)进来之后,通常我们可以选择直接使用像素信息(1x1卷积)来转移到下一层,选择3x3卷积,选择5x5卷积,并且选择最大汇集来对刚刚卷积的特征图进行下采样。然而,在实际的网络设计中,如何选择它需要大量的实验和经验。《盗梦空间》不需要我们选择。相反,我们给神经网络四个选项,让网络自己选择最合适的解决方案。

YJango的卷积神经网络——介绍

接下来,让我们看看右边的结构。有许多蓝色1x1回旋。这些1x1卷积的功能是使网络能够根据需要更灵活地控制数据的深度。

1x1卷积核如果卷积的输入和输出只是一个平面,那么1x1卷积核是没有意义的,它完全忽略了像素和周围其他像素之间的关系。然而,卷积的输出和输入是长方体,所以1×1卷积实际上是每个像素在不同通道上的线性组合(信息积分),并且保留了图像的原始平面结构,并且调整了深度,从而可以提升或降低尺寸。

YJango的卷积神经网络——介绍

如下图所示,如果您选择两个过滤器的1x1卷积层,数据将从原始深度3减少到2。如果使用四个过滤器,尺寸将得到改善。

这就是为什么在上述初始阶段的四个选项中混合了1x1卷积,如右侧所示。其中,绿色1x1卷积本身就是1x1卷积,所以不需要再使用1x1卷积。最大池用于移除卷积特征图中的冗余信息,因此它出现在1x1卷积之前,然后是卷积特征图。(因为没有做过实验,所以不清楚改变顺序会有什么影响。(

YJango的卷积神经网络——介绍

跳层连接前馈神经网络和卷积神经网络是逐步变换的,不允许跳层组合。但在现实中,是否存在跳层组合现象?

例如,当我们评价一个人时,大多数时候我们并没有观察到所有的人,或者我们给你的图片是不完整的。这时,我们将通过一个单一的面部特征,加上这个人的穿着和他的体形来综合判断这个人,如下图所示。这样,即使图片本身不完整,也可以很好地判断。这不同于前向神经网络的先验知识,前向神经网络允许不同层次的因素相互作用并做出综合判断。

YJango的卷积神经网络——介绍

残差网络就是具有这一特性的神经网络。每个人都喜欢用身份映射来解释为什么剩余网络更好。这里我只是提供一种从先验知识的角度来理解的方法。应该注意的是,每一层都不会形成一个清晰的面部层,正如我在这里所展示的。只有这样一种组合趋势,这不能保证神经网络学到了什么。

YJango的卷积神经网络——介绍

用下图给出一个更容易思考的例子。图1、2、3、4、5和6是第一卷积层捕获的概念。图7、8和9是由第二卷积层捕获的概念。图7、8和9是在1、2、3、4、5和6的基础上组合而成的。

YJango的卷积神经网络——介绍

然而,当我们想要检测的图形10不是简单地由图形7、8和9组成,而是由第一卷积层的图形6和第二卷积层的图形8和9组成时,不允许跨层连接的卷积网络必须使用更多的滤波器来保持由第一层捕获的图形信息。并且每次它被转移到下一层时,有必要学习用于保留前一层概念的过滤器的权重。当层数变得更深时,维护将变得越来越困难,最大池化需要删除冗余信息。

YJango的卷积神经网络——介绍

一个合理的方法是将前一层捕获的概念直接转移到下一层,而不必每次都重新学习它们。这就像在编程时构建不同大小的函数。我们保留每个函数,不再写了。提高了可重用性。

YJango的卷积神经网络——介绍

同时,由于resnet采用了跳层连接的方式。保留低级信息时,不需要最大池来删除生成的冗余信息。

《盗梦空间》中的第一个1x1卷积通道也有类似的效果,但是1x1卷积仍然有权重需要学习。此外,初始阶段使用的组合模式是连接成一个较大向量的组合模式,而resnet的组合模式是和。两种组合都有各自的优势。当需要不同的维度来组合成新的想法时,串联更为有益。而总和更适合共存判断。例如,当有油腻的头发、肥胖的身体和一年到头都不洗的牛仔裤时,这个人就会被判断为程序员。例如,双向lstm中的正向和反向序列抓取的组合通常通过添加来组合。在语音识别中,这意味着一个特征可以在正向捕获,而另一个特征可以在反向捕获。只有当两个特征同时存在时,它们才能被识别为特定的声音。

YJango的卷积神经网络——介绍

在下图的resnet中,前一层的输入跳过了卷积层的一部分,并将底层的信息传输到更高层。

在下面的densenet中,底层信息将被传输到所有后续的高层。

随着时间的推移,各种resnet、googlenet等框架在原有的基础上得到了发展和完善。但它基本上是上述概念加上其他技巧的组合。

如下图所示,添加跳转层连接的初始resnet。

但对我来说,

真正重要的是这些技能对各种不变性的满足。

雷锋的特别贡献。严禁擅自转载。详情请参考转载说明。

标题:YJango的卷积神经网络——介绍

地址:http://www.hcsbodzyz.com/hcxw/9598.html