返回介绍

数学基础

统计学习

深度学习

工具

Scala

反向传播算法

发布于 2023-07-17 23:38:25 字数 1038 浏览 0 评论 0 收藏 0

  1. 前向传播 forward propagation 过程: 当前馈神经网络接收输入 $ MathJax-Element-344 $ 并产生输出 $ MathJax-Element-41 $ 时,信息前向流动。

    输入 $ MathJax-Element-344 $ 提供初始信息,然后信息传播到每一层的隐单元,最终产生输出 $ MathJax-Element-41 $ 。

  2. 反向传播算法back propagation允许来自代价函数的信息通过网络反向流动以便计算梯度。

    • 反向传播并不是用于学习整个神经网络的算法,而是仅用于计算梯度的算法。

      神经网络的学习算法是随机梯度下降这类基于梯度的算法。

    • 反向传播不仅仅适用于神经网络,原则上它适用于计算任何函数的导数。

  1. 计算图computational graph

    • 图中的每个节点代表一个变量(可以是标量、向量、矩阵或者张量)。

    • 操作:operation为一个或者多个变量的简单函数。

      • 多个操作组合在一起可以描述一个更复杂的函数。
      • 一个操作仅返回单个输出变量(可以是标量、向量、矩阵或者张量)。
    • 如果变量 $ MathJax-Element-41 $ 是变量 $ MathJax-Element-40 $ 通过一个操作计算得到,则在图中绘制一条从 $ MathJax-Element-40 $ 到 $ MathJax-Element-41 $ 的有向边。

    如: $ MathJax-Element-42 $ 的计算图:

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文