一.前向傳播與反向傳播的理解:
?
二.模型訓練遇到的問題
在模型訓練中,我們可能會遇到效果不好的情況,那么我們應該怎么思考切入,找到問題所在呢?
流程圖如下:
第一個就是去看訓練的損失函數值情況。如果損失較大,那么就有可能是兩種情況:
(1)模型過于簡單:如圖:當你設計的模型所能擬合的函數集合(藍色區域)這么大時,即使你找了藍色區域內最優的函數(optimization最優),但是真正完美擬合的函數不能通過該模型擬合(不在藍色區域內),所以loss較大。
(2) optimization效果不佳(梯度下降難以到達最優解)
基于以上情況,我們怎么去判別呢?(我們可以去增加模型的復雜度,如果新模型的loss在training data上比原model還高,那就說明是optimization的問題了)
假如經過努力,你已經可以讓training data的loss變得小了,這時我們看testing data的loss,假如我們發現testing data的loss較大,這時候也有兩種可能得原因:
(1) over fitting :在training data上的loss好,在testing 上的loss差(缺一不可)才叫過擬合
比如:如上圖,所有的data擬合的預期目標函數是二次函數,但由于?某些原因(原因很多,這里暫不探討),導致擬合的函數雖然能夠在有training data限制的地方,表現的很好,但是在其他地方是隨機預測的(函數彈性過大,如黑色箭頭所指函數),這使得testing data在該函數的loss較大
解決方法:add training data?or data augmentation?or regularation
今天先學到這啦
謝謝