2.7 计算图-深度学习-Stanford吴恩达教授
| 2.6 更多導數的例子 | 回到目錄 | 2.8 計算圖的導數計算 |
計算圖 (Computation Graph)
可以說,一個神經網絡的計算,都是按照前向或反向傳播過程組織的。首先我們計算出一個新的網絡的輸出(前向過程),緊接著進行一個反向傳輸操作。后者我們用來計算出對應的梯度或導數。計算圖解釋了為什么我們用這種方式組織這些計算過程。在這個視頻中,我們將舉一個例子說明計算圖是什么。讓我們舉一個比邏輯回歸更加簡單的,或者說不那么正式的神經網絡的例子。
我們嘗試計算函數 JJJ ,是由三個變量 a,b,ca,b,ca,b,c 組成的函數,這個函數是 3(a+bc)3(a+bc)3(a+bc) 。計算這個函數實際上有三個不同的步驟,首先是計算 bbb 乘以 ccc ,我們把它儲存在變量 uuu 中,因此 u=bcu=bcu=bc ; 然后計算 v=a+uv=a+uv=a+u ;最后輸出 J=3vJ=3vJ=3v ,這就是要計算的函數 JJJ 。我們可以把這三步畫成如下的計算圖,我先在這畫三個變量 a,b,ca,b,ca,b,c ,第一步就是計算 u=bcu=bcu=bc ,我在這周圍放個矩形框,它的輸入是 b,cb,cb,c ,接著第二步 v=a+uv=a+uv=a+u ,最后一步 J=3vJ=3vJ=3v 。 舉個例子: a=5,b=3,c=2a=5,b=3,c=2a=5,b=3,c=2 , u=bcu=bcu=bc 就是6, , v=a+uv=a+uv=a+u 就是5+6=11。 JJJ 是3倍的 ,因此。即 3?(5+3?2)3*(5+3*2)3?(5+3?2) 。如果你把它算出來,實際上得到33就是 JJJ 的值。 當有不同的或者一些特殊的輸出變量時,例如本例中的 JJJ 和邏輯回歸中你想優化的代價函數 JJJ ,因此計算圖用來處理這些計算會很方便。從這個小例子中我們可以看出,通過一個從左向右的過程,你可以計算出的 JJJ 值。為了計算導數,從右到左(紅色箭頭,和藍色箭頭的過程相反)的過程是用于計算導數最自然的方式。 概括一下:計算圖組織計算的形式是用藍色箭頭從左到右的計算,讓我們看看下一個視頻中如何進行反向紅色箭頭(也就是從右到左)的導數計算,讓我們繼續下一個視頻的學習。
課程PPT
| 2.6 更多導數的例子 | 回到目錄 | 2.8 計算圖的導數計算 |
總結
以上是生活随笔為你收集整理的2.7 计算图-深度学习-Stanford吴恩达教授的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2.6 更多导数例子-深度学习-Stan
- 下一篇: 2.9 Logistic 回归的梯度下降