1. 程式人生 > >如何解決過擬合(overfitting)問題?

如何解決過擬合(overfitting)問題?

什麼是過擬合?

為了得到一致假設而使假設變得過度嚴格稱為過擬合。過擬合的模型一般對訓練資料表現很好,而對測試資料表現很差。

如何解決過擬合問題?

  1. early stopping:可以設定一個迭代截斷的閾值,到了這個閾值迭代終止;也可以設定兩次迭代之間的accuracy提高很小的時候,停止迭代。
  2. 資料集擴增:從資料來源採集更多資料;複製原有資料並增加隨機噪聲;重取樣;根據當前資料集估計資料分佈引數,使用該分佈產生更多資料。
  3. L1 L2正則化:使整體cost取較大值,避免某些特徵權重過大。L1: 0附近引數趨於0,降低模型複雜度,防止過擬合;0處不可求導,w=0時,用未經正則化的更新方程來更新;L2: 使引數w變小加劇,更小的w意味著更低的模型複雜度。
  4. Dropout:隨機刪除一些隱藏層神經元,使這些單元不更新。

原文見該地址