zoukankan      html  css  js  c++  java
  • caffe源码 池化层 反向传播

    图示池化层(前向传播)

    池化层其实和卷积层有点相似,有个类似卷积核的窗口按照固定的步长在移动,每个窗口做一定的操作,按照这个操作的类型可以分为两种池化层:

    输入参数如下:
    输入: 1 * 3 * 4 * 4
    池化核: 4 * 4
    pad: 0
    步长:2
    输出参数如下:
    输出:1 * 3 * 2 * 2
    • MAC (max pooling)在窗口中取最大值当做结果
    •  image
    • AVG (average pooling)在窗口中取平均值当做结果
    • image

    池化层的反向传播

    按照前向传播的分类,反向传播也需要分成两类

    • MAC (max pooling)

      • 如果只看输出矩阵中的一个点y,则有 y = max( x1 , x2, x3, ... );

      • 所以对x求导后有(可以理解成分段函数的求导)

        image

      • 代码实现:

        image

        可见上图,这个xn如果影响多个y,则会叠加起来

    • AVG (average pooling)

      • 如果只看输出矩阵中的一个点y,则有 y = ( x1 , x2, x3, ... ,xn )/n;

      • 所以对x求导后有

        image

      • 代码实现

        image

        可见上图,这个xn如果影响多个y,则会叠加起来

  • 相关阅读:
    Pycharm5使用
    flask 分页
    CRM
    课程项目
    vue的属性指令
    vue的文本指令
    vue实例
    vue使用
    ajax的json格式数据
    django知识点小结
  • 原文地址:https://www.cnblogs.com/ERKE/p/7686088.html
Copyright © 2011-2022 走看看