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

 

原文做者:aircrafthtml

原文连接:https://www.cnblogs.com/DOMLX/p/9579108.html前端

 

 

参考博客:https://blog.csdn.net/chengqiuming/article/details/80300284python

一.池化c++

  你们学过神经网络的都知道,在神经网络中有一层是pooling层也就是池化层,经过池化对特征进行提取而且缩小数据
编程

下图是maxpooling 也就是最大池化,举例以一个2*2的卷积核,步长为2,来遍历整个矩阵,每通过一个2*2的区域就将这块区域后端

中的最大值提取出来存放。具体以下图所示网络

 

 

同理avgpooling也就是平均池化层就是将2*2的区域的全部值加起来取得均值存放。机器学习

 

 

二.反池化学习

   反池化是池化的逆操做,是没法经过池化的结果还原出所有的原始数据。由于池化的过程就只保留了主要信息,舍去部分信息。
若是想从池化后的这些主要信息恢复出所有信息,则存在信息缺失,这时只能经过补位来实现最大程度的信息完整。
池化有两种:最大池化和平均池化,其反池化也须要与其对应。
(1) 平均池化和反平均池化
  首先还原成原来的大小,而后将池化结果中的每一个值都填入其对应原始数据区域中相应位置便可。
平均池化和反平均池化的过程以下:
(2) 最大池化和反最大池化
  要求在池化过程当中记录最大激活值的坐标位置,而后在反池化时,只把池化过程当中最大激活值所在位置坐标值激活,
其余的值设置为0.固然,这个过程只是一种近似。由于在池化过程当中,除了最大值的位置,其余的值也是不为0的。
最大池化和反最大池化的过程以下:
 
 
 
最后我这是一列的学习笔记,有兴趣入门深度学习的能够看看在下后面的深度学习系列的笔记。
 
 
 
参考博客:https://blog.csdn.net/chengqiuming/article/details/80300284
 

如有兴趣交流分享技术,可关注本人公众号,里面会不按期的分享各类编程教程,和共享源码,诸如研究分享关于c/c++,python,前端,后端,opencv,halcon,opengl,机器学习深度学习之类有关于基础编程,图像处理和机器视觉开发的知识
spa

相关文章
相关标签/搜索