CNN(卷积神经网络)的误差反传(error back propagation)中有一个非常关键的的步骤就是将某个卷积(Convolve)层的误差传到前一层的池化(Pool)层上,因为在CNN中是2D反传,与传统神经网络中的1D反传有点细节上的不同,下面通过一个简单的例子来详细分解一下这个反传步骤。

假设在一个CNN网络中,P代表某个池化层,K代表卷积核,C代表卷基层,首先来看一下前向(feed forward)计算,从一个池化层经过与卷积核(Kernel)的运算得到卷积层:

将前向计算的步骤进行分解,可以得到以下公式:

下面根据这个前向计算的步骤来分解出反向传播的步骤:

首先要确定误差传播的目的地,从deltaC到deltaP,所以先从deltaP1开始分析

从前面的前向计算过程中可以找出P1参与了C中哪些元素的计算,并且可以根据对应的前向计算得出反向传播的计算公式:

依次类推,还有如下公式:

对于P2

对于P3

对于P4

对于P5

一直可以推到P9

总结这9个反向传播的公式到一起:

进一步可以发现,这9个公式可以用如下的卷积过程来实现:

至此,从计算的细节上解释了为什么反向传播的时候要把卷积核旋转180°,并采用full的形式来进行卷积运算。

(注:上文所说的“卷积”被认为是一种不会180°旋转第二个因子的的计算过程,实际上matlab中的的conv2(a,b)会自动180°旋转b,换句话说,在matlab中实现这个步骤的时候不用提前旋转,留给conv2函数自行旋转即可)

CNN误差反传时旋转卷积核的简明分析相关推荐

  1. 卷积神经网络的深入理解-基础篇(卷积,激活,池化,误差反传)

    卷积神经网络的深入理解-基础篇 一.卷积(convolution) 1.无padding时 2.有padding时 3.卷积与全连接 通道数(一般一张彩色图像为三通道RGB) 二.激活(激活函数)(持 ...

  2. 解决H5 IOS手机图片上传时图片会旋转90°问题

    解决H5 IOS手机图片上传时图片会旋转90°问题 Vant 官方给出的解答需要自己解决,没有处理. 解决办法主要使用了 compressorjs 插件库 一.Vant UI库Uploader 组件图 ...

  3. 梯度反传_反事实政策梯度解释

    梯度反传 Among many of its challenges, multi-agent reinforcement learning has one obstacle that is overl ...

  4. 为什么手机上传图片这么慢 前端_解决BootStrap Fileinput手机图片上传显示旋转问题_心病_前端开发者...

    最近因为项目需要用到了bootstrap fileinput的插件,在使用苹果手机上传图片预览时,发现图片方向和手机本地存储方向不一致问题.后来通过查询资料了解图片具有EXIF(Exchangeabl ...

  5. Caffe学习笔记(二):Caffe前传与反传、损失函数、调优

    Caffe学习笔记(二):Caffe前传与反传.损失函数.调优 在caffe框架中,前传/反传(forward and backward)是一个网络中最重要的计算过程:损失函数(loss)是学习的驱动 ...

  6. CNN应用Relu激活函数时设计权重初始值设置方法

    CNN应用Relu激活函数时,根据√(2/n)设计权重初始值 学习<深度学习入门(基于Python的理论与实现)>时,设计DeepConvNet,需要应用Relu激活函数,使用了ReLU的 ...

  7. 解决element 照片墙上传时回显问题

    解决element 照片墙上传时回显问题 参考文章: (1)解决element 照片墙上传时回显问题 (2)https://www.cnblogs.com/GGDong/p/10996522.html ...

  8. 解决文件上传时,服务器中中文文件名乱码问题

    解决文件上传时,服务器中中文文件名乱码问题 参考文章: (1)解决文件上传时,服务器中中文文件名乱码问题 (2)https://www.cnblogs.com/yang-xiansen/p/11167 ...

  9. php图片写入带问号_php实现图片上传时添加文字和图片水印技巧

    本文实现的功能特别适用于一些商城和图片站中,分享了图片在上传时添加文字和图片水印的技巧,供大家参考,具体内容如下 1. water.class.php header('Content-Type:tex ...

最新文章

  1. 计算某个时间距离现在_计算成像amp;深度学习(1)
  2. python 跳出多重循环
  3. 网站托管运营需要注意哪些内容?
  4. 安卓手机运行python程序的软件-安卓手机定时运行python脚本
  5. 2020牛客国庆集训派对day4 Jokewithpermutation
  6. 12-思科防火墙:ASA会话超时
  7. new 实例化对象是啥意思_new 关键字、实现一个new
  8. 微软 azure_Microsoft Azure管理员方案相关的面试问题与解答
  9. cve-2020-0796_微软SMBv3 Client/Server远程代码执行漏洞简单分析(CVE20200796)
  10. web前端之CSS——web字体详解
  11. 如何安装JRE8.0.202
  12. 在线web魔方和在线AI象棋
  13. c 语言中析构函数,详解C++中的析构函数
  14. IM云通信行业步入快车道,融云或将和Twilio一样实现资本上市
  15. P3966 [TJOI2013]单词(AC自动机)
  16. opencv normalize()函数详解
  17. 2019互联网企业排名
  18. 【Windows系统相关问题记录一】在原有Win10 EFI分区还在的前提下,使用DiskGenius误删EFI文件夹
  19. 【转】PCIE 通道x4/8/16的定义
  20. 一个算命顶级高手异常精彩的论述_huadingjin_新浪博客

热门文章

  1. C语言-基础知识练习习题1
  2. could not download处理方式
  3. DRL:强化学习-Q-Learning算法
  4. 阿尔法系统时钟和外设时钟
  5. java基础巩固-宇宙第一AiYWM:为了维持生计,架构知识+分布式微服务+高并发高可用高性能知识序幕就此拉开(一:总览篇)~整起
  6. 在 Python 中的常见的几种字符串替换操作
  7. CF1325C Ehab and Path-etic MEXs
  8. 图解 先验概率,后验概率,似然函数,迹象/evidence(by 例子 老王开车)
  9. 富爸爸,穷爸爸读后的一些认知
  10. 首届SD-WAN实战特训营