0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

機器學習挑戰(zhàn):如何避免機器學習模型過擬合?

MATLAB ? 來源:MATLAB ? 2023-05-11 09:53 ? 次閱讀

分類是機器學習最常見的應用之一。 分類技術(shù)可預測離散的響應 — 例如,電子郵件是不是垃圾郵件,腫瘤是惡性還是良性的。 分類模型可將輸入數(shù)據(jù)劃分成不同類別。 典型的應用包括醫(yī)學成像語音識別和信用評估。

選擇最合適的分類模型,診斷和糾正過擬合是機器學習的基本技能。 那什么是過擬合? 我們又可以如何防止和避免過擬合呢?

什么是過擬合?

過擬合指當模型與訓練數(shù)據(jù)過于接近貼合,以至于不知道如何對新數(shù)據(jù)做出響應時發(fā)生的一種機器學習行為。 過擬合的原因可能是:

機器學習模型太過復雜; 它記憶了訓練數(shù)據(jù)中非常微妙的的模式,而這些模式無法很好地泛化。

訓練數(shù)據(jù)的規(guī)模對于模型復雜度來說太小,和/或者包含大量不相關(guān)的信息。

您可以通過管理模型復雜度和改進訓練數(shù)據(jù)集來防止過擬合。

過擬合與欠擬合

欠擬合與過擬合正相反。 欠擬合指模型不能很好地與訓練數(shù)據(jù)貼合,也無法很好地泛化到新數(shù)據(jù)。 在分類模型和回歸模型中都可能出現(xiàn)過擬合和欠擬合。 下圖說明了過擬合的模型的分類決策邊界和回歸線如何過于緊密地跟隨訓練數(shù)據(jù),而欠擬合的模型的分類決策邊界和回歸線又如何不夠緊密地跟隨訓練數(shù)據(jù)。

76542e86-ef56-11ed-90ce-dac502259ad0.png

與正確擬合的模型相比,過擬合的分類模型和回歸模型對訓練數(shù)據(jù)的記憶太好。

當只針對訓練數(shù)據(jù)查看機器學習模型的計算誤差時,過擬合比欠擬合更難檢測。 因此,為了避免過擬合,在對測試數(shù)據(jù)使用機器學習模型之前對其進行驗證就很重要。

768287ea-ef56-11ed-90ce-dac502259ad0.png

針對訓練數(shù)據(jù),過擬合模型的計算誤差低,而測試數(shù)據(jù)的誤差高。

MATLAB 與 Statistics and Machine Learning Toolbox 和 Deep Learning Toolbox 結(jié)合使用,可以防止機器學習模型和深度學習模型的過擬合。 MATLAB 提供了專為避免模型過擬合而設(shè)計的函數(shù)和方法。 您可以在訓練或調(diào)整模型時使用這些工具來防止過擬合。

如何通過降低模型復雜度來避免過擬合

使用 MATLAB,您可以從頭開始訓練機器學習模型和深度學習模型(如 CNN),或利用預訓練的深度學習模型。為了防止過擬合,請執(zhí)行模型驗證,以確保為數(shù)據(jù)選擇具有合適復雜程度的模型,或使用正則化來降低模型的復雜度。

模型驗證

當對訓練數(shù)據(jù)進行計算時,過擬合模型的誤差較低。因此,在引入新數(shù)據(jù)之前,最好在單獨的數(shù)據(jù)集(即驗證數(shù)據(jù)集)上驗證您的模型。對于 MATLAB 機器學習模型,您可以使用 cvpartition 函數(shù)將數(shù)據(jù)集隨機劃分為訓練集和驗證集。對于深度學習模型,您可以在訓練過程中監(jiān)控驗證準確度。通過模型選擇和超參數(shù)調(diào)整來提高經(jīng)過正確驗證的模型準確度度量應該能夠提高模型處理新數(shù)據(jù)的準確度。

交叉驗證是一種模型評估方法,用于評估機器學習算法對新數(shù)據(jù)集執(zhí)行預測的性能。交叉驗證可以幫助您避免選擇過于復雜而導致過擬合的算法。使用 crossval 函數(shù),通過使用常見的交叉驗證方法來計算機器學習模型的交叉驗證誤差估計值。這些常見方法包括如 k 折法(將數(shù)據(jù)劃分為 k 個隨機選擇的大小大致相等的子集)和留出法(將數(shù)據(jù)按照指定比率隨機劃分為兩個子集)等。

正則化

正則化是一種用于防止機器學習模型中的統(tǒng)計過擬合的方法。正則化算法通常通過對復雜度或粗糙度應用罰分來實現(xiàn)。通過向模型中引入更多信息,正則化算法可以使模型更加簡約和準確,從而處理多重共線性和冗余預測變量。

對于機器學習,您可以在三種流行的正則化方法之間進行選擇:lasso(L1 范數(shù))、脊(L2 范數(shù))和彈性網(wǎng),以用于幾種類型的線性機器學習模型。對于深度學習,您可以在指定的訓練選項中增大 L2 正則化因子,或在您的網(wǎng)絡(luò)中使用丟棄層來避免過擬合。

示例和操作方法

正則化

深度學習提示和竅門

如何通過增強訓練數(shù)據(jù)集來避免過擬合

交叉驗證和正則化通過管理模型復雜度來防止過擬合。 另一種方法是改進數(shù)據(jù)集。 深度學習模型比其他機器學習模型更需要大量的數(shù)據(jù)來避免過擬合。

數(shù)據(jù)增強

當數(shù)據(jù)可用性受限時,可使用數(shù)據(jù)增強方法來向數(shù)據(jù)集添加現(xiàn)有數(shù)據(jù)的隨機版本從而人為擴展訓練數(shù)據(jù)集的數(shù)據(jù)點。 使用 MATLAB,您可以增強圖像、音頻和其他類型的數(shù)據(jù)。 例如,通過隨機化現(xiàn)有圖像的縮放比例和旋轉(zhuǎn)來增強圖像數(shù)據(jù)。

數(shù)據(jù)生成

合成數(shù)據(jù)生成是擴展數(shù)據(jù)集的另一種方法。 使用 MATLAB,您可以使用生成對抗網(wǎng)絡(luò) (GAN) 或數(shù)字孿生(通過仿真生成數(shù)據(jù))來生成合成數(shù)據(jù)。

數(shù)據(jù)清洗

數(shù)據(jù)噪聲會導致過擬合。 減少不想要的數(shù)據(jù)點的一種常見方法是使用 rmoutliers 函數(shù)從數(shù)據(jù)中刪除離群值。

示例和操作方法

使用增強的圖像訓練網(wǎng)絡(luò)

增強深度學習的點云數(shù)據(jù)

使用條款 GAN 生成的合成信號

設(shè)置參數(shù)并訓練卷積神經(jīng)網(wǎng)絡(luò)

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • matlab
    +關(guān)注

    關(guān)注

    185

    文章

    2976

    瀏覽量

    230483
  • 語音識別
    +關(guān)注

    關(guān)注

    38

    文章

    1739

    瀏覽量

    112661
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3243

    瀏覽量

    48842
  • 機器學習
    +關(guān)注

    關(guān)注

    66

    文章

    8418

    瀏覽量

    132646
  • 數(shù)字孿生
    +關(guān)注

    關(guān)注

    4

    文章

    1325

    瀏覽量

    12254

原文標題:機器學習挑戰(zhàn):如何避免機器學習模型過擬合?

文章出處:【微信號:MATLAB,微信公眾號:MATLAB】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    機器學習基礎(chǔ)知識 包括評估問題,理解擬合、欠擬合以及解決問題的技巧

    本章涵蓋了以下主題: · 分類和回歸之外的其他類型的問題; · 評估問題,理解擬合、欠擬合,以及解決這些問題的技巧; · 為深度學習準備數(shù)據(jù)。 請記住,在本章中討論的大多數(shù)技術(shù)都是
    發(fā)表于 07-12 09:28 ?955次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學習</b>基礎(chǔ)知識 包括評估問題,理解<b class='flag-5'>過</b><b class='flag-5'>擬合</b>、欠<b class='flag-5'>擬合</b>以及解決問題的技巧

    機器學習模型評估指標

    機器學習模型指標在機器學習建模過程中,針對不同的問題,需采用不同的模型評估指標。
    發(fā)表于 09-06 12:51 ?1122次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學習</b><b class='flag-5'>模型</b>評估指標

    擬合和欠擬合(1)#機器學習

    機器學習
    未來加油dz
    發(fā)布于 :2023年07月14日 17:15:38

    【下載】《機器學習》+《機器學習實戰(zhàn)》

      312索引  313版權(quán)聲明  316工程師和數(shù)據(jù)科學家處理大量各種格式(如傳感器、圖像、視頻、遙測、數(shù)據(jù)庫等)的數(shù)據(jù)。他們使用機器學習來尋找數(shù)據(jù)中的模式,并建立基于歷史數(shù)據(jù)預測未來結(jié)果的模型
    發(fā)表于 06-01 15:49

    tensorflow機器學習日志

    tensorflow學習日志(四)機器學習(泛化,擬合, 數(shù)據(jù)集,驗證集,測試集)
    發(fā)表于 04-14 06:32

    深度學習擬合/欠擬合的問題及解決方案

    的數(shù)據(jù)可以對未來的數(shù)據(jù)進行推測與模擬,因此都是使用歷史數(shù)據(jù)建立模型,即使用已經(jīng)產(chǎn)生的數(shù)據(jù)去訓練,然后使用該模型擬合未來的數(shù)據(jù)。 在我們機器學習
    發(fā)表于 01-28 06:57

    微型機器學習

    人工智能 AI 正在加快速度從云端走向邊緣,進入到越來越小的物聯(lián)網(wǎng)設(shè)備中。而這些物聯(lián)網(wǎng)設(shè)備往往體積很小,面臨著許多挑戰(zhàn),例如功耗、延時以及精度等問題,傳統(tǒng)的機器學習模型無法滿足要求,那
    發(fā)表于 09-15 09:23

    什么是機器學習? 機器學習基礎(chǔ)入門

    另一方面,機器學習是向計算機提供一組輸入和輸出,并要求計算機識別“算法”(或用機器學習的說法稱為模型)的過程,這種算法每次都將這些輸入轉(zhuǎn)化為
    發(fā)表于 06-21 11:06

    部署基于嵌入的機器學習模型

    1、如何在生產(chǎn)中部署基于嵌入的機器學習模型  由于最近大量的研究,機器學習模型的性能在過去幾年里
    發(fā)表于 11-02 15:09

    區(qū)塊鏈分析中的過度擬合還有什么挑戰(zhàn)

    當與區(qū)塊鏈數(shù)據(jù)集一起使用時,機器學習模型往往會擬合。
    發(fā)表于 02-05 10:35 ?620次閱讀
    區(qū)塊鏈分析中的過度<b class='flag-5'>擬合</b>還有什么<b class='flag-5'>挑戰(zhàn)</b>

    六個構(gòu)建機器學習模型避免的錯誤

    近年來,機器學習在學術(shù)研究領(lǐng)域和實際應用領(lǐng)域得到越來越多的關(guān)注。但構(gòu)建機器學習模型不是一件簡單的事情,它需要大量的知識和技能以及豐富的經(jīng)驗,
    發(fā)表于 05-05 16:39 ?1419次閱讀

    如何評估機器學習模型的性能?機器學習的算法選擇

    如何評估機器學習模型的性能?典型的回答可能是:首先,將訓練數(shù)據(jù)饋送給學習算法以學習一個模型。第二
    發(fā)表于 04-04 14:15 ?1032次閱讀

    精通機器學習之MATLAB分步實施指南

    加載數(shù)據(jù)到部署訓練模型的整個開發(fā)流程。對于每個訓練階段,我們將 演示取得精確模型的關(guān)鍵技術(shù),幫助您掌握更具挑戰(zhàn)性的訓練任務,包 括選擇算法、優(yōu)化模型參數(shù)和
    發(fā)表于 05-29 09:14 ?0次下載

    機器學習算法匯總 機器學習算法分類 機器學習算法模型

    機器學習算法匯總 機器學習算法分類 機器學習算法模型
    的頭像 發(fā)表于 08-17 16:11 ?1111次閱讀

    深度學習模型中的擬合與正則化

    在深度學習的廣闊領(lǐng)域中,模型訓練的核心目標之一是實現(xiàn)對未知數(shù)據(jù)的準確預測。然而,在實際應用中,我們經(jīng)常會遇到一個問題——擬合(Overfitting)。
    的頭像 發(fā)表于 07-09 15:56 ?959次閱讀