当前位置:首页 » 网络连接 » 全连接网络感受野
扩展阅读
免费移动网络可以装几个 2025-09-26 13:19:39

全连接网络感受野

发布时间: 2023-02-24 16:15:28

① 卷积神经网络算法是什么

一维构筑、二维构筑、全卷积构筑。

卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一。

卷积神经网络具有表征学习(representation learning)能力,能够按其阶层结构对输入信息进行平移不变分类(shift-invariant classification),因此也被称为“平移不变人工神经网络(Shift-Invariant Artificial Neural Networks, SIANN)”。

卷积神经网络的连接性:

卷积神经网络中卷积层间的连接被称为稀疏连接(sparse connection),即相比于前馈神经网络中的全连接,卷积层中的神经元仅与其相邻层的部分,而非全部神经元相连。具体地,卷积神经网络第l层特征图中的任意一个像素(神经元)都仅是l-1层中卷积核所定义的感受野内的像素的线性组合。

卷积神经网络的稀疏连接具有正则化的效果,提高了网络结构的稳定性和泛化能力,避免过度拟合,同时,稀疏连接减少了权重参数的总量,有利于神经网络的快速学习,和在计算时减少内存开销。

卷积神经网络中特征图同一通道内的所有像素共享一组卷积核权重系数,该性质被称为权重共享(weight sharing)。权重共享将卷积神经网络和其它包含局部连接结构的神经网络相区分,后者虽然使用了稀疏连接,但不同连接的权重是不同的。权重共享和稀疏连接一样,减少了卷积神经网络的参数总量,并具有正则化的效果。

在全连接网络视角下,卷积神经网络的稀疏连接和权重共享可以被视为两个无限强的先验(pirior),即一个隐含层神经元在其感受野之外的所有权重系数恒为0(但感受野可以在空间移动);且在一个通道内,所有神经元的权重系数相同。

② 看完还不懂卷积神经网络“感受野”那你来找我

      “感受野”的概念来源于生物神经科学,比如当我们的“感受器”,比如我们的手受到刺激之后,会将刺激传输至中枢神经,但是并不是一个神经元就能够接受整个皮肤的刺激,因为皮肤面积大,一个神经元可想而知肯定接受不完,而且我们同时可以感受到身上皮肤在不同的地方,如手、脚,的不同的刺激,如痛、痒等。这说明皮肤感受器是由很多不同的神经元控制的,那么每一个神经元所能够反映的那块感受器的区域就称之为“感受野”,感受野即每一个神经元所支配的区域,也可以说这个神经元的活动受到那一块区域的影响。

在卷积神经网络中,整个卷积运算的过程正好和上面的皮肤刺激过程类似,我们可以将原始图像对应看成感受器(皮肤),将最终的输出看成是做出反应的那个神经元。最终输出到底是什么状态(神经元的状态)所受到的初始图像哪一块区域的影响(受到那一块皮肤的刺激)不正是上面所描述的过程吗?于是我们给出感受野的定义如下:

卷积神经网络每一层输出的特征图(feature map)上的像素点在原始图像上映射的区域大小;通俗点说,就是图像的最终输出的每一个特征(每一个像素)到底受到原始图像哪一部分的影响。

为了更好地说明整个卷积神经网络的工作过程,下面以一个例子说明,原始图像的大小为10x10,一共设计了5个网络层,前面4个是卷积层,卷积核的大小为3x3,最后一个是池化层,大小为2x2,为了较简单的说明,本次所有的步幅stride均为1.

注意:感受野在计算的时候不考虑“边界填充”,因为填充的边界已经不是原始图像本身的内容了,感受野描述的是输出特征到原始图像的映射关系,故而不考虑padding 。实际建模过程中可能需要填充边界,原理一样,只是计算稍微复杂点。

从上面可以看出:第一层网络输出的图像中,输出结果为8x8,output1输出的每一个特征(即每一个像素)受到原始图像的3x3区域内的影响,故而第一层的感受野为3,用字母表示为

                          RF1=3   (每一个像素值与原始图像的3x3区域有关)

从上图可以看出,经历两次卷积运算之后,最终的输出图像为6x6,output2输出的每一个特征(即每一个像素)受到output1的范围影响为3x3,而output1中的这个3x3又收到原始图像的5x5的范围的影响,故而第二层的感受野为5,即

                                  RF2=5   (每一个像素值与原始图像的5x5区域有关)

从上图可以看出,经历三次卷积运算之后,最终的输出图像为4x4,output3输出的每一个特征(即每一个像素)受到output2的范围影响为3x3,而output2中的这个3x3又受到output1的5x5的范围的影响,而output1中的这个5x5又受到原始图像的7x7的范围的影响,故而第三层的感受野为7,即

                           RF3=7   (每一个像素值与原始图像的7x7区域有关)

从上图可以看出,经历四次卷积运算之后,最终的输出图像为2x2,output4输出的每一个特征(即每一个像素)受到output3的范围影响为3x3,而output3中的这个3x3又受到output2的5x5的范围的影响,而output2中的这个5x5又受到output1的7x7的范围的影响,而output1中的这个7x7又受到原始图形的9x9的范围的影响,故而第四层的感受野为9,即

                           RF4=9   (每一个像素值与原始图像的9x9区域有关)

从上图可以看出,经历四次卷积运算和一次池化运算之后,最终的输出图像为1x1,output5输出的每一个特征(即每一个像素)受到output4的范围影响为2x2,而output4中的这个2x2又受到output3的4x4的范围的影响,而output3中的这个4x4又受到output2的6x6的范围的影响,而output2中的这个6x6受到output1的8x8的范围的影响,而output1中的这个8x8受到原始图像的10x10的范围的影响,故而第五层的感受野为10,即

                           RF5=10  (每一个像素值与原始图像的10x10区域有关)

从上面的过程可以看出,感受野的推导是一个递推的过程,下面将展示这一过程。

RF1=3            k1(第一层的感受野,永远等于第一个卷积核的尺寸大小)k表示第几个卷积层

RF2=5            k1 + (k2-1)                                                            RF1+ (k2-1)

RF3=7            k1 + (k2-1) + (k3-1)                                            RF2+ (k3-1)

RF4=9            k1 + (k2-1) + (k3-1)   + (k4-1)                             RF3+ (k4-1)

RF4=10          k1 + (k2-1) + (k3-1)   + (k4-1)    + (k5-1)             RF4+ (k5-1)

但是上面的所有步长均为 1 ,如果每一次卷积运算的步长 stride 不为1呢,同理,这里直接给出递推公式:

其中stride_n表示的是第n次卷积的移动步幅stride。

求解过程是从RF1开始的。

③ 论文笔记-卷积神经网络中的感受野

感受野(receptive field或者field of view)是卷积神经网络中的一个基本概念。与全连接层中每个输出值都与全部输入特征值有关不同的是,卷积层的一个输出值只与一部分的输入特征值有关。输入特征值中与输出特征值有关的部分就是它的感受野。
对于处于中心位置的特征值,对于输出的影响会更大,根据实验结果在一个接受野的影响分布是高斯分布。由此也引入了一个 有效感受野 的概念,因为高斯分布在中心位置强度更高,然后逐渐向周围递减。

我们想用数学的方法来描述一个接收野中的每个输入像素对网络上一个单元层的输出的影响程度,并研究这种影响是如何在输出单元的接收野内分布的。为了简化符号,我们只考虑每层上的一个信道,但是对于具有更多输入和输出的卷积层,可以很容易地得到类似的结果通道。
假设每层上的像素用(i,j)索引,其中心位于(0,0)。表示第层的第(i,j)个像素为 ,其中 作为网络的输入, 作为第n层的输出。我们要测量每个 对 贡献了多少。我们将这个中央输出单元的有效感受野(ERF)定义为包含任何输入像素且对其影响不可忽略的区域单位。
本文采用偏导数 ,j来度量 随 有多大的变化;因此,它是 相对于 重要性的自然度量。然而,这种度量不仅取决于网络的权值,而且在大多数情况下也依赖于输入,因此我们的大多数结果都是期望值大于输入分布。
偏导数 可以用反向传播法计算。在标准设置中,反向传播传播相对于某个损耗函数的误差梯度。假设我们有一个任意的损失函数l,根据链式规则,我们有
我们可以设置误差梯度 和 ,然后将这个梯度从那里传播回网络。得到的 ,相当于期望的partial{y_{0,0}}}{partial {x^0_{i,j}}。这里我们使用无显式损失函数的反向传播过程,并且该过程可以用标准神经网络轻松实现工具。
在下面我们首先考虑线性网络,其中这个导数不依赖于输入,而纯粹是网络权重和(i,j),它清楚地显示了感受野中像素的影响是如何分布的。然后我们继续考虑更现代的架构设计,并讨论非线性激活、dropout、子采样、空洞卷积和跳跃连接对ERF的影响。
2.1最简单的情况:权值都等于1的卷积层
考虑使用k×k卷积核的步长为1的卷积层的情况,每层一个单通道,无非线性,叠加成一个深线性CNN。在这个分析中,我们忽略了所有层上的偏差。我们首先分析权值都等于1的卷积核。(推理过程公式好多,看原文吧……)

在本节中,我们将实证研究各种深层CNN架构的ERF。我们首先使用人工构造的CNN模型来验证我们分析中的理论结果。然后,我们提出了在实际数据集上训练深层cnn时ERF如何变化的观察结果。对于所有ERF研究,我们在输出平面的中心放置一个梯度信号1,在其他任何地方放置0,然后通过网络反向传播该梯度,得到输入的梯度。
3.1验证理论结果
我们首先在人工构建的CNN中验证我们的理论结果。为了计算ERF我们使用随机输入,对于所有随机权重网络,我们进行适当的随机初始化。在本节中,我们验证以下内容结果:

ERF是高斯分布的 。如图所示在图1中,我们可以观察到均匀加权卷积核和随机加权,没有非线性激活卷积核的完美高斯形状,以及随机加权非线性激活的卷积核的近似高斯形状。加上ReLU非线性使得分布的高斯性变小,因为ERF的分布也取决于输入。另一个原因是ReLU单元的一半输入输出正好为零,而且很容易为输出平面上的中心像素设置零输出,这意味着感受野的路径无法到达输出,因此梯度都为零。在这里,ERF在不同的传输种子下平均运行20次。下图显示了具有20层随机权值、具有不同非线性的网络的ERF。在这里,结果是不同的随机权重以及不同的随机输入平均运行的100次的结果。在这种情况下,感受野更像高斯分布。

绝对增长和 相对收缩 。图2中,我们给出了ERF尺寸的改变和ERF相对于理论RF的比例随卷积层数的变化。ERF大小的最佳拟合线在对数域的斜率为0.56,而ERF比值的拟合线斜率为-0.43。这表明ERF大小对于 呈线性增长,ERF比率对于 呈线性缩小。注意这里我们使用2个标准偏差作为ERF大小的测量值,即任何大于中心点1−95.45%的像素都被视为ERF。ERF大小由ERF中像素数目的平方根表示,而理论RF大小是平方的边长,在该边长中,所有像素对输出像素的影响都是非零的,无论多么小。所有实验是在超过20次的结果上平均得到的。

3.2在训练过程中ERF是如何演变的
在这一部分中,我们将研究分类CNN和语义分割CNN最顶层的单元ERF在训练过程中是如何演变的。对于这两个任务,我们采用了 ResNet架构,它广泛地使用了skip-connection。分析表明,该网络的ERF应明显小于理论感受野。这是我们最初观察到的。有趣的是,随着网络的学习,ERF变得更大,并且在训练结束时,ERF明显大于初始ERF。
对于分类任务,我们在CIFAR-10数据集上训练了一个包含17个残差块的ResNet。在训练结束时,该网络的测试准确率达到89%。请注意,在这个实验中,我们没有使用池或降采样,而是专门关注具有跳过连接的体系结构。网络的精确度虽然不是最先进的,但仍然相当高。在图3中,我们显示了在训练开始时(随机初始化权重)和训练结束时,当达到最佳验证精度时,32×32图像空间上的有效感受野。请注意,我们网络的理论接收场实际上是74×74,大于图像大小,但是ERF仍然可以完全填充图像。比较训练前后的结果,我们发现有效感受野有所增加很明显。
对于语义分割任务利用CamVid数据集进行城市场景分割。我们训练了一个“前端”模型,它是一个纯粹的卷积网络,它预测输出的分辨率略低。该网络与VGG网络在许多以前的着作中所起的作用相同。我们训练了一个ResNet,16个残差块交错,每个子采样操作的因子为2。由于这些子采样操作,输出是输入大小的1/16。对于这个模型,顶层卷积层单元的理论感受野为505×505。然而,如图3所示,在训练开始时,ERF只得到直径为100的部分。我们再次观察到,在训练过程中,ERF的尺寸增大,最后达到直径约为150的直径。

上述分析表明ERF只占理论接收野的一小部分,这对于需要较大接收能力的任务是不可取的领域。
新的初始化。 一增加有效感受野的简单方法是控制初始权重。我们提出了一种新的随机权值初始化方案,使得卷积核中心的权值具有较小的尺度,而外部的权值较大,这使得中心的集中度向外围扩散。实际上,我们可以用任何初始化方法对网络进行初始化,然后根据中心低标度、外标度高的分布来调整权重。
在极端情况下,我们可以优化w(m)以使ERF大小最大化,或者等价地使等式(前面推公式部分里的公式)中的方差最大化。解决这个优化问题的结果是在卷积核的4个角上平均地设置权重,而其他地方都是0。但是,使用此解决方案进行随机权重初始化过于激进,并且将大量权重保留为0会使学习变慢。这种想法的温和版本通常是有效的更好。
我们用这种初始化方法训练了一个用于CIFAR-10分类任务的CNN,使用了几种随机种子。在一些情况下,与更标准的初始化相比,我们的训练速度提高了30%。但总的来说,这种方法的好处并不总是如此很重要。
我们请注意,无论我们如何改变w(m),有效感受野仍然是高斯分布的,因此上述建议只解决了问题部分。
改变构架。 一个潜在的更好的方法是对cnn进行架构上的更改,这可能会改变在更基本的方面。例如,我们不用将CNN中的每个单元连接到本地矩形卷积窗口,而是可以使用相同的连接数将每个单元稀疏地连接到下层的一个较大区域。空洞卷积属于这一类,但我们可以进一步推进,并使用不类似网格的稀疏连接。

与生物神经的联系网络。 在我们的分析表明,深部CNN中的有效接收场实际上比我们以前想象的要慢得多。这表明即使经过许多卷积层,仍然保留了许多局部信息。这一发现与深层生物网络中一些长期持有的相关概念相矛盾。哺乳动物视觉系统的一个普遍特征是分为“什么”和“哪里”路径。沿着what或where路径进行,连通性的性质逐渐改变:感受野大小增加,空间组织变得松散,直到没有明显的视网膜色素组织;视网膜脱离意味着单个神经元对视野中的面部等物体做出反应。然而,如果ERF比RF小,这表明表示可以保留位置信息,同时也提出了一个有趣的问题,即这些区域在发育过程中的大小变化。
我们的分析的第二个相关影响是,它表明卷积网络可能会自动地产生一种中心凹表现形式。人类视网膜中央凹只在中心像素附近提取高分辨率信息。等分辨率的子场的排列使得它们的大小随着距中心的距离而增大固定。在视网膜的外围,低分辨率的信息是从图像的较大区域提取的。一些神经网络已经明确地构造了这种形式的表示。然而,由于卷积网络形成高斯感受野,其底层表示自然会有这种感受野特性。
与之前研究的联系。 虽然CNN中的感受野尚未得到深入研究,一些人在计算方差如何通过网络演化方面进行了类似的分析。他们开发了一个很好的卷积层初始化方案,遵循的原则是方差在经过网络。
研究人员为了理解神经网络是如何工作的,我们还利用了可视化技术。[14] 展示了使用自然图像先验的重要性,以及卷积层的激活将代表什么。[22]使用反褶积网络来显示图像中像素点与被激活神经元之间的关系。[23]对感受野进行了实证研究,并将其作为定位的提示。也有可视化研究使用梯度上升技术[4]产生有趣的图像,如[15]。这些都集中在单位激活或特征图上,而不是我们在这里研究的有效感受野。

本文对CNN的感受野进行了细致的研究,并对有效感受野大小进行了初步探讨。特别地,我们已经证明了在感受野内的影响分布是渐近高斯的,有效感受野只占整个理论感受野的一小部分。实证结果与我们建立的理论相呼应。我们认为这只是有效感受野研究的一个开始,它为深入了解CNN提供了一个新的视角。在未来的研究中,我们希望更多地研究在实践中影响有效感受野的因素以及如何更好地控制这些因素。

④ Attention(注意力)机制

Attention(注意力)机制其实来源于人类的认识认知能力。比如当人们观察一个场景或处理一件事情时,人们往往会关注场景的显着性物体,处理事情时则希望抓住主要矛盾。注意力机制使得人类能够关注事物的重要部分,忽略次要部分,更高效的处理所面临的各种事情。

注意力机制在NLP领域被真正的发扬光大,其具有参数少、速度快、效果好的特点,如2018年的BERT、GPT 领跑各项 NLP 任务效果。由此在此领域,transformer和attention结构受到了极大的重视。

第二步:使用权重对Value进行加权求和从而得到Attention Value。

注意力是一种机制,或者方法论,并没有严格的数学定义。比如,传统的局部图像特征提取、显着性检测、滑动窗口方法等都可以看作一种注意力机制。在神经网络中,注意力模块通常是一个额外的神经网络,能够硬性选择输入的某些部分,或者给输入的不同部分分配不同的权重。

根据权重在特征空间和通道上的应用方式不同,主要可分为

其增加了一个通道注意力模块,学习每个通道的权重,通过抑制无关特征提升卷积特征的表示性能。SENet通过Squeeze模块和Exciation模块实现所述功能,首先通过Squeeze模块对卷积特征进行进行压缩,即在通道维度上执行全局池化操作,在SENet中采用的是全局平均池化,作者提到该操作能够使得靠近数据输入的特征也可以具有全局感受野,这一点在很多的任务中是非常有用的。然后是通过全连接网络进行Exciation操作,作者在全连接网络中降维操作的目的是一方面降低了网络计算量,一方面增加了网络的非线性能力。最后将得到通道attention应用到原始卷积特征上,即通过乘法加权的方式乘到先前的特征上,从而提升重要特征,抑制不重要特征。

从图中可以看出,首先将输入张量进行降维到C通道,与SENet不同的是采用二阶pool的方式,计算得到C*C的协方差矩阵,这种计算方式引入了通道之间的相互关系,然后进行线性卷积和非线性激活的两个连续运算,得到通道注意力。

除此之外,还有很多的注意力机制相关的研究,比如残差注意力机制,多尺度注意力机制,递归注意力机制等。