Re: [問題] batch size過大時,為什麼容易overfittin

看板DataScience作者 (如果狗狗飛上天)時間6年前 (2018/12/02 18:02), 6年前編輯推噓5(500)
留言5則, 5人參與, 6年前最新討論串3/3 (看更多)
: 推 youmehim: L1, L2 regularization跟引入noise的關係該怎麼理解? 12/02 15:26 : → youmehim: 我的理解是 regularization可以使得學習的機制分散在各 12/02 15:28 : → youmehim: neuron 不會押寶特定neuron 所以不容易被noise影響 12/02 15:29 不敢說自己的理解完全正確,就單純地分享一下想法. 其實在loss function引入L1,L2,或各種regularization可以看成是對模型的參數假設 了某種先驗分布. 對神經網路中的某一層添加L1,可以看成對該層的參數做了Lapalce分 布的先驗,而添加L2,可以看成是做了Gaussian分布的假設. 這些推導都很容易找到,就 不多說了. 這意味著當我在訓練模型時,在最極端的情況,如果我們使用GD做訓練,優化的路徑應該是 沒有隨機性的,一路奔向鄰近的local min. 然而因為加上了正規化,所以當參數偏離了我 的先驗分布時,就會得到一個penality cost. 所以我們重新把這個N維空間的loss曲面 畫出來就會發現原本奔向local min的路徑現在因為這個penality cost變得充滿了微小 起伏. 但如果網路參數的修正只由輸出的結果決定,縱然有penality,這個loss function 的曲面的長相在每一次迭代中應該是固定的,仍然談不上噪音.而現在網路中的參數跑 進了loss中,而這些參數本身又是要被BP算法給修正的,所以每一次 迭代後,曲面上的的那些因為正規化導致的起伏都跟上一次長的不同了,因為 參數被修正了,而那些新的參數決定了新的loss function長怎樣.所以原本通往local min的道路在GD下應該是確定的,唯一的,現在每一次神經網路的參數修正完後,都給了 你一個長得不太一樣的loss,有著不同的微小起伏.這就相當於在通往local min的道 路上引入了噪音,又變得充滿隨機性了. 以上是從正規化聯繫到噪音的觀點. 但其實我們也可以從噪音聯繫到正規化. 從數學看,當我們在訓練過程中,對每個輸入都加上一個噪音,x -> x + x',假設x'是個 微小的量,原本的從輸入到輸出的映射關係就會從y = f(x)變成了 y= f(x+x'),因為x' 是個小量,我們總是可以對f做泰勒展開,表示成x'的冪次,考慮到噪音本身的平均值是0, 你把這些關係寫下來,代回去常見的loss function,例如MSE中,你也會發現噪音的效果 就相當於在loss function上引入了一個正規化項,這個項的大小就取決於噪音的方差 具體的形式則與噪音的表達式有關,但理論上各種正規化大致上都可以看成是對噪音的 分佈做了一種先驗的假設. (類似文獻其實滿多的,你可以看看這篇 https://goo.gl/eRta2D 內容相對簡單) 所以regularization雖然不像dropout, SGD這樣明目張膽的引入噪音,但本質上(至少 我的理解),各種regularization都可以看做是在訓練過程中引入了某種噪音,而各種 噪音也都可以看成是引入了某種regularization. (注意,我的理解是,把要被BP修正的參數丟進loss才可稱為一種正規化,不是隨便一個 loss我們都可以稱作引入了正規化) 所以除了L1,L2之外,還有很多各式各樣基於訊息熵的正規化被提出來,大致上我也都 覺得可以跟噪音產生關連. 其他有助於提升優化的方法,例如batch normalization,其出發點是為了解決internal covariate shift的問題,但在實現的過程中,因為均值跟方差都是根據mini batch算出 來的,而每個mini batch又是隨機選出來的,換言之這些均值跟方差的參數也變得帶有 隨機性了. 雖然這不是BN想要的,但BN也還是引入了隨機性. 另外一些BN的變體,例如layer normalization, weight normalization等等,其實都有 類似的行為. 所以在訓練中用各種方式引入各式各樣的噪音似乎是走向泛化的必要之惡. 不過這也是可理解的,我們面對的問題是,數據本身就存在了噪音,為了避免模型去迎合 數據上的噪音,我們用其他可控制的,無偏好的噪音去掩蓋掉那些數據上自身的噪音,似 乎是個可想像的選擇. 不過當然啦,這只是自己的一點想法,是對是錯還有待各位自己檢驗了. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 67.161.8.79 ※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1543744957.A.E22.html

12/02 18:36, 6年前 , 1F
12/02 18:36, 1F
※ 編輯: pipidog (67.161.8.79), 12/02/2018 18:40:42

12/02 22:59, 6年前 , 2F
Cool! 有趣的觀點 感謝分享
12/02 22:59, 2F

12/04 11:20, 6年前 , 3F
推有趣的觀點!
12/04 11:20, 3F

12/05 09:41, 6年前 , 4F
12/05 09:41, 4F

12/06 19:45, 6年前 , 5F
12/06 19:45, 5F
文章代碼(AID): #1S0wszuY (DataScience)
文章代碼(AID): #1S0wszuY (DataScience)