深度学习中的池化详解 | Pooling in Deep learning

本文由多篇博客总结整理而成,参考博客见文末,侵删。

 

目录

首先,什么是CNN

什么是Pooling

pooling的定义:

pooling为什么可以降低维度呢?

pooling有哪些操作方式

最大池化 :

平均池化

max pooling和 mean pooling效果比较

pooling 选择与实际应用

池化在CNN中的作用

其他非一般池化方法

重叠池化

空间金字塔池化: SPP-NET

参考文献

参考博客



  • 首先,什么是CNN

--------------------------------------------------------

卷积神经网络关键在于”卷积”二字, 在通信中, 卷积是对输入信号经过持续的转换, 持续输出另一组信号的过程.

convolution_of_box_signal_with_itself2
图1 FROM wiki

解释上图:通过卷积生成新函数。输入是固定的蓝色方框和红色框,红色框滑动作为滑动窗口,输出的黑线,代表的是滑动窗口与蓝色框的重叠面积。 

------------------------------------------------------------

CNN对输入的处理与上面类似,在输入上利用块单位(n*n)来提取特征,使得高维图片降维。

untitled
图2

上图中,通过卷积核\begin{bmatrix} 1& 0&1 \\ 0& 1& 0\\ 1&0 &1 \end{bmatrix}的卷积操作,最终得到降维后的图片(特征)。

--------------------------

或者从神经网络连接结构的角度来展示。

untitled
图3

在上图中,CNN的hidden layer (绿色字母A)跟input layers(蓝色圆圈)不再是全连接,而是局部区域成块连接。一个hidden单元照顾一部分的input units。

我们也可以加入更多的hidden layer (紫色字母B),聚集出更大的块,以学到与ground truth更为相似的结果。

untitled
图4

但由于加入了更多的单元,会导致整个网络隐藏层参数增多(每个相邻的输入x,都在上层生成了一个大块),训练时易造成过拟合的状况。所以为了减少参数的复杂度,不再严格要求相邻块至少聚合到一个上层块,可以将下层块分一些区域,在这些区域聚合--这是Pooling的直观作用。

untitled
图5

红色的max,即为max pooling池化层,把小的块分割成一个个池子,也就是大块,具体如下所示。

untitled
图6

可以看一下2D图像上有无pooling的效果:

untitled
图7
untitled
图8

显然后者参数更少,更不容易发生过拟合。


  • 什么是Pooling

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值