原文鏈接:https://developers.google.com/machine-learning/crash-course/generalization
泛化是指模型很好地擬合以前未見過的新數據(從用於創建該模型的同一分布中抽取)的能力。
1- 過擬合的風險
機器學習的目標是對從真實概率分布(已隱藏)中抽取的新數據做出良好預測。
過擬合模型在訓練過程中產生的損失很低,但在預測新數據方面的表現卻非常糟糕。
模型只能從訓練數據集中取樣,無法查看整體情況。
如果某個模型在擬合當前樣本方面表現良好,那么如何相信該模型會對新數據做出良好的預測呢?
奧卡姆剃刀定律:科學家應該優先采用更簡單(而非更復雜)的公式或理論。
運用在機器學習中:機器學習模型越簡單,良好的實證結果就越有可能不僅僅基於樣本的特性。
應用於統計學習理論和計算學習理論領域。這些領域已經形成了泛化邊界,即統計化描述模型根據以下因素泛化到新數據的能力:
- 模型的復雜程度
- 模型在處理訓練數據方面的表現
雖然理論分析在理想化假設下可提供正式保證,但在實踐中卻很難應用。
MLCC側重於實證評估,以評判模型泛化到新數據的能力。
1.1- 獲取新數據
機器學習模型旨在根據以前未見過的新數據做出良好預測。
如何獲得以前未見過的數據呢?
一種方法是將您的數據集分成兩個子集:
- 訓練集 - 用於訓練模型的子集。
- 測試集 - 用於測試模型的子集。
一般來說,在測試集上表現是否良好是衡量能否在新數據上表現良好的有用指標,前提是:
- 測試集足夠大。
- 不會反復使用相同的測試集來作假。
1.2- 機器學習細則
以下三項基本假設闡明了泛化:
- 從分布中隨機抽取獨立同分布 (i.i.d)的樣本。換言之,樣本之間不會互相影響。
- 分布是平穩的;即分布在數據集內不會發生變化。
- 從同一分布的數據划分中抽取樣本。
在實踐中,有時會違背這些假設。例如:
- 想象有一個選擇要展示的廣告的模型。如果該模型在某種程度上根據用戶以前看過的廣告選擇廣告,則會違背 i.i.d. 假設。
- 想象有一個包含一年零售信息的數據集。用戶的購買行為會出現季節性變化,這會違反平穩性。
如果違背了上述三項基本假設中的任何一項,那么就必須密切注意指標。
1.3- 總結
- 如果某個模型嘗試緊密擬合訓練數據,但卻不能很好地泛化到新數據,就會發生過擬合。
- 如果不符合監督式機器學習的關鍵假設,那么我們將失去對新數據進行預測這項能力的重要理論保證。
2- 關鍵詞
泛化 (generalization)
指的是模型依據訓練時采用的數據,針對以前未見過的新數據做出正確預測的能力。
過擬合 (overfitting)
創建的模型與訓練數據過於匹配,以致於模型無法根據新數據做出正確的預測。
預測 (prediction)
模型在收到輸入樣本后的輸出。
平穩性 (stationarity)
數據集中數據的一種屬性,表示數據分布在一個或多個維度保持不變。
這種維度最常見的是時間,即表明平穩性的數據不隨時間而變化。
例如,從 9 月到 12 月,表明平穩性的數據沒有發生變化。
測試集 (test set)
數據集的子集,用於在模型經由驗證集的初步驗證之后測試模型。
與訓練集和驗證集相對。
訓練集 (training set)
數據集的子集,用於訓練模型。
與驗證集和測試集相對。