吴恩达深度学习课程笔记-神经网络编程基础-计算图
吴恩达深度学习课程笔记
第二周:神经网络编程基础(Basics of Neural Network programming)
2.7 计算图(Computation Graph)
一个神经网络的计算,都是按照前向和反向传播过程来实现的。首先我们计算出一个神经网络的输出(前向传播),紧接着进行一个反向传播操作。我们用反向传播来计算出对应的梯度或导数。计算图解释了为什么我们用这种方式来实现这些计算过程。在本节中,我们将举一个例子说明计算图是什么。让我们举一个比逻辑回归更加简单的,或者说不那么正式的神经网络的例子。
我们尝试计算函数 ,
是由三个变量
组成的函数,这个函数是
。计算这个函数实际上包含三个步骤,首先是计算
乘以
,我们将结果存在变量
中,因此
;然后计算
;最后输出
,这就是要计算的函数
。
我们可以把这三步画成如下的计算图,举个例子,,则
。
从这个小例子中我们可以看出,通过一个从左向右的过程,你可以计算出 的值。为了计算导数,从右到左(红色箭头,和蓝色箭头的过程相反)的过程是用于计算导数最自然的方式。概括一下:计算图组织计算的形式是用蓝色箭头从左到右的计算,下一节我们将会看到如何进行反向红色箭头(也就是从右到左)的导数计算。
上一篇:吴恩达深度学习课程笔记-神经网络编程基础-更多导数的例子