Forward/Backward propagation 前向/後向傳遞
這兩個聽起來有點厲害的名詞,Forward/Backward 其實只是在說 NN 裡面運作的方向
就是 NN 的正常運作流程:Input layer 吃資料 → Hidden layer 運算 → Output layer 預測結果
前幾天的文章幾乎都是在寫 Forward propagation
而在最後 Output layer 預測結果後,發生了甚麼事?
我們會比對正確答案,看看跟答案差了多少,也就是計算 Cost function
接著就輪到 Backward propagation 出場
想像成走原路回去的感覺:Output layer 取得誤差 → Hidden layer 調整參數 → 校正完成
這邊用 pseudo code 來說好了:
下方的偏微分都可以用 chain rule 求出
想提一個小重點,我看滿多地方都省略的,就是那個 dz = a - y 到底怎麼出來
這邊 dz 指的是
L 則是 Loss function ,而 是預測的值,拿來跟 y(groud truth)做相比
然後 Activation function 是用 Sigmoid
接下來就能看到底為何 dz = a - y
其中 的推導:
那就先這樣!!!
我覺得這部影片講得很好,很明確的展示 Forward/Backward 兩者的進行中的畫面
又變得好趕時間!!!