新加坡联合早报中文网即时报道亚洲和国际的评论、商业、体育、生活、科技与多媒体新闻,从世界各个维度报道世界经济新闻,时政新闻,突发新闻等。

当前位置:主页 > 新闻 > CNN中的maxpool到底是什么原理?

CNN中的maxpool到底是什么原理?

来源:联合早报中文网作者:邵湖心更新时间:2020-09-01 22:44:02阅读:

本篇文章3912字,读完约10分钟

雷锋。(公开号码:雷锋。新闻:这篇文章是自我意识到的问题。“在cnn中,maxpool的原则是什么?为什么取最大值?取最大值的原则是什么?”谢谢你。”在杨强和小白菜的回答下。雷锋。网站已被授权转载。

让我们先详细谈谈最大池。

最大池

卷积后将有一个池操作,虽然还有其他操作,如平均池,这里只提到最大池。

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

图像来源:cs231n

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

图像来源:cs231n

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

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

CNN中的maxpool到底是什么原理?

最大化汇集还具有“选择句子”的功能。如果有两个节点,在某些输入情况下,第一个节点将是最大的,那么网络将只在这个节点上循环信息;当其他输入将使第二个节点的值最大时,网络将转向该节点的分支。

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

让我们对其他的池化方法做一个简单的安排(我认为以前很好很流行的池化方法)。

总和汇集

基于汇集的中间层特征表示方法是指将中间层中任意通道的特征图的所有像素值相加(例如vggnet16,pool5有512个通道),使每个通道得到一个实值,n个通道最终得到一个长度为n的向量,这就是汇集的结果。

ave pooling

平均池是平均池,本质上与总和池相同,只是像素值相加,然后除以要素图的大小。作者认为ave pooling可以带来一定的平滑度,减少图像大小变化的干扰。想象一幅224224的图像。在将其调整到448448后,我们使用总和池和平均池从这两幅图像中提取特征。我们的猜测是,总和池计算的余弦相似度应该小于平均池计算的余弦相似度,也就是说,平均池应该略好于总和池。

CNN中的maxpool到底是什么原理?

最大池

最大汇集意味着对于每个通道(假设有n个通道),通道的特征图的像素值被选择作为通道的代表,从而获得n维向量表示。作者在《烧瓶-喀拉斯-美国有线电视新闻网-图像检索》中采用了最大池。

图像来源:第6天基于内容的图像检索

在作者所做的实验中,最大池略好于总和池、平均池和最大池。然而,通过这三种方式的汇集来改进对象检索仍然是有限的。

拖把池

Mop池起源于文章多尺度无序池的深度主动激活特性,其中之一是云超功。在此之前,当他从事散列,他读了他的一些论文,其中itq是最有代表性的一个,作者也写了一篇笔记论文读:迭代量化。mop汇集的基本思想是多尺度和vlad(Vlad的原理可以参考作者之前写的博文图像检索:bof、Vlad、fv三剑客),其具体汇集步骤如下:

CNN中的maxpool到底是什么原理?

来源:多规模无订单深度自愿激活功能池

cnn激活(mop-cnn)的多尺度无顺序池概述。我们提出的特征是来自三个级别的特征向量的连接:(a)级别1,对应于整个256256图像的4096维cnn激活;(b)级别2,通过从128128个补丁中提取激活,并用100个中心的码本对它们进行符码合并而形成;(c)3级,以与2级相同的方式形成,但有64*64个斑块。

CNN中的maxpool到底是什么原理?

具体来说,在l=1的尺度下,即全图,它被直接调整到256*256的大小,然后被发送到网络以获得第七个全连通层的4096维特征;当l=2时,使用大小为128*128(步长为32)的窗口来滑动窗口。由于网络的图像输入的最小尺寸是256*256,作者将其上采样到256,256,从而可以获得许多局部特征,然后通过vlad编码,其中聚类中心被设置为100,4096维特征被减少到500维特征,从而获得5000。l = 3的处理过程与l=2的处理过程相同,除了窗口尺寸被编程为64*64。

CNN中的maxpool到底是什么原理?

通过实验,作者证明了通过拖把池获得的特征的不变性。基于这种拖把汇集,作者没有做具体的实验,所以实验结果只能参考论文本身。

乌鸦池

关于对象检索,当使用cnn来提取特征时,我们想要的是在有对象的区域中提取特征,就像当提取局部特征时,例如sift特征结构bow、vlad和fv向量,mser和显著性可以用于将sift特征限制在有对象的区域。同样基于这一思想,当使用cnn进行对象检索时,我们有两种方法来细化对象检索的特征:一种是先进行对象检测,然后从检测到的对象区域中提取cnn特征;另一种方法是通过一些权重自适应的方法来增加有物体的区域的权重,减少没有物体的区域的权重。乌鸦池(聚合深度协作特征的跨维加权)是后一种方法。通过构造空间权重和通道权重,Crow Pooling可以在一定程度上增加感兴趣区域的权重,降低非对象区域的权重。其具体特征表示构造过程如下图所示:

CNN中的maxpool到底是什么原理?

其核心过程是空间权重和通道权重。具体来说,当计算空间权重时,它直接将每个通道的特征图相加,并且该空间权重实际上可以被理解为显著性图。众所周知,通过卷积滤波,反应强烈的地方通常是物体的边缘等。因此,在对多个通道进行相加和求和后,非零且响应大的区域通常是物体所在的区域,因此我们可以将它们作为特征图的权重。通道权重借用了idf权重的思想,即对于一些高频词,如“the”,这些词出现得非常频繁,但它们对信息的表达用处不大,即它们包含的信息太少,因此在bow模型中,这些终止词需要减少它们的权重。借用渠道权重的计算过程,我们可以想象这样的情况。例如,某个通道的特征图的每个像素值都是非零的并且相对较大。从视觉角度来看,白色区域占据了整个要素地图。我们可以认为,该通道的特征图不利于我们定位目标区域,因此我们需要降低该通道的权重。对于白色区域占特征地图一小部分的通道,我们认为它包含了很多定位物体的信息,所以我们应该增加这个通道的权重。这一现象与idf特别一致,因此作者使用idf作为权重来定义通道权重。

CNN中的maxpool到底是什么原理?

一般来说,这种空间权重和通道权重的设计是非常巧妙的,但是这种汇集方法只能在一定程度上适合感兴趣的区域。我们可以看看空间权重*通道权重的热图:

从上面可以看出,最重要的部分主要在塔尖,这可以看作是区分区域。当然,我们也可以看到在图像的其他区域有一些相对较大的权重分布,这是我们不想要的。当然,从作者对其他一些图片的可视化来看,这种乌鸦池方法并不总是成功的,也有一些图片的重要区域不是图像中对象的主体。但是,从跑出千万级画廊的结果来看,鱼龙混杂仍然可以取得不错的效果。

CNN中的maxpool到底是什么原理?

rmac池

Rmac pooling来自CNN激活的部分对象检索和整体最大池,这三部作品是hervé jégou(和matthijs douze是好朋友)。在本文中,作者提出了一种rmac池化的池化方法,其主要思想类似于上面提到的mop池化,它使用一种改变窗口的方法来滑动窗口,除了当滑动窗口时,它不是在图像上滑动窗口,而是在特征图上滑动窗口(这大大加快了特征提取的速度)。此外,在合并局部要素时,以vld的方式合并mop池,而rmac池更简单(简单并不意味着效果不好),并且直接添加局部要素以获得最终的全局要素。具体的滑动窗口模式如下图所示:

CNN中的maxpool到底是什么原理?

图像来源:第6天基于内容的图像检索

该图显示了三种窗口大小,图中的“x”代表窗口的中心。对于每个窗口的特征图,本文采用了最大池法。当l=3时,即使用图中所示的三种窗口大小,我们可以得到20个局部特征。此外,我们可以通过对整个地图进行最大化合并来获得全局特征,因此对于一幅图像,我们可以获得21个局部特征(如果所获得的全局特征也被认为是局部的话),并且这21个局部特征被直接相加并求和以获得最终的全局特征。本文比较了滑动窗口数量对地图的影响。从l=1到l=3,map逐渐改善,但当l=4时,map不再改善。实际上,rmac pooling中设计的窗口的功能是定位对象位置(crow pooling通过权重图定位对象位置)。如上图所示,窗口之间有一定的重叠,最后形成全局特征时,采用求和相加的方式。因此,我们可以看到,这些重叠的领域可以被视为给予更大的权重。

CNN中的maxpool到底是什么原理?

上面提到的20个局部特征和1个全局特征被直接组合和添加。当然,我们可以添加这20个局部特征,然后将它们与剩余的全局特征串联起来。在实际实验中,发现串联方式比以前的方式高2%-3%。当在100万规模的画廊上测试时,Rmac池可以获得良好的结果。与鱼龙混杂相比,它们之间没有什么区别。

CNN中的maxpool到底是什么原理?

以上总结了六种不同的池化方法,但仍有许多池化方法无法涵盖。在实际应用中,我推荐rmac池和crow池,主要是因为这两种池方法效果更好,计算复杂度更低。

雷锋文章版权所有。严禁擅自转载。详情请参考转载说明。

标题:CNN中的maxpool到底是什么原理?

地址:http://www.6st8.com/zbxw/4974.html

免责声明:联合早报中文网从世界各个维度报道世界经济新闻,时政新闻,突发新闻等,本篇的部分内容来自于网络,不为其真实性负责,只为传播网络信息为目的,非商业用途,如有异议请及时联系btr2018@163.com,联合早报中文网的小编将予以删除。

返回顶部