1.epoch設定
epoch太小,可能欠擬合,但可能因為太慢不得不減小epoch
epoch太大,會過擬合,導致準確率下降。
如下圖,顯然epoch=2時準確率下降,已經過擬合了
2.學習率選擇
fast.ai中有乙個learn.lr_find(),找學習率(x)和loss(y)的曲線中斜率最大的即可。但作者又說要找min的1e-1的更高一點,也就是1e-2.所以這裡不太清晰。
3.總結
4.應該僅在全連線層上使用dropout操作,並在卷積層之間使用批量標準化。
5.權重衰減(l2正則化)的作用
作用:權重衰減(l2正則化)可以避免模型過擬合問題。
思考:l2正則化項有讓w變小的效果,但是為什麼w變小可以防止過擬合呢?
原理:(1)從模型的複雜度上解釋:更小的權值w,從某種意義上說,表示網路的複雜度更低,對資料的擬合更好(這個法則也叫做奧卡姆剃刀),而在實際應用中,也驗證了這一點,l2正則化的效果往往好於未經正則化的效果。(2)從數學方面的解釋:過擬合的時候,擬合函式的係數往往非常大,為什麼?如下圖所示,過擬合,就是擬合函式需要顧忌每乙個點,最終形成的擬合函式波動很大。在某些很小的區間裡,函式值的變化很劇烈。這就意味著函式在某些小區間裡的導數值(絕對值)非常大,由於自變數值可大可小,所以只有係數足夠大,才能保證導數值很大。而正則化是通過約束引數的範數使其不要太大,所以可以在一定程度上減少過擬合情況。
深度學習知識點2
1.為什麼引入非線性啟用函式?引入非線性啟用函式,可以使深層的神經網路不再是線性的輸入組合,而是可以逼近任意函式,如果不使用啟用函式,在這種情況下每一層的輸出都是上一層輸入的線性函式,無論神經網路的有多少層,輸出的最終結果都是乙個線性組合,與沒有隱藏層的效果相差不多,也就成了最原始的感知機了。2.為...
深度學習的知識點
神經網路 e subseteq v times v,w v times v to r,sigma v times r to r 輸出函式 f v 遞迴定義為 beginf v x v if nexists u,in e f v sigma v,y v y v sum w v,u f u if exi...
深度學習知識點總結(二)
原 for dog,cat in zip dp.dogs,dp.cats 1000 報錯 typeerror zip object is not subscriptable 解決方法 使用list包裝zip物件,如下,for dog,cat in list zip dp.dogs,dp.cats 1...