热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

【深度学习】7矩阵乘法运算的反向传播求梯度

【深度学习】7-矩阵乘法运算的反向传播求梯度-?前言本节以较简单的例子来理解矩阵乘法下的反向传播过程。为了稍微形象一些,这里同样会用到计算图来进行描述。矩阵乘法下的反向传播



? 前言

本节以较简单的例子来理解矩阵乘法下的反向传播过程。为了稍微形象一些,这里同样会用到计算图来进行描述。

矩阵乘法下的反向传播,其实和标量计算下的反向传播区别不大,只是我们的研究对象从标量变成了矩阵。我们需要解决的就是矩阵乘法运算下求梯度的问题,而两个矩阵的乘法又可以分解为许多标量的运算。





文章目录


  • ? 前言
  • 1. 求梯度的公式
  • 2. “举个栗子”:两个矩阵相乘
  • 3. 从计算图看:误差反向传播




1. 求梯度的公式

在矩阵乘法的情况下,设有一个特征矩阵为




X



X


X
,一个权值矩阵为




W



W


W
,输出:




Y


=


X


W



Y = XW


Y=XW

如果我们要得到




Y



Y


Y
关于




W



W


W
的梯度,则可以使用公式:




d


W


=



X






d


Y



dW=X ^\top dY


dW=XdY

同样的,如果求




Y



Y


Y
关于




X



X


X
的梯度,则可以使用公式:




d


X


=


d


Y



W







dX=dYW^\top


dX=dYW

那么,为什么上面的公式确实可以求出我们所需要的梯度呢?


2. “举个栗子”:两个矩阵相乘

我们不妨看看两个简单矩阵相乘的过程,并将目光聚焦到求关于




W



W


W
的梯度

求关于




W



W


W
的梯度,则我们得到的




d


W



dW


dW
的形状应当是与




W



W


W
相同的,即每个元素都有一个对应的梯度。我们看和





W


11




W_{11}


W11
有关的部分:







y


11



=



X


11




W


11



+



X


12




W


21




y_{11}=X_{11}W_{11}+X_{12}W_{21}


y11=X11W11+X12W21







y


21



=



X


21




W


11



+



X


22




W


21




y_{21}=X_{21}W_{11}+X_{22}W_{21}


y21=X21W11+X22W21







y


31



=



X


31




W


11



+



X


32




W


21




y_{31}=X_{31}W_{11}+X_{32}W_{21}


y31=X31W11+X32W21

不难发现,





W


11




W_{11}


W11
的系数有三个,那么





W


11




W_{11}


W11
的梯度就是这三个系数的和:





X


11



+



X


21



+



X


31




X_{11}+X_{21}+X_{31}


X11+X21+X31


  • 对应的系数作为梯度很好理解,可为什么是呢?而不是平均数?又或者其它的?
    我现在也没有很明白,求得的梯度为什么是它所有系数的和值,主要是对这个梯度值所代表的意义有些困惑。不过平均数其实没有什么意义,不过是给所有求得的梯度等比缩小了而已。

相应的,




W



W


W
第一行的元素,其梯度都是




X



X


X
第一列的和;第二行的元素,其梯度都是




X



X


X
第二列的和。
于是可以发现,通过公式




d


W


=



X






d


Y



dW=X ^\top dY


dW=XdY
,如果




d


Y



dY


dY
的元素值都为1,我们就恰巧能得到上面的结果。


  • 在实际的模型中,矩阵乘法的运算只是作为很小的一个部分,




    d


    Y



    dY


    dY
    的值接受自下一层,而非简单的全为




    1



    1


    1
    ,因此不必担心出现每一行的权值只能同步更新的问题

3. 从计算图看:误差反向传播

前面我们是从表达式的系数得出的规律,接下来再从计算图来看一下反向传播求梯度的过程。


  • 在考虑神经网络中的误差的反向传播时,计算图确实是一个很棒的工具。对于复杂的矩阵乘法运算,我们可以把它分解成许多简单的加法和乘法运算来考虑。

求W11有关的部分计算图——正向推理

误差反向传播

这里我们得到:




d



W


11



=



X


11



d



y


11



+



X


21



d



y


21



+



X


31



d



y


31




dW_{11}=X_{11}dy_{11}+X_{21}dy_{21}+X_{31}dy_{31}


dW11=X11dy11+X21dy21+X31dy31

这里只画出了举例子所需要的小部分计算图,将一个矩阵乘法运算完整地用计算图呈现出来,会显得比较错综复杂,也比较麻烦。但使用部分计算图来以点带面、帮助理解还是非常不错的。



感谢阅读





推荐阅读
  • 本文介绍了实现人工智能的多种方法,并重点探讨了当前最热门的技术——通过深度学习训练神经网络。文章通过具体实例详细解释了神经网络的基本原理及其应用。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 在机器学习领域,深入探讨了概率论与数理统计的基础知识,特别是这些理论在数据挖掘中的应用。文章重点分析了偏差(Bias)与方差(Variance)之间的平衡问题,强调了方差反映了不同训练模型之间的差异,例如在K折交叉验证中,不同模型之间的性能差异显著。此外,还讨论了如何通过优化模型选择和参数调整来有效控制这一平衡,以提高模型的泛化能力。 ... [详细]
  • 独家解析:深度学习泛化理论的破解之道与应用前景
    本文深入探讨了深度学习泛化理论的关键问题,通过分析现有研究和实践经验,揭示了泛化性能背后的核心机制。文章详细解析了泛化能力的影响因素,并提出了改进模型泛化性能的有效策略。此外,还展望了这些理论在实际应用中的广阔前景,为未来的研究和开发提供了宝贵的参考。 ... [详细]
  • 能够感知你情绪状态的智能机器人即将问世 | 科技前沿观察
    本周科技前沿报道了多项重要进展,包括美国多所高校在机器人技术和自动驾驶领域的最新研究成果,以及硅谷大型企业在智能硬件和深度学习技术上的突破性进展。特别值得一提的是,一款能够感知用户情绪状态的智能机器人即将问世,为未来的人机交互带来了全新的可能性。 ... [详细]
  • 从2019年AI顶级会议最佳论文,探索深度学习的理论根基与前沿进展 ... [详细]
  • 视觉图像的生成机制与英文术语解析
    近期,Google Brain、牛津大学和清华大学等多家研究机构相继发布了关于多层感知机(MLP)在视觉图像分类中的应用成果。这些研究深入探讨了MLP在视觉任务中的工作机制,并解析了相关技术术语,为理解视觉图像生成提供了新的视角和方法。 ... [详细]
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • 非计算机专业的朋友如何拿下多个Offer
    大家好,我是归辰。秋招结束后,我已顺利入职,并应公子龙的邀请,分享一些秋招面试的心得体会,希望能帮助到学弟学妹们,让他们在未来的面试中更加顺利。 ... [详细]
  • 在2019中国国际智能产业博览会上,百度董事长兼CEO李彦宏强调,人工智能应务实推进其在各行业的应用。随后,在“ABC SUMMIT 2019百度云智峰会”上,百度展示了通过“云+AI”推动AI工业化和产业智能化的最新成果。 ... [详细]
  • 通过使用CIFAR-10数据集,本文详细介绍了如何快速掌握Mixup数据增强技术,并展示了该方法在图像分类任务中的显著效果。实验结果表明,Mixup能够有效提高模型的泛化能力和分类精度,为图像识别领域的研究提供了有价值的参考。 ... [详细]
  • 浅层神经网络解析:本文详细探讨了两层神经网络(即一个输入层、一个隐藏层和一个输出层)的结构与工作原理。通过吴恩达教授的课程,读者将深入了解浅层神经网络的基本概念、参数初始化方法以及前向传播和反向传播的具体实现步骤。此外,文章还介绍了如何利用这些基础知识解决实际问题,并提供了丰富的实例和代码示例。 ... [详细]
  • 深入解析经典卷积神经网络及其实现代码
    深入解析经典卷积神经网络及其实现代码 ... [详细]
  • 超分辨率技术的全球研究进展与应用现状综述
    本文综述了图像超分辨率(Super-Resolution, SR)技术在全球范围内的最新研究进展及其应用现状。超分辨率技术旨在从单幅或多幅低分辨率(Low-Resolution, LR)图像中恢复出高质量的高分辨率(High-Resolution, HR)图像。该技术在遥感、医疗成像、视频处理等多个领域展现出广泛的应用前景。文章详细分析了当前主流的超分辨率算法,包括基于传统方法和深度学习的方法,并探讨了其在实际应用中的优缺点及未来发展方向。 ... [详细]
  • 图像分割技术在人工智能领域中扮演着关键角色,其中语义分割、实例分割和全景分割是三种主要的方法。本文对这三种分割技术进行了详细的对比分析,探讨了它们在不同应用场景中的优缺点和适用范围,为研究人员和从业者提供了有价值的参考。 ... [详细]
author-avatar
菜蕻的薇笑2602929033
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有