outline
- 神經(jīng)元與神經(jīng)網(wǎng)絡(luò)
- 激活函數(shù)
- 前向算法
- 損失函數(shù)
- 反向傳播算法
- 數(shù)據(jù)的準(zhǔn)備
- PyTorch實例:單層神經(jīng)網(wǎng)絡(luò)實現(xiàn)
3.5 反向傳播算法
在傳統(tǒng)的機器學(xué)習(xí)方法(比如邏輯回歸)中,可以通過梯度下降來確定權(quán)重的調(diào)整。邏輯回歸可以看作沒有隱含層的神經(jīng)網(wǎng)絡(luò),但是在多層感知機中如何獲取隱含層的權(quán)值是很困難的,我們能做的是計算輸出層的誤差更新參數(shù),但是隱含層誤差是不存在的。雖然無法直接獲得隱含層的權(quán)值,但是我們知道在權(quán)重變化后相應(yīng)的輸出誤差的變化,那么能否通過輸出值和期望的輸出間的差異來間接調(diào)整權(quán)值呢?
預(yù)測值和真實值之間的差別可以評估輸出層的誤差,然后根據(jù)輸出層誤差,計算最后一個隱含層中的每個神經(jīng)元對輸出層誤差影響了多少,最后一層隱含層的誤差又由其前一層的隱含層的計算得出。如此類推,直到輸入層。這就是反向傳播算法的思想。