D81:想請教反向傳播與正規化兩個是如何作用?
教學中有提到
Cost function = Loss + Regularization
但是之前的課程也有提到反向傳播的梯度下降也可以透過學習率來控制權重大小,
然後正規化也是用來控制權重的大小,
但是DNN的神經元可以非常深,舉例來說可以用四個神經元連接最後算出一個LOSS
以正向傳播來說是 loss = f4(f3(f2(f1(x)))
反向傳播是某神經元去求導數 ,
所以想請問正規化是在正向傳播的過程中進行參與 (ex = >loss = f4(f3(f2(f1(x)+L1)+L1)+L1 ) + L1)
還是跟反向傳播一樣是在最後計算出最終的LOSS之後去計算與調整權重
如果是在過程中就變成反向傳播會再去考慮正規化的影響,如果是同樣都在最後才計算就又會有誰先誰後的問題?
有點搞不太清楚 還請指教 感謝
回答列表
-
2020/11/09 上午 00:30張維元 (WeiYuan)贊同數:3不贊同數:0留言數:5
嗨,
Regularization 是對一個 Loss Function 內的設定,Backpropagation 是對多個 Loss Function 間求最佳的解的方法,層次上不太一樣。
很高興可以在這次問答進行討論,如果還有不懂或是模糊的部分也歡迎持續追問。期待你的互動與鼓勵創造出不同更深度的討論。歡迎加入我自己經營的Line 群組社群,會有不定時舉辦的分享活動,一起來玩玩吧!
-
2020/12/01 下午 07:24Noah贊同數:1不贊同數:0留言數:0
我們先來看regularization 做了什麼: L1:在loss後面加上全部的權重總和 L2:在loss後面加上全部權重的平方和 都和權重總和有關係 然後cost function 的目的是什麼?透過梯度下降法讓cost function 的值越來越小。 所以把權重的總和加到cost function合而為一體就意味著:你希望把權重控制的越小越好。 權重值越小越好有幾個目的: 1. 減少overfitting,因為權重你希望變小,縮限了權重的範圍,降低模型的複雜度 2. 承上,有種技巧叫剪枝壓縮,剪枝就是搭配L1做稀疏訓練,讓一些無用的權重值趨近0,而0乘上任何數皆為0,所以就可以避開不計算,減少運算量 大致如此