cnn 反向传播推导_在CNN中的反向传播

本文使用 Zhihu On VSCode 创作并发布

此文为翻译.

1. 链式法则

先理解一下在反向传播中的链式法则。 假设有下面这个等式:

我们可以把它划分成两个等式:

下面让我们画出关于

的计算图,其中

e09b2636aeea64b3c7ca44d00dc22203.png 当我们按照上图从左到右进行计算时(前向传播),可以得到

现在让我们回到反向传播阶段。我们计算梯度从右往左,因此最后,我们可以得到关于我们的输入

的梯度:
。 在从右往左进行计算时,在乘积门,我们可以得到
, 在加和门我们可以得到

28229d0efd6146defb43af2b733a6e4f.png 我们希望获得
,但是目前我们只获得了
,那么我们达到我们的目标呢。 这里就可以使用链式法则来进行推导,通过链式法则,我们可以计算

63e062d550eb4829972c2926379ba22f.png 那么我们可以计算得到
如下:

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CNN(卷积神经网络)是一种常用的深度学习模型,用于图像识别、目标检测等任务。而反向传播CNN用于训练网络的关键步骤之一。 反向传播(Backpropagation)是指通过计算误差(即预测值与真实值的差异)来调整神经网络的权重和偏置,以提高模型的预测准确度。在CNN反向传播的实现主要包括两个步骤:前向传播反向传播。 首先,进行前向传播。首先将输入数据通过卷积层进行卷积运算,提取出图像的特征。然后,通过激活函数(如ReLU)来引入非线性。接下来,利用池化层来减小特征图的尺寸,并保留更显著的特征。最后,将处理后的特征输入到全连接层,进行分类或回归等任务的预测。 其次,进行反向传播。首先,计算预测值与真实值之间的误差。然后,通过链式法则,将误差从输出层向输入层反向传播,并更新每个连接权重和偏置的数值。这样,网络每个神经元的梯度都可以通过反向传播得到,从而调整网络参数,使其逐渐逼近真实值。此过程可以利用梯度下降等优化算法来完成。 具体地讲,反向传播过程主要分为四个步骤:计算损失函数对输出层的输入的偏导数、计算损失函数对输出层的权重的偏导数、计算损失函数对输入层的加权和的偏导数、计算损失函数对输入图像的偏导数。通过不断迭代这四个步骤,不断更新参数,从而提高网络的训练效果。 综上所述,CNN反向传播通过计算误差来调整网络的权重和偏置,以提高模型的准确度。这个过程主要包括前向传播反向传播两个步骤,通过不断地更新参数,使得网络逐渐逼近真实值,从而达到优化模型的目的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值