1. 前向传播

假设

的矩阵(其中,
为样本个数(batch size),
为特征维数):
的维数为
的矩阵,
的维数为
的矩阵,
的维数为
的矩阵,

前向算法:

假设输出为

维,则
为大小为
的矩阵,根据MSE或CE准则可以求得
,对于回归问题与分类问题,
的求解方法如下:
  • 对于回归问题,对out直接计算损失,损失函数为MSE。 损失:

  • 对于分类问题,out后接softmax进行分类,然后使用CE(cross entropy)计算loss.

    一个样本对应的网络的输出
    是一个概率分布,而这个样本的标注
    一般为
    ,也可以看做一个概率分布(硬分布)。cross entropy可以看成是
    之间的KL距离:
  • 假设

    ,其中1为第
    个元素(索引从0开始),令
    .

损失:

KL距离(相对熵):是Kullback-Leibler Divergence的简称,也叫相对熵(Relative Entropy).它衡量的是相同事件空间里的两个概率分布的差异情况。其物理意义是:在相同事件空间里,概率分布 P(x) 对应的每个事件,若用概率分布 Q(x) 编码时,平均每个基本事件(符号)编码长度增加了多少比特。我们用

表示KL距离,计算公式如下:
,当两个概率分布完全相同时,即 P(X)=Q(X) ,其相对熵为0.

2.反向传播

,为了便于详细说明反向传播算法,假设
的向量,
的向量:

所以,

1) 损失

的导数:

即,

2) 损失对偏置b的导数等于将

的每一列加起来:

3) 损失

的导数:

即,

4) 损失

的导数:
  • 为sigmoid时,
  • 为tanh时,
    .
  • 为relu时,

3. 梯度更新

对于不同算法 ,梯度更新方式如下:

cnn 反向传播推导_反向传播算法推导过程(非常详细)相关推荐

  1. 反向传播(Back propagation)算法推导具体过程

    BP算法的成就无需多言,现在就来进行一下具体的推导.推到过程依赖于西瓜书(<机器学习> 周志华) 1.首先定义一个单隐层神经网络,具体参考西瓜书102页: 2.各类符号的意义: 3. 初始 ...

  2. 比特大陆算法移植过程(详细)

    一.模型转换环境安装搭建: 1.按照指导书安装环境 (1)先安装docker(网上搜教程): (2)按照指导说明书安装比特大陆的docker: wget -c https://sophon-file. ...

  3. java模拟制作购物车_模拟购物车的实现过程(详细讲解)

    我们把购物车的步骤分为了三步 一.加入购物车 二.购物车中物品数量的控制 三.计算金额 下面为实现的代码:(代码也是按照上面的思路写的大家可以看看,看不懂可以参照上面的图片上的步骤) 购物车 h1 { ...

  4. CSK与KCF算法推导(二)

      本文是CSK与KCF算法推导的第二篇,主要介绍标量对向量求导.核函数.岭回归问题求解等内容. CSK与KCF算法推导(一)--DFT.相关运算和循环卷积 (本文)CSK与KCF算法推导(二)--带 ...

  5. CSK与KCF算法推导(六)

      本文是CSK与KCF算法推导的第六篇,主要介绍HOG特征提取与多通道计算. CSK与KCF算法推导(一)--DFT.相关运算和循环卷积 CSK与KCF算法推导(二)--带核函数的岭回归问题求解 C ...

  6. CSK与KCF算法推导(三)

      本文是CSK与KCF算法推导的第三篇,主要介绍算法的主体部分推导. CSK与KCF算法推导(一)--DFT.相关运算和循环卷积 CSK与KCF算法推导(二)--带核函数的岭回归问题求解 (本文)C ...

  7. CSK与KCF算法推导(五)

      本文是CSK与KCF算法推导的第五篇,主要介绍具体实现的细节. CSK与KCF算法推导(一)--DFT.相关运算和循环卷积 CSK与KCF算法推导(二)--带核函数的岭回归问题求解 CSK与KCF ...

  8. CSK与KCF算法推导(一)

      从2015年João F. Henriques等人提出KCF以来,网上已经有了很多相关的科普,也有博主给出了非常详细的推导,但如果想要真正理解我觉得还是得自己推导一遍,所以我在这里准备写一下自己学 ...

  9. 深度学习(四):卷积神经网络(CNN)模型结构,前向传播算法和反向传播算法介绍。

    在前面我们讲述了DNN的模型与前向反向传播算法.而在DNN大类中,卷积神经网络(Convolutional Neural Networks,以下简称CNN)是最为成功的DNN特例之一.CNN广泛的应用 ...

最新文章

  1. Valve className=org.apache.catalina.valves.AccessLogValve directory=logs prefix=localhost_acce
  2. 计算机主机的作用和性能指标,Cpu是什么 cpu性能指标主要有哪几个方面【详细介绍】...
  3. 如何使用Scala的ClassTag
  4. 如何把你的搜索引擎也加入到Firefox中
  5. dva.js在index。tsx中获取script标签引用的文件
  6. PyTorch模块类
  7. Deep Learning---py-faster-rcnn基于PASCAL VOC数据集训练模型
  8. Python EFZ文件 气象_python的日常应用-gt;入门篇01
  9. oracle dba入门线路图--记某培训公司的ORACLE DBA技能进阶实战大纲
  10. 计算机电源管理设置,关于电源管理的电源管理计划设置
  11. 如何动态获取UILabel的高度、宽度
  12. Ubuntu 默认启动到字符界面
  13. MapReduce工作机制详解
  14. WPF-14:绑定中数据模型必须为public问题
  15. IDEA 常用设置 与 常用操作(一)
  16. MacOS Monterey 12.5.1 (21G83) OC 0.8.4 / Cl 5148 / PE 三分区原版黑苹果镜像
  17. python 经典图书排行榜_书榜 | 计算机书籍(3.30-4.5)销售排行榜
  18. 最新PHP对接微信支付,发起商家转账API,商家转账到零钱
  19. 研修国学请注意选好教材
  20. QCustomPlot 示例实践--sinc离散序列

热门文章

  1. 关于 Session 的深入探讨
  2. 2017 Q3 ,互联网人的薪资发生了哪些变化?
  3. php读取excel文件_php读取EXCEL文件 php excelreader读取excel文件
  4. 【mycat】分库分表
  5. 两个数据库字符集不一样,如何快速增量同步数据.
  6. pytorch 半精度,提升pytorch推理性能
  7. module ‘open3d‘ has no attribute ‘PointCloud‘
  8. 3D目标检测2021
  9. iou iof matrix_iof
  10. ncnn-mobile