首页 > 其他分享 >神经网络反向传播交叉熵 计算损失函数对隐藏层偏置b1的梯度

神经网络反向传播交叉熵 计算损失函数对隐藏层偏置b1的梯度

时间:2024-10-15 11:46:05浏览次数:8  
标签:偏置 frac 隐藏 神经网络 b1 partial Z1

本文是交叉熵损失函数为代表的两层神经网络的反向传播量化求导计算公式中的一个公式,单独拿出来做一下解释说明。


公式 8-19 计算的是损失函数 L L L 对隐藏层偏置 b 1 b_1 b1​ 的梯度。这个步骤是反向传播算法中的关键部分,用来更新隐藏层偏置 b 1 b_1 b1​,从而优化模型。下面我将详细解释公式 8-19 的推导过程及其含义。

公式 8-19 的表达式

∂ L ∂ b 1 = ∂ L ∂ a 2 ⋅ ∂ a 2 ∂ Z 2 ⋅ ∂ Z 2 ∂ a 1 ⋅ ∂ a 1 ∂ Z 1 ⋅ ∂ Z 1 ∂ b 1 = ( a 2 − y ) w 2 σ ′ ( Z 1 ) (8-19) \frac{\partial L}{\partial b_1} = \frac{\partial L}{\partial a_2} \cdot \frac{\partial a_2}{\partial Z_2} \cdot \frac{\partial Z_2}{\partial a_1} \cdot \frac{\partial a_1}{\partial Z_1} \cdot \frac{\partial Z_1}{\partial b_1} = (a_2 - y) w_2 \sigma'(Z_1) \tag{8-19} ∂b1​∂L​=∂a2​∂L​⋅∂Z2​∂a2​​⋅∂a1​∂Z2​​⋅∂Z1​∂a1​​⋅∂b1​∂Z1​​=(a2​−y)w2​σ′(Z1​)(8-19)

1. 符号解释

  • L L L:损失函数,一般在分类任务中采用交叉熵损失。
  • b 1 b_1 b1​:隐藏层的偏置项,它是加入到隐藏层神经元的输入上的一个常量。
  • Z 1 Z_1 Z1​:隐藏层的加权和,即隐藏层的输入值,它是输入数据经过权重和偏置线性组合后的结果。
  • a 1 a_1 a1​:隐藏层的激活值,是通过激活函数 σ ( Z 1 ) \sigma(Z_1) σ(Z1​) 计算得到的输出。
  • Z 2 Z_2 Z2​:输出层的加权和,即输出层的输入值。
  • a 2 a_2 a2​:输出层的激活值,即模型预测的结果(通过 sigmoid 或其他激活函数计算)。
  • w 2 w_2 w2​:连接隐藏层和输出层的权重。
  • y y y:真实标签,表示样本的实际类别。
  • σ ′ ( Z 1 ) \sigma'(Z_1) σ′(Z1​):隐藏层激活函数的导数,表示激活函数对输入 Z 1 Z_1 Z1​ 的变化率。

2. 推导过程:链式法则的应用

为了推导公式 8-19,我们应用链式法则,逐层计算损失函数 L L L 对隐藏层偏置 b 1 b_1 b1​ 的导数。

第一步:损失函数对输出层激活值 a 2 a_2 a2​ 的导数 ∂ L ∂ a 2 \frac{\partial L}{\partial a_2} ∂a2​∂L​

根据公式 8-13,损失函数对输出层激活值 a 2 a_2 a2​ 的导数为:
∂ L ∂ a 2 = a 2 − y \frac{\partial L}{\partial a_2} = a_2 - y ∂a2​∂L​=a2​−y

这是输出层的误差,表示模型的预测值 a 2 a_2 a2​ 和真实标签 y y y 之间的差异。

第二步:输出层激活值 a 2 a_2 a2​ 对输出层加权和 Z 2 Z_2 Z2​ 的导数 ∂ a 2 ∂ Z 2 \frac{\partial a_2}{\partial Z_2} ∂Z2​∂a2​​

输出层的激活值 a 2 a_2 a2​ 是通过激活函数(如 sigmoid)从加权和 Z 2 Z_2 Z2​ 计算得到的。因此:
∂ a 2 ∂ Z 2 = σ ′ ( Z 2 ) \frac{\partial a_2}{\partial Z_2} = \sigma'(Z_2) ∂Z2​∂a2​​=σ′(Z2​)

其中,sigmoid 函数的导数为:
σ ′ ( Z 2 ) = a 2 ( 1 − a 2 ) \sigma'(Z_2) = a_2(1 - a_2) σ′(Z2​)=a2​(1−a2​)

第三步:输出层加权和 Z 2 Z_2 Z2​ 对隐藏层激活值 a 1 a_1 a1​ 的导数 ∂ Z 2 ∂ a 1 \frac{\partial Z_2}{\partial a_1} ∂a1​∂Z2​​

输出层的加权和 Z 2 Z_2 Z2​ 是通过隐藏层激活值 a 1 a_1 a1​ 和权重 w 2 w_2 w2​ 线性组合得到的,因此:
∂ Z 2 ∂ a 1 = w 2 \frac{\partial Z_2}{\partial a_1} = w_2 ∂a1​∂Z2​​=w2​

这表示输出层的输入 Z 2 Z_2 Z2​ 对隐藏层激活值 a 1 a_1 a1​ 的变化率等于连接隐藏层和输出层的权重 w 2 w_2 w2​。

第四步:隐藏层激活值 a 1 a_1 a1​ 对隐藏层加权和 Z 1 Z_1 Z1​ 的导数 ∂ a 1 ∂ Z 1 \frac{\partial a_1}{\partial Z_1} ∂Z1​∂a1​​

隐藏层的激活值 a 1 a_1 a1​ 是通过激活函数 σ ( Z 1 ) \sigma(Z_1) σ(Z1​) 计算得到的,因此:
∂ a 1 ∂ Z 1 = σ ′ ( Z 1 ) \frac{\partial a_1}{\partial Z_1} = \sigma'(Z_1) ∂Z1​∂a1​​=σ′(Z1​)

这个导数表示隐藏层的激活函数对输入 Z 1 Z_1 Z1​ 的变化率。

第五步:隐藏层加权和 Z 1 Z_1 Z1​ 对偏置 b 1 b_1 b1​ 的导数 ∂ Z 1 ∂ b 1 \frac{\partial Z_1}{\partial b_1} ∂b1​∂Z1​​

隐藏层的加权和 Z 1 Z_1 Z1​ 是通过输入数据 x x x 和权重 w 1 w_1 w1​ 线性组合后,再加上偏置 b 1 b_1 b1​ 得到的。由于偏置 b 1 b_1 b1​ 是直接加到 Z 1 Z_1 Z1​ 上的,因此:
∂ Z 1 ∂ b 1 = 1 \frac{\partial Z_1}{\partial b_1} = 1 ∂b1​∂Z1​​=1

这意味着隐藏层的输入 Z 1 Z_1 Z1​ 对偏置 b 1 b_1 b1​ 的变化率为 1,因为偏置是直接加到输入中的,不受其他参数的影响。

3. 结合链式法则

现在我们可以将这些部分结合起来,得到损失函数 L L L 对隐藏层偏置 b 1 b_1 b1​ 的导数:
∂ L ∂ b 1 = ∂ L ∂ a 2 ⋅ ∂ a 2 ∂ Z 2 ⋅ ∂ Z 2 ∂ a 1 ⋅ ∂ a 1 ∂ Z 1 ⋅ ∂ Z 1 ∂ b 1 \frac{\partial L}{\partial b_1} = \frac{\partial L}{\partial a_2} \cdot \frac{\partial a_2}{\partial Z_2} \cdot \frac{\partial Z_2}{\partial a_1} \cdot \frac{\partial a_1}{\partial Z_1} \cdot \frac{\partial Z_1}{\partial b_1} ∂b1​∂L​=∂a2​∂L​⋅∂Z2​∂a2​​⋅∂a1​∂Z2​​⋅∂Z1​∂a1​​⋅∂b1​∂Z1​​

将每一部分的结果代入:
∂ L ∂ b 1 = ( a 2 − y ) ⋅ w 2 ⋅ σ ′ ( Z 1 ) ⋅ 1 \frac{\partial L}{\partial b_1} = (a_2 - y) \cdot w_2 \cdot \sigma'(Z_1) \cdot 1 ∂b1​∂L​=(a2​−y)⋅w2​⋅σ′(Z1​)⋅1

简化得到:
∂ L ∂ b 1 = ( a 2 − y ) w 2 σ ′ ( Z 1 ) \frac{\partial L}{\partial b_1} = (a_2 - y) w_2 \sigma'(Z_1) ∂b1​∂L​=(a2​−y)w2​σ′(Z1​)

这就是公式 8-19 的推导结果。

4. 公式的含义

公式 8-19 表示的是损失函数 L L L 对隐藏层偏置 b 1 b_1 b1​ 的导数。这个梯度用于调整隐藏层的偏置 b 1 b_1 b1​,以最小化损失函数。具体来说:

  • a 2 − y a_2 - y a2​−y:这是输出层的误差,表示模型的预测值 a 2 a_2 a2​ 与真实标签 y y y 之间的差异。
  • w 2 w_2 w2​:这是连接隐藏层和输出层的权重,反映了隐藏层对输出层的影响。
  • σ ′ ( Z 1 ) \sigma'(Z_1) σ′(Z1​):这是隐藏层激活函数对输入 Z 1 Z_1 Z1​ 的导数,表示激活函数对输入变化的敏感性。

5. 直观理解

从公式 8-19 可以看出,隐藏层偏置的更新受到以下因素的影响:

  • 输出层的误差 a 2 − y a_2 - y a2​−y:输出层的误差直接决定了模型需要多大程度地更新参数。如果误差较大,意味着模型的预测不够准确,偏置 b 1 b_1 b1​ 需要大幅度更新;如果误差较小,偏置只需要微小调整。
  • 输出层的权重 w 2 w_2 w2​:输出层的权重 w 2 w_2 w2​ 决定了隐藏层对输出层的影响程度。如果 w 2 w_2 w2​ 较大,则隐藏层的输出对最终结果的影响较大,偏置更新也会较大。
  • 激活函数的导数 σ ′ ( Z 1 ) \sigma'(Z_1) σ′(Z1​):激活函数的导数反映了隐藏层神经元的敏感度。如果激活函数的导数较大,说明隐藏层对输入的变化非常敏感,偏置需要较大的调整。

6. 在反向传播中的作用

公式 8-19 是反向传播中的一个关键步骤。反向传播的目标是通过损失函数对每个参数(如权重和偏置)的导数来更新这些参数,使得损失函数逐步减小。公式 8-19 计算了隐藏层偏置 b 1 b_1 b1​ 的梯度,这个梯度用于更新偏置,从而帮助模型更好地拟合数据。

7. 总结

公式 8-19 给出了损失函数对隐藏层偏置 b 1 b_1 b1​ 的梯度。这个梯度结合了输出层误差、输出层权重以及隐藏层激活函数的导数,是通过链式法则逐层传播计算得到的。通过这个梯度,反向传播算法能够逐步调整隐藏层的偏置 b 1 b_1 b1​,从而优化模型的预测性能。

标签:偏置,frac,隐藏,神经网络,b1,partial,Z1
From: https://blog.csdn.net/u013172930/article/details/142941944

相关文章

  • 神经网络之卷积篇:详解残差网络(ResNets)(Residual Networks (ResNets))
    详解残差网络ResNets是由残差块(Residualblock)构建的,首先解释一下什么是残差块。这是一个两层神经网络,在\(L\)层进行激活,得到\(a^{\left\lbrackl+1\right\rbrack}\),再次进行激活,两层之后得到\(a^{\left\lbrackl+2\right\rbrack}\)。计算过程是从\(a^{[l]}\)开始,首先进......
  • jsp非物质文化遗产资讯系统5b197
    jsp非物质文化遗产资讯系统本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表项目功能用户,非遗信息,栏目类型,友情链接,申报指南,申报类型技术要求:   开发语言:JSP前端使用:HTML5,CSS,JSP动态网页技术后......
  • 基于人工智能的图像分类算法研究与实现 - 深度学习卷积神经网络图像分类
    毕业设计-基于人工智能的图像分类算法研究与实现-深度学习卷积神经网络图像分类文章目录0简介深度学习作为机器学习领域内新兴并且蓬勃发展的一门学科,它不仅改变着传统的机器学习方法,也影响着我们对人类感知的理解,已经在图像识别和语音识别等领域取得广泛的应用......
  • 基于MATLAB的BP神经网络手写数字识别系统
    介绍*:本课题为基于MATLAB的BP神经网络手写数字识别系统。带有GUI人机交互式界面。读入测试图片,通过截取某个数字,进行预处理,经过bp网络训练,得出识别的结果。可经过二次改造成识别中文汉字,英文字符等课题。运行效果示例图:......
  • 基于RBF神经网络的非线性系统识别(Matlab代码实现)
    ......
  • 增强型PID-自适应-前馈-神经网络控制研究(Matlab代码实现)
     ......
  • 基于RBF神经网络的非线性系统识别(Matlab代码实现)
    ......
  • 机器学习和神经网络的研究与传统物理学的关系
    将2024年诺贝尔物理学奖授予机器学习与神经网络领域的研究者,这一决定无疑具有里程碑式的意义,它不仅标志着物理学界对交叉学科研究的认可,也体现了科学技术发展趋势的深刻变革。以下是我对这一评奖结果的几点看法:科学边界的拓展:传统上,诺贝尔物理学奖聚焦于对自然界基本规律的理......
  • 展望机器学习和神经网络的未来
    近日,2024年诺贝尔物理学奖颁发给了机器学习与神经网络领域的研究者,这是历史上首次出现这样的情况。这项奖项原本只授予对自然现象和物质的物理学研究作出重大贡献的科学家,如今却将全球范围内对机器学习和神经网络的研究和开发作为了一种能够深刻影响我们生活和未来的突出成果。......
  • 异构图神经网络在金融市场预测中的应用
    作者:老余捞鱼原创不易,转载请标明出处及原作者。写在前面的话:    这篇论文提出了一种名为时态和异构图神经网络(THGNN)的新方法,用于预测金融市场中的股票价格变动。该方法通过生成基于历史价格数据的公司关系图,并利用变换器编码器和异构图注意力网络来捕捉价格动......