神经网络原理简述—池化层Op求导

首发:https://zhuanlan.zhihu.com/p/86190898
作者:张新栋

池化层(Pooling),常见的有AvgPooling和MaxPooling,我们这里仅对2D的Pooling进行讨论。其实还是走的三板斧套路,首先我们先看一下AvgPooling2D和MaxPooling2D的简单算例,输入为1-9的3×3矩阵,pooling size为2,stride为1。

对于MaxPooling的计算实际上是取每个池化mask内的元素(对应矩阵相乘,就是当前最大值的元素乘1,其他的乘0,最后求和);对于AvgPooling的计算,实际上是取每个池化mask内的元素平均值。下面我们来看看如何将AvgPooling和MaxPooling化成线性表达式,以及其反向传播的计算方法。

Pooling算例

  • MaxPooling

MaxPooling2D

  • AvgPooling

AvgPooling2D

  • 最后

本文跟大家讨论了池化层的线性化过程及反向求导计算方法,并给出了简单的算例。欢迎大家留言讨论、关注专栏,谢谢大家!

推荐阅读

  • 神经网络原理简述—反向传播
  • 神经网络原理简述—参数正则
  • 神经网络原理简述—卷积Op求导
  • 神经网络原理简述—DW卷积Op求导

专注嵌入式端的AI算法实现,欢迎关注作者微信公众号和知乎嵌入式AI算法实现专栏

更多嵌入式AI相关的技术文章请关注极术嵌入式AI专栏

发表评论

邮箱地址不会被公开。 必填项已用*标注