反向傳播

Python 深度學習入門

Dan Becker

Data Scientist and contributor to Keras and TensorFlow libraries

反向傳播

ch2_3_v2.003.png

Python 深度學習入門

反向傳播

ch2_3_v2.004.png

Python 深度學習入門

反向傳播

ch2_3_v2.005.png

Python 深度學習入門

反向傳播

ch2_3_v2.006.png

  • 讓梯度下降能更新神經網路中所有權重(取得每個權重的梯度)
  • 源自微積分的鏈鎖律
  • 理解流程很重要,但你通常會用已實作好的函式庫
Python 深度學習入門

反向傳播流程

  • 嘗試估計損失函式對各權重的斜率
  • 先做前向傳播以計算預測與誤差
Python 深度學習入門

反向傳播流程

ch2_3_v2.013.png

Python 深度學習入門

反向傳播流程

ch2_3_v2.014.png

Python 深度學習入門

反向傳播流程

  • 逐層往回傳遞
  • 權重的梯度為以下乘積:
    1. 輸入該權重的節點值
    2. 損失函式對其輸入節點的斜率
    3. 該節點啟用函式的斜率
Python 深度學習入門

ReLU 啟用函式

ch2_3_v2.022.png

Python 深度學習入門

反向傳播流程

  • 也需要追蹤損失函式對各節點值的斜率
  • 節點值的斜率等於所有由該節點輸出的權重斜率之和
Python 深度學習入門

一起來練習吧!

Python 深度學習入門

Preparing Video For Download...