3、池化与反池化

为了有效地减少计算量,CNN 使用的一个有效工具被称为 “池化 (Pooling)”。池化就是将输入图像进行缩小,减少像素信息,只保留重要信息

3.1 三种池化操作

池化的定义比较简单,通常情况下,池化区域是 2*2 大小,然后按一定规则转换成相应的值,例如取这个池化区域内的最大值、平均值等,以这个值作为结果的像素值。池化最直观的作用便是降维,常见的池化有最大池化、平均池化和随机池化。池化层不需要训练参数

  • 最大池化(max-pooling)

    • 定义:即对局部的值取最大

    • 作用:可以获取局部信息,可以更好保留纹理上的特征;

    • 使用:如果不用观察物体在图片中的具体位置,只关心其是否出现,则使用最大池化效果比较好。

  • 平均池化(mean-pooling)

    • 定义:对局部的值取平均

    • 作用:平均池化往往能保留整体数据的特征,能凸出背景的信息。

  • 随机池化

    • 定义:根据概率对局部的值进行采样,采样结果便是池化结果;

    • 作用:随机池化中元素值大的被选中的概率也大,但不是像最大池化总是取最大值。随机池化一方面最大化地保证了Max值的取值,一方面又确保了不会完全是max值起作用,造成过度失真。除此之外,其可以在一定程度上避免过拟合。

概念非常容易理解,其示意图如下所示:

3.2 重叠池化

一般在CNN中使用的池化都是不重叠的,但是池化也可以重叠,重叠池化和卷积操作类似,可以定义步长等参数,其和卷积的不同在于:卷积操作将窗口元素和卷积核求内积,而池化操作求最大值/平均值等,窗口的滑动等原理完全相同。

3.3 反池化

池化操作中最常见的最大池化和平均池化,因此最常见的反池化操作有反最大池化和反平均池化,其示意图如下:

反最大池化需要记录池化时最大值的位置,反平均池化不需要此过程。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐