深度学习-计算图

计算图

计算图的引入是为了后面更方便的表示网络,计算图是描述计算结构的一种图,它的元素包括节点(node)和边(edge),节点表示变量,可以是标量、矢量、张量等,而边表示的是某个操作,即函数。

深度学习-计算图

下面这个计算图表示复合函数

深度学习-计算图

关于计算图的求导,我们可以用链式法则表示,有下面两种情况。

  • 情况1

深度学习-计算图

  • 情况2

深度学习-计算图

求导举例:

例1

深度学习-计算图

  • a = 3, b = 1 可以得到 c = 3, d = 2, e = 6

  • ∂ e ∂ a = ∂ e ∂ c ∂ c ∂ a = d = b + 1 = 2 \frac{\partial e}{\partial a} = \frac{\partial e}{\partial c}\frac{\partial c}{\partial a} = d = b + 1 = 2 ∂a∂e​=∂c∂e​∂a∂c​=d=b+1=2

  • ∂ e ∂ b = ∂ e ∂ c ∂ c ∂ b + ∂ e ∂ d ∂ d ∂ b = d + c = b + 1 + a + b = 5 \frac{\partial e}{\partial b} = \frac{\partial e}{\partial c}\frac{\partial c}{\partial b}+\frac{\partial e}{\partial d}\frac{\partial d}{\partial b} = d + c=b+1+a+b = 5 ∂b∂e​=∂c∂e​∂b∂c​+∂d∂e​∂b∂d​=d+c=b+1+a+b=5

例2

深度学习-计算图
深度学习-计算图

计算图可以很好的表示导数的前向传递和后向传递的过程,比如上面例2,前向传递了 ∂ ∂ X \frac{\partial }{\partial X} ∂X∂​ ,反向传递 ∂ ∂ Z \frac{\partial }{\partial Z} ∂Z∂​ 。

深度学习-计算图

深度学习-计算图

上一篇:简单总结一下深度学习中参数的更新和权重初始化的方法


下一篇:Markdown-vscode编写规则