分類是機器學習最常見的應用之一。 分類技術可預測離散的響應 — 例如,電子郵件是不是垃圾郵件,腫瘤是惡性還是良性的。 分類模型可將輸入數據劃分成不同類別。 典型的應用包括醫學成像、語音識別和信用評估。
選擇最合適的分類模型,診斷和糾正過擬合是機器學習的基本技能。 那什么是過擬合? 我們又可以如何防止和避免過擬合呢?
什么是過擬合?
過擬合指當模型與訓練數據過于接近貼合,以至于不知道如何對新數據做出響應時發生的一種機器學習行為。 過擬合的原因可能是:
機器學習模型太過復雜; 它記憶了訓練數據中非常微妙的的模式,而這些模式無法很好地泛化。
訓練數據的規模對于模型復雜度來說太小,和/或者包含大量不相關的信息。
您可以通過管理模型復雜度和改進訓練數據集來防止過擬合。
過擬合與欠擬合
欠擬合與過擬合正相反。 欠擬合指模型不能很好地與訓練數據貼合,也無法很好地泛化到新數據。 在分類模型和回歸模型中都可能出現過擬合和欠擬合。 下圖說明了過擬合的模型的分類決策邊界和回歸線如何過于緊密地跟隨訓練數據,而欠擬合的模型的分類決策邊界和回歸線又如何不夠緊密地跟隨訓練數據。
與正確擬合的模型相比,過擬合的分類模型和回歸模型對訓練數據的記憶太好。
當只針對訓練數據查看機器學習模型的計算誤差時,過擬合比欠擬合更難檢測。 因此,為了避免過擬合,在對測試數據使用機器學習模型之前對其進行驗證就很重要。
針對訓練數據,過擬合模型的計算誤差低,而測試數據的誤差高。
將 MATLAB 與 Statistics and Machine Learning Toolbox 和 Deep Learning Toolbox 結合使用,可以防止機器學習模型和深度學習模型的過擬合。 MATLAB 提供了專為避免模型過擬合而設計的函數和方法。 您可以在訓練或調整模型時使用這些工具來防止過擬合。
如何通過降低模型復雜度來避免過擬合
使用 MATLAB,您可以從頭開始訓練機器學習模型和深度學習模型(如 CNN),或利用預訓練的深度學習模型。為了防止過擬合,請執行模型驗證,以確保為數據選擇具有合適復雜程度的模型,或使用正則化來降低模型的復雜度。
模型驗證
當對訓練數據進行計算時,過擬合模型的誤差較低。因此,在引入新數據之前,最好在單獨的數據集(即驗證數據集)上驗證您的模型。對于 MATLAB 機器學習模型,您可以使用 cvpartition 函數將數據集隨機劃分為訓練集和驗證集。對于深度學習模型,您可以在訓練過程中監控驗證準確度。通過模型選擇和超參數調整來提高經過正確驗證的模型準確度度量應該能夠提高模型處理新數據的準確度。
交叉驗證是一種模型評估方法,用于評估機器學習算法對新數據集執行預測的性能。交叉驗證可以幫助您避免選擇過于復雜而導致過擬合的算法。使用 crossval 函數,通過使用常見的交叉驗證方法來計算機器學習模型的交叉驗證誤差估計值。這些常見方法包括如 k 折法(將數據劃分為 k 個隨機選擇的大小大致相等的子集)和留出法(將數據按照指定比率隨機劃分為兩個子集)等。
正則化
正則化是一種用于防止機器學習模型中的統計過擬合的方法。正則化算法通常通過對復雜度或粗糙度應用罰分來實現。通過向模型中引入更多信息,正則化算法可以使模型更加簡約和準確,從而處理多重共線性和冗余預測變量。
對于機器學習,您可以在三種流行的正則化方法之間進行選擇:lasso(L1 范數)、脊(L2 范數)和彈性網,以用于幾種類型的線性機器學習模型。對于深度學習,您可以在指定的訓練選項中增大 L2 正則化因子,或在您的網絡中使用丟棄層來避免過擬合。
示例和操作方法
正則化
深度學習提示和竅門
如何通過增強訓練數據集來避免過擬合
交叉驗證和正則化通過管理模型復雜度來防止過擬合。 另一種方法是改進數據集。 深度學習模型比其他機器學習模型更需要大量的數據來避免過擬合。
數據增強
當數據可用性受限時,可使用數據增強方法來向數據集添加現有數據的隨機版本從而人為擴展訓練數據集的數據點。 使用 MATLAB,您可以增強圖像、音頻和其他類型的數據。 例如,通過隨機化現有圖像的縮放比例和旋轉來增強圖像數據。
數據生成
合成數據生成是擴展數據集的另一種方法。 使用 MATLAB,您可以使用生成對抗網絡 (GAN) 或數字孿生(通過仿真生成數據)來生成合成數據。
數據清洗
數據噪聲會導致過擬合。 減少不想要的數據點的一種常見方法是使用 rmoutliers 函數從數據中刪除離群值。
示例和操作方法
使用增強的圖像訓練網絡
增強深度學習的點云數據
使用條款 GAN 生成的合成信號
審核編輯:湯梓紅
-
matlab
+關注
關注
185文章
2976瀏覽量
230484 -
語音識別
+關注
關注
38文章
1739瀏覽量
112661 -
模型
+關注
關注
1文章
3244瀏覽量
48843 -
機器學習
+關注
關注
66文章
8418瀏覽量
132646 -
數字孿生
+關注
關注
4文章
1325瀏覽量
12254
原文標題:機器學習挑戰:如何避免機器學習模型過擬合?
文章出處:【微信號:MATLAB,微信公眾號:MATLAB】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論