什麼是過度擬合?

過度擬合是一種不理想的機器學習行為,當機器學習模型可為訓練資料提供準確的預測,而不是針對新資料提供準確的預測時,就會發生此行為當數據科學家使用機器學習模型進行預測時,他們首先在已知的數據集上訓練模型。然後,根據這些資訊,模型會嘗試預測新資料集的結果。過度擬合模型可能會提供不準確的預測,而且無法對所有類型的新資料執行良好。

為什麼會發生過度擬合?

只有當機器學習模型一般化為其領域內所有類型的資料時,才能獲得準確的預測。當模型無法一般化,並且與訓練資料集過於緊密擬合時,就會發生過度擬合。過度擬合是由於以下幾個原因而發生的,例如:
•    訓練資料大小太小,且不含足夠的資料範例,無法準確呈現所有可能的輸入資料值。
•    訓練資料包含大量不相關的資訊,稱為雜訊資料。
•    模型在單一範例資料集上訓練時間過長。
•    模型複雜度較高,因此可以學習訓練資料中的雜訊。

過度擬合範例
假設一個使用案例,其中機器學習模型必須分析相片並識別其中包含狗的相片。如果機器學習模型是在包含大多數戶外公園狗狗相片的資料集上進行訓練,則該模型可能會學習使用草作為分類功能,並且可能無法識別室內的狗。
另一個過度擬合的範例是機器學習演算法,其透過分析家庭收入、過去的學業成績和家長的學歷資格等多個因素,來預測大學生的學業成績和畢業成果。然而,測試資料僅包含特定性別或民族的候選人。在此案例中,對於測試資料集之外性別或民族的候選人,過度擬合會導致演算法的預測準確度下降。

如何偵測過度擬合?

偵測過度擬合模型的最佳方法︰在更多資料上測試機器學習模型,並全面呈現可能的輸入資料值和類型。通常,訓練資料的一部分用作測試資料,以檢查過度擬合。測試資料中的高錯誤率表示過度擬合。測試過度擬合的其中一種方法如下。
K 折交叉驗證
交叉驗證是實務中使用的測試方法之一。在此方法中,資料科學家將訓練集分為 K 個相等大小的子集或稱為折的範例集。訓練程序包含一系列反覆運作。在每次反覆運作中,步驟如下:
1.    保留一個子集作為驗證資料,並在剩餘的 K-1 子集上訓練機器學習模型。
2.    觀察模型在驗證範例上的執行方式。
3.    根據輸出資料品質對模型效能進行評分。


重複執行反覆運作,直至您在每個範例集上測試模型。然後,您可以對所有反覆運作的評分求平均值,以取得預測模型的最終評定。

如何防止過度擬合?

您可以透過多樣化和擴展訓練資料集,或者使用一些其他資料科學策略 (如下所示策略),來防止過度擬合。
提前停止
在機器學習模型學習資料中的雜訊之前,提前停止會暫停訓練階段。然而,把握好時機很重要;否則模型仍然無法提供準確的結果。
剪除
建置模型時,您可能會識別影響最終預測的若干特徵或參數。特徵選擇 (或剪除) 可識別訓練集內最重要的特徵,並排除不相關的特徵。例如,若要預測影像是動物還是人類,可以查看各種輸入參數,例如臉部形狀,耳朵位置,身體結構等。您可以優先考慮臉部形狀並忽略眼睛的形狀。
正規化
正規化是尋求減少過度擬合的訓練/最佳化技術的集合。這些方法根據重要性對特徵進行分級,藉此嘗試消除那些不會影響預測結果的因素。例如,數學計算會將懲罰值套用至影響最小的特徵。假設一個統計模型嘗試預測一座城市在 20 年後的住房價格。正規化會對人口增長和平均年收入等特徵賦予較低懲罰值,但對城市年平均溫度則賦予較高懲罰值。
整合
整合將多個單獨的機器學習演算法預測相結合。有些模型被稱為弱學習者,因為其結果往往不準確。整合法結合所有弱學習者,以取得更準確的結果。他們使用多個模型來分析範例資料,並選擇最準確的結果。兩種主要的整合方法是套袋法和提升法。提升法會一個接一個地訓練不同的機器學習模型,以取得最終結果,而套袋法則會平行訓練這些模型。
資料增強
資料增強是一種機器學習技術,每次模型處理範例資料時,都會對其稍做變更。您可以透過較小地變更輸入資料來實現。在審核中完成後,資料增強會使訓練集在模型中看起來是唯一的,並防止模型學習其特徵。例如,將平移、翻轉和旋轉等轉換套用至輸入影像。

 

什麼是擬合不足?

擬合不足是指當模型無法判斷輸入與輸出資料間有意義的關係時,發生的另一種錯誤類型。如果模型尚未在大量資料點訓練適當的時間長度,您會得到擬合不足的模型。
擬合不足與過度擬合
擬合不足模型會出現較高的偏差,它們會為訓練資料和測試集提供不正確的結果。另一方面,過度擬合模型會出現較高的差異,它們會為訓練集提供準確的結果,但不能為測試集提供準確的結果。模型訓練結果越多,導致的偏差就越少,但差異可能會增加。資料科學家的目標是在擬合模型時,尋找擬合不足與過度擬合間的最佳位置。適當擬合的模型可快速為可見和不可見的資料集建立主導趨勢。

AWS 如何最大限度地減少機器學習模型中的過度擬合錯誤?

您可以使用 Amazon SageMaker 來建置、訓練和部署機器學習模型,用於具有全受管基礎設施、工具和工作流程的任何使用案例。Amazon SageMaker 具有稱為 Amazon SageMaker Debugger 的內建功能,可自動分析訓練期間產生的資料,如輸入、輸出和轉換。因此,它可偵測和報告過度擬合和其他不准確性,而無需人工干預。

例如,您可以:

  • 達到所需準確度時,自動停止訓練程序。
  • 即時擷取訓練指標。
  • 偵測到過度擬合時接收提醒。

減少訓練機器學習模型的時間和成本。立即建立免費帳戶,開始在 AWS 上使用機器學習!

AWS 過度擬合後續步驟

查看額外的產品相關資源
AWS 上的免費機器學習服務 
註冊免費帳戶

立即存取 AWS 免費方案。 

註冊 
開始在主控台進行建置

開始在 AWS 管理主控台進行建置。

登入