使用反向传播算法计算参数的梯度并用python实现加法和乘法节点的反向传播

使用反向传播算法计算参数的梯度并用python实现加法和乘法节点的反向传播

    • 一、what is 反向传播
    • 二、乘法节点的反向传播
    • 三、加法节点的反向传播
    • 四、加法层和乘法层混合应用

一、what is 反向传播

误差反向传播法是一种高效计算权重参数的梯度的方法。所谓的反向传播,从图上看的话,就是从右向左的传播。

举个例子,如图所示,jym买了两个100元一个的苹果,消费税是10%,最终输出支付金额,这个图就表示了一个计算的流程。正向看都能理解,就是100和2相乘得到200,作为下一个节点的入,然后200和1.1相乘得到220的支付金额。

那么,如果jym想要知道苹果价格上涨会多大程度影响最终的支付金额,就需要求支付金额关于苹果价格的偏导数。设苹果价格为x,支付金额为L,支付金额关于苹果价格的偏导数为d,d的值表示,x上涨a时支付金额会增加d*a。

图中,反向传播用与正向相反的箭头表示。它传递的数是局部导数。而且,通过图片可以了解到,苹果价格如果增加1元,那么最终支付金额将增加2.2元。

使用反向传播算法计算参数的梯度并用python实现加法和乘法节点的反向传播_第1张图片

传递这个局部导数的原理是链式法则。表示链式法

你可能感兴趣的:(学习笔记,机器学习,反向传播,python)