计算图 (Computation Graph)
可以说,一个神经网络的计算,都是按照前向或反向传播过程组织的。首先我们计算出一个新的网络的输出(前向过程),紧接着进行一个反向传输操作。后者我们用来计算出对应的梯度或导数。计算图解释了为什么我们用这种方式组织这些计算过程。在这个视频中,我们将举一个例子说明计算图是什么。让我们举一个比逻辑回归更加简单的,或者说不那么正式的神经网络的例子。
我们尝试计算函数 ,是由三个变量 组成的函数,这个函数是 。计算这个函数实际上有三个不同的步骤,首先是计算 乘以 ,我们把它储存在变量 中,因此 ; 然后计算 ;最后输出 ,这就是要计算的函数 。我们可以把这三步画成如下的计算图,我先在这画三个变量 ,第一步就是计算 ,我在这周围放个矩形框,它的输入是 ,接着第二步 ,最后一步 。 举个例子: , 就是6, , 就是5+6=11。 是3倍的 ,因此。即 。如果你把它算出来,实际上得到33就是 的值。 当有不同的或者一些特殊的输出变量时,例如本例中的 和逻辑回归中你想优化的代价函数 ,因此计算图用来处理这些计算会很方便。从这个小例子中我们可以看出,通过一个从左向右的过程,你可以计算出的 值。为了计算导数,从右到左(红色箭头,和蓝色箭头的过程相反)的过程是用于计算导数最自然的方式。 概括一下:计算图组织计算的形式是用蓝色箭头从左到右的计算,让我们看看下一个视频中如何进行反向红色箭头(也就是从右到左)的导数计算,让我们继续下一个视频的学习。