首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【池化选择】全局最大池化和全局平均池化的实验分析

CAM) 对比全局平均池化Global average pooling (GAP) vs 全局最大池化global max pooling (GMP): 类响应图示例: 图中高亮区域就是根据label...的注意图高响应区域 具体得到的这个相应区的方法是 1) 训练主干网络得到特征图 2) 进行全局池化(图中用的GAP,也可以使用GMP) 3) 对全局池化的结果做全连接得到全连接参数 w 4)...那么具体那个好呢 先看一组实验 我们发现相比GAP,GMP在同一个类别上的top1 和top5 的损失都有所升高。...原因分析: GAP 是对全局求平均,GAP LOSS 促使网络区分辨每个类别的程度,找到所有的目标可区分区域进行预测。 GMP 是对全局求最大,只去找分数最高的那个区域。...而去忽略其他分数低的区域 因此在定位方面,GAP 比GMP要好 GAP outperforms GMP for localization.

2.1K40

对全局平均池化(GAP)过程的理解

对全局平均池化(GAP)过程的理解[通俗易懂]对学习ClassActivationMapping(CAM)原文献的时候提到的全局平均池化GAP方法做个简单的知识补充。...所谓的全局就是针对常用的平均池化而言,平均池化会有它的filtersize,比如2*2,全局平均池化就没有size,它针对的是整张featuremap.全局平均池化(GlobalaveragePooling...大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说对全局平均池化(GAP)过程的理解[通俗易懂],希望能够帮助大家进步!!!...对学习Class Activation Mapping(CAM)原文献的时候提到的全局平均池化GAP方法做个简单的知识补充。...所谓的全局就是针对常用的平均池化而言,平均池化会有它的filter size,比如 2 * 2,全局平均池化就没有size,它针对的是整张feature map.

1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    为什么使用全局平均池化层?

    大家好,又见面了,我是你们的朋友全栈君。 为什么使用全局平均池化层?...1、全连接层: 、全连接网络可以使feature map的维度减少,进而输入到softmax 、全连接层的参数超多 、会造成过拟合 、模型本身变得非常臃肿 2、全局平均池化层(global average...poolilng)[GAP]: 、直接实现了降维 、极大地减少了网络的参数 、对整个网路在结构上做正则化防止过拟合,直接赋予了每个channel实际的内别意义 、gap可能会造成收敛速度减慢...、以上推到出一个结论:不利于迁移学习,那就调正卷积出来的特征。 、 提供建议: 全局平均池化层+softmax层代替FC层,效果要好。...全局平均池化层以后也可以试一试dropout,进行正则化。无论采用何种方法,毕竟全局池化是比较火的用法,采用正则至少不用被过拟合的象限困扰。

    59910

    浅谈Java中的池化技术

    在 Java 中,池化技术应用非常广泛,常见的就有数据库连接池、线程池等,本文主讲连接池,线程池我们将在后续的博客中进行介绍。...公用池化包 Commons Pool 2 我们首先来看一下 Java 中公用的池化包 Commons Pool 2,来了解一下对象池的一般结构。...,我们首先来看一下一个池化对象在整个池子中的生命周期。...带有 evcit 字样的参数,主要是处理对象逐出的。池化对象除了初始化和销毁的时候比较昂贵,在运行时也会占用系统资源。 比如,连接池会占用多条连接,线程池会增加调度开销等。...接下来介绍了数据库连接池中速度很快的 HikariCP ,它在池化技术之上,又通过编码技巧进行了进一步的性能提升,HikariCP 是我重点研究的类库之一,我也建议你加入自己的任务清单中。

    39730

    深度学习(一)神经网络中的池化与反池化原理

    ,每经过一个2*2的区域就将这块区域 中的最大值提取出来存放。...池化有两种:最大池化和平均池化,其反池化也需要与其对应。 (1) 平均池化和反平均池化   首先还原成原来的大小,然后将池化结果中的每个值都填入其对应原始数据区域中相应位置即可。...平均池化和反平均池化的过程如下: ?...(2) 最大池化和反最大池化   要求在池化过程中记录最大激活值的坐标位置,然后在反池化时,只把池化过程中最大激活值所在位置坐标值激活, 其他的值设置为0.当然,这个过程只是一种近似。...因为在池化过程中,除了最大值的位置,其他的值也是不为0的。 最大池化和反最大池化的过程如下: ? 最后我这是一列的学习笔记,有兴趣入门深度学习的可以看看在下后面的深度学习系列的笔记。

    1.8K20

    池化层的作用

    大家好,又见面了,我是你们的朋友全栈君。 目录 1. 池化层理解 2. 池化层的作用: 3....池化层理解 池化层夹在连续的卷积层中间, 用于压缩数据和参数的量。 简而言之,如果输入是图像的话,那么池化层的最主要作用就是压缩图像。...个人理解的同图片resize方法类似(双线性插值法,邻近法),只不过池化层用的是取最大值法。 2....PCA)和计算量,防止过拟合,提高模型泛化能力 A: 特征不变性,也就是我们在图像处理中经常提到的特征的尺度不变性,池化操作就是图像的resize,平时一张狗的图像被缩小了一倍我们还能认出这是一张狗的照片...,这说明这张图像中仍保留着狗最重要的特征,我们一看就能判断图像中画的是一只狗,图像压缩时去掉的信息只是一些无关紧要的信息,而留下的信息则是具有尺度不变性的特征,是最能表达图像的特征。

    7.6K31

    PyTorch的卷积和池化

    卷积计算  input 表示输入的图像 filter 表示卷积核, 也叫做滤波器 input 经过 filter 的得到输出为最右侧的图像,该图叫做特征图 卷积的计算是将卷积核放入左上角,在局部区域间做点积...左上角的点积操作: 得到最终的特征图为: Padding  通过上面的卷积计算过程,我们发现最终的特征图比原始图像小很多,如果想要保持经过卷积后的图像大小不变, 可以在原图周围添加 padding 来实现...多通道卷积计算 实际中的图像都是多个通道组成的,即多个Input图前后贴在一起。 当输入有多个通道(Channel), 例如 RGB 三个通道, 此时要求卷积核需要拥有相同的通道数数。...每个卷积核通道与对应的输入图像的各个通道进行卷积。 将每个通道的卷积结果按位相加得到最终的特征图。...,下一节我们去了解池化层~

    14910

    基于转移学习的图像识别

    卷积神经网络(CNN)是一种用于图像分类的神经网络架构,通常包含卷积层和池化层两种类型。卷积层接受输入图像并将其抽象为简单的特征图,池化层则是为了降低特征图的维数。...因此如果我们已经找到可以正确识别狗的模型,只需要在其之上添加一层来预测狗的品种就可以了,那我们该 怎么操作呢? 为了最大程度地利用转移学习,我们需要仔细考虑转移到模型中的“学习”。...方法2:全局平均池层 全局平均池化层(GAP层)是一个池化层,通过它可以获取上一层中连接的所有节点的平均值。这是减少网络尺寸的标准CNN技术。...方法3:具有损失的全局平均池 在方法二之上,我们还希望添加退出层和密集层,以进一步减少过度拟合。...这是对VGG16 + GAP的重大改进。但是,训练和验证集损失之间的差距更大,这意味着该模型可能会更多地拟合数据,即高方差。我们之前提出了一个全连接层来进行测试。但是,看到所有模型的差异都很大。

    1.6K20

    池化的名字由何而来?

    根据前面的卷积过程,我们可以达到特征提取的作用。基本上已经判断出谁是C谁是D。底下可以再进一步做一次池化。数据库连接池记得吧?把很多数据库连接放在一个池子里,想用时挑一个来用。...这里做完卷积得到这么多数据,就像池子一样,对于这池子里的数据,我们可以继续做各种各样的操作,比如最大池化或平均池化。最大池化顾名思义就是从池子中取出最大值。...注意取最大值,不是整体取最大值,而是邻域取最大值。结果就如下图,第一个区域(只有四个数)的最大值是5,第二个区域的最大值是1。以此类推。...1.png 经历了以上两步卷积和池化以后,我们得到的结果,真是太好不过了。首先,经过卷积,也就是特征提取,我们成功的得到了结果5。这个值越大,就说明特征越突出,越能增加最后判断结果的正确性。...第二步池化,还能把不是特征的部分丢弃,起到去燥的效果,还为我们将来。。。。。。。。。。。。。。。。。。

    64320

    学界 | 新型池化层sort_pool2d实现更快更好的收敛:表现优于最大池化层(附代码实现)

    ,提出一种可实现更快更好收敛的新型池化层 sort_pool2d,表现优于最大池化层,同时解决了最大池化层无法使用来自多层激活函数信息的问题,以及反向传播只会提升最大池化的激活函数的问题。...最大池化层无法使用来自多层激活函数的信息。 反向传播只会提升最大池化的激活函数,即使其他激活函数的值可能出现错误。 本文想要设计一种新型池化层,尽可能多地解决这些问题。...因此,在非最大激活函数可用于降低损失函数时,网络只可学习使用其他值。 梯度流过上一层中的所有 4 个值(相比之下,最大池化层只有一个值)。 因此我希望基于上述原因,这一想法能够比最大池化层做的更好。...这是一个非常少见的深度学习实验,其结果与我设想的简直一模一样。 具体定义 设池化之前的层的输出为张量 T,大小为 [B, H, W, C]。...我本来还可以对不同的通道使用不同的权重,但是为了便于与最大池化进行对比,我在不同通道上使用了 4 个相同的权重。 实现细节 我在 TnsorFlow 中写了该层的代码。

    849120

    Java 中的几种线程池,你之前用对了吗

    而使用线程池的话,则可以防止这种情况发生,当然这要建立在正确合理的使用线程池的基础上,要固定线程的最大数以及等待队列的大小。...由线程池所在的线程处理该任务,比如在 main 函数中创建线程池,如果执行此策略,将有 main 线程来执行该任务 虽然并不提倡用 Executors 中的方法来创建线程池,但还是用他们来讲一下几种线程池的原理...,规定的最大线程数量,超过这个数量之后进来的任务,会放到等待队列中,如果有空闲线程,则在等待队列中获取,遵循先进先出原则。...2、newSingleThreadExecutor 建立一个只有一个线程的线程池,如果有超过一个任务进来,只有一个可以执行,其余的都会放到等待队列中,如果有空闲线程,则在等待队列中获取,遵循先进先出原则...3、newCachedThreadPool 缓存型线程池,在核心线程达到最大值之前,有任务进来就会创建新的核心线程,并加入核心线程池,即时有空闲的线程,也不会复用。

    40900

    【综述】盘点卷积神经网络中的池化操作

    最大/平均池化 最大池化就是选择图像区域中最大值作为该区域池化以后的值,反向传播的时候,梯度通过前向传播过程的最大值反向传播,其他位置梯度为0。...使用的时候,最大池化又分为重叠池化和非重叠池化,比如常见的stride=kernel size的情况属于非重叠池化,如果stride池化。...output = F.max_pool2d(input, kernel_size=2, stride=2) >>> output.shape torch.Size([4, 3, 8, 8]) >>> 平均池化就是将选择的图像区域中的平均值作为该区域池化以后的值...中值池化 与中值滤波特别相似,但是用的非常少,中值池化也具有学习边缘和纹理结构的特性,抗噪声能力比较强。 4. 组合池化 组合池化则是同时利用最大值池化与均值池化两种的优势而引申的一种池化策略。...第二个角度是从Attention的角度考虑,这一点启发自CSDN@小楞(链接在参考文献中),他在文章中这样讲: 出现检测效果提升的原因:通过spp模块实现局部特征和全局特征(所以空间金字塔池化结构的最大的池化核要尽可能的接近等于需要池化的

    1.5K20

    【综述】盘点卷积神经网络中的池化操作

    最大/平均池化 最大池化就是选择图像区域中最大值作为该区域池化以后的值,反向传播的时候,梯度通过前向传播过程的最大值反向传播,其他位置梯度为0。...使用的时候,最大池化又分为重叠池化和非重叠池化,比如常见的stride=kernel size的情况属于非重叠池化,如果stride池化。...output = F.max_pool2d(input, kernel_size=2, stride=2) >>> output.shape torch.Size([4, 3, 8, 8]) >>> 平均池化就是将选择的图像区域中的平均值作为该区域池化以后的值...中值池化 与中值滤波特别相似,但是用的非常少,中值池化也具有学习边缘和纹理结构的特性,抗噪声能力比较强。 4. 组合池化 组合池化则是同时利用最大值池化与均值池化两种的优势而引申的一种池化策略。...第二个角度是从Attention的角度考虑,这一点启发自CSDN@小楞(链接在参考文献中),他在文章中这样讲: 出现检测效果提升的原因:通过spp模块实现局部特征和全局特征(所以空间金字塔池化结构的最大的池化核要尽可能的接近等于需要池化的

    1.9K31

    反卷积,上采样,上池化的理解

    向AI转型的程序员都关注了这个号 机器学习AI算法工程   公众号:datayx 上采样与上池化 图示理解,使用三张图进行说明:  图(a)表示UnPooling的过程,特点是在Maxpooling...的时候保留最大值的位置信息,之后在unPooling阶段使用该信息扩充Feature Map,除最大值位置以外,其余补0。...Unpooling是在CNN中常用的来表示max pooling的逆操作。 鉴于max pooling不可逆,因此使用近似的方式来反转得到max pooling操作之前的原始情况。...在FCN、U-net等网络结构中,我们见识到了上采样这个东西。 图(c)为反卷积的过程,反卷积是卷积的逆过程,又称作转置卷积。...附录 反卷积(Deconvolution)、上采样(UNSampling)与上池化(UnPooling)、可视化代码: https://github.com/heuritech/convnets-keras

    1.1K30

    我们在外包资源池化管理走过的弯路

    而在不同测试团队的具体实施中,又演化出不同的实施方案。本文记录手机QQ浏览器测试团队在“外包资源池管理”方案上的几次尝试。有沉痛的教训,也有深度的思考。...这半年的外包工作饱和度明显比之前更高。这样就不可能有闲置人力可以参与到资源池建设中。 从以上3点分析,我们一度悲观的认为,外包资源池管理不适合我们团队。 但是困难不是退缩的理由。...如果先入为主地认为外包资源池就应该是简单任务、任务标准化,不能实际情况调整策略,只会一条路走到黑。 而事实上,对于不同的情况,需要选择不同的方案。...决定采用Android资源池方案。对任务和人都进行梯队划分,所有任务都进资源池,最大限度地发挥接口人的作用。 [nd9uXK5.png] 方案描述:这个方案有2个要点。...一是全部人、全部任务进资源池,这样才能最大限度地调度资源;二是充分利用外包接口人角色,把任务分发、人员培养的职责都放权给他,让他把资源池的事务统统管理起来。正式接口人只负责提考核指标和协调资源。

    3.7K01

    SoftPool:基于Softmax加权的池化操作 | 2021新文

    目前的池化方法大多基于最大池化或平均池化,虽然计算很快内存占用少,但其有很大的提升空间,主要在于更好地维持特征图的重要信息。 ?  ...SoftPool能够很好地参照区域内的激活值分布,服从一定的概率分布,而基于最大池化和平均池化的方法的输出则是无分布的。...而论文通过可视化发现,相对于其它池化操作,SoftPool能够很好的保留特征表达,算是最大池化和平均池化的折中。...在实现时,先对整图计算 ,然后将得到的图特征图与原图进行element-wise相乘,然后进行平均池化。 ?   多种池化方法的对比。 ?   多个主干网络上的分类准确率对比。...Conclusion ----   SoftPool使用softmax进行加权池化,能够保持特征的表达性并且是可微操作。从性能和准确率来看,SoftPool是目前的常规池化方法的一个不错的替代品。

    1.2K20

    SoftPool:基于Softmax加权的池化操作 | 2021新文

    目前的池化方法大多基于最大池化或平均池化,虽然计算很快内存占用少,但其有很大的提升空间,主要在于更好地维持特征图的重要信息。...,而基于最大池化和平均池化的方法的输出则是无分布的。...而论文通过可视化发现,相对于其它池化操作,SoftPool能够很好的保留特征表达,算是最大池化和平均池化的折中。...在实现时,先对整图计算$e^x$,然后将得到的图特征图与原图进行element-wise相乘,然后进行平均池化。...Conclusion ***   SoftPool使用softmax进行加权池化,能够保持特征的表达性并且是可微操作。从性能和准确率来看,SoftPool是目前的常规池化方法的一个不错的替代品。

    61740
    领券