美文网首页
链式法则与反向传播过程解析

链式法则与反向传播过程解析

作者: 凌烟阁主5221 | 来源:发表于2019-12-13 09:23 被阅读0次

昨天听百度的课,发现我居然一直没搞懂链式法则计算反向传播的过程,今天专门看了一下,找到一个例子帮助大家学习

我们使用一个简单的逻辑回归的例子

这里绿色是前向计算,褐红色是反向传播。 

根据绿色值的设定,整个计算流程就是上面那个逻辑回归表达式,经过一步步运算,最终得到输出结果是0.73,此时如果和真正的结果比较,假如真实结果是1.73,会发现之间存在一个误差1.0

误差有了,需要相应的调整参数,于是我们需要反向传播。

开始反向传播得到过程:

很简单,就是拿 误差乘以导数

error=1,它是经过1/x计算得到的误差,导数f1=-1/x^2,反向传递 注意此时x的值是1.37,是运算前的值,不是运算后的结果值0.73   1X(-1/1.37^2)=-0.53

error=-0.53,它是经过x+1计算得到的误差,导数f2=1,反向传递    -0.53X(1)=f1Xf2=-0.53

error=-0.53,它是经过ex计算得到的误差,导数f3=ex,反向传递     -0.53X(e-1)=f1Xf2Xf3=-0.2

error=-0.2,它是经过-x计算得到的误差,导数f4=-1,反向传递        -0.2X(-1)=f1Xf2Xf3Xf4=0.2

error=0.2,它是经过m1+m2计算得到的误差,它有2个导数,

                对m1的导数f51=1,反向传递        0.2X(1)=f1Xf2Xf3Xf4Xf51=0.2

                对m2的导数f52=1,反向传递        0.2X(1)=f1Xf2Xf3Xf4Xf52=0.2

error=0.2,它是经过m3+m4 (这里是图中两个红框右边的那个加法操作)计算得到的误差,它有2个导数,

                对m3的导数f61=1,反向传递        0.2X(1)=f1Xf2Xf3Xf4Xf51Xf61=0.2

                对m4的导数f62=1,反向传递        0.2X(1)=f1Xf2Xf3Xf4Xf51Xf62=0.2

error=0.2,它是经过n1*n2 (这里是图中上面的那个红框的乘法操作)计算得到的误差,它有2个导数,

                对n1的导数f71=n2,反向传递        0.2X(-1)=f1Xf2Xf3Xf4Xf51Xf61Xf71=-0.2

                对n2的导数f72=n1,反向传递        0.2X(2)=f1Xf2Xf3Xf4Xf51Xf61Xf72=0.4

error=0.2,它是经过n3*n4 (这里是图中下面的那个红框的乘法操作)计算得到的误差,它有2个导数,

                对n3的导数f81=n4,反向传递        0.2X(-2)=f1Xf2Xf3Xf4Xf51Xf62Xf81=-0.2

                对n4的导数f82=n3,反向传递        0.2X(-3)=f1Xf2Xf3Xf4Xf51Xf62Xf82=-0.6

需要注意的是,误差从输出一层一层往前传播,不可以跳过某些中间步骤,在计算每一步的误差时,需要乘上上一步得到的误差(链式法则,层层相乘)。

至此,我们发现可以根据反向传播,修改参数w0,w1,w2的值,然后继续后续的工作。

在传播过程中,如果某一部分可以直接用一整个函数代替,则可以对整块求导,然后将导数值传到上一步,如下图所示,这仍然符合链式求导法则

蓝色框内其实就是sigmoid函数,其导数为 f*(1-f)=(0.73x(1-0.73))=0.2,反向传递 1X0.2=0.2

其实在实际过程中,完整的反向传播应该是下图

相关文章

  • 梯度下降与反向传播

    链式法则 梯度下降与反向传播(含过程推导及证明)

  • 链式法则与反向传播过程解析

    昨天听百度的课,发现我居然一直没搞懂链式法则计算反向传播的过程,今天专门看了一下,找到一个例子帮助大家学习 我们使...

  • Lecture_backpropagation

    简介 本节将帮助读者对反向传播形成直观而专业的理解。反向传播是利用链式法则递归计算表达式的梯度的方法。 简单表达式...

  • 2018-05-24

    历史的痕迹 反向传播算法基于链式法则,为了推到方便为每个神经元都定义了一个delta

  • Linux智能DNS服务搭建之Bind服务(二)

    一、DNS正向解析与反向解析 1.DNS正向解析与反向解析简介 2.DNS正向解析与反向解析配置 1)配置正向解析...

  • 深度学习 - 前向传播和反向传播

    英文原文深度学习---反向传播的具体案例BP(反向传播算法)公式推导及例题解析 前向传播 input ->输入到-...

  • 反向传播算法

    反向传播就是⼀种巧妙地追踪权重(和偏置)微⼩变化的传播,抵达输出层影响代价函数的技术 反向传播法易懂解析 正向传播...

  • 反向传播(BP)算法

    在神经网络训练过程中,反向传播可以说是迄今为止用途最成功的算法。而其本质可以说是非常简单:多元函数微分链式法则。同...

  • T4-深度学习介绍与反向传播机制

    深度学习 采用深度神经网络作为模型进行学习。 步骤 选择神经网络 模型评估 选择最好结果 反向传播 通过链式法则,...

  • 什么是梯度消失或爆炸?

    什么是梯度消失或爆炸 根据反向传播算法和链式法则, 梯度的计算可以简化为以下公式: 其中sigmoid的导数值域是...

网友评论

      本文标题:链式法则与反向传播过程解析

      本文链接:https://www.haomeiwen.com/subject/xwadyctx.html