訓(xùn)練誤差和泛化誤差
訓(xùn)練誤差(training error)指模型在訓(xùn)練數(shù)據(jù)集上表現(xiàn)出的誤差川梅,泛化誤差(generalization error)指模型在任意一個測試數(shù)據(jù)樣本上表現(xiàn)出的誤差的期望新博,并常常通過測試數(shù)據(jù)集上的誤差來近似帖鸦。
機(jī)器學(xué)習(xí)模型應(yīng)關(guān)注降低泛化誤差焚志。
模型選擇
驗(yàn)證數(shù)據(jù)集
從嚴(yán)格意義上講非区,測試集只能在所有超參數(shù)和模型參數(shù)選定后使用一次剔宪。不可以使用測試數(shù)據(jù)選擇模型,如調(diào)參熏瞄。由于無法從訓(xùn)練誤差估計(jì)泛化誤差,因此也不應(yīng)只依賴訓(xùn)練數(shù)據(jù)選擇模型谬以。鑒于此强饮,我們可以預(yù)留一部分在訓(xùn)練數(shù)據(jù)集和測試數(shù)據(jù)集以外的數(shù)據(jù)來進(jìn)行模型選擇。這部分?jǐn)?shù)據(jù)被稱為驗(yàn)證數(shù)據(jù)集为黎,簡稱驗(yàn)證集(validation set)邮丰。例如,我們可以從給定的訓(xùn)練集中隨機(jī)選取一小部分作為驗(yàn)證集铭乾,而將剩余部分作為真正的訓(xùn)練集剪廉。
K折交叉驗(yàn)證
由于驗(yàn)證數(shù)據(jù)集不參與模型訓(xùn)練,當(dāng)訓(xùn)練數(shù)據(jù)不夠用時炕檩,預(yù)留大量的驗(yàn)證數(shù)據(jù)顯得太奢侈斗蒋。一種改善的方法是K折交叉驗(yàn)證(K-fold cross-validation)捌斧。在K折交叉驗(yàn)證中,我們把原始訓(xùn)練數(shù)據(jù)集分割成K個不重合的子數(shù)據(jù)集泉沾,然后我們做K次模型訓(xùn)練和驗(yàn)證捞蚂。每一次,我們使用一個子數(shù)據(jù)集驗(yàn)證模型跷究,并使用其他K-1個子數(shù)據(jù)集來訓(xùn)練模型姓迅。在這K次訓(xùn)練和驗(yàn)證中,每次用來驗(yàn)證模型的子數(shù)據(jù)集都不同俊马。最后丁存,我們對這K次訓(xùn)練誤差和驗(yàn)證誤差分別求平均。
過擬合和欠擬合
模型訓(xùn)練中經(jīng)常出現(xiàn)的兩類典型問題:
一類是模型無法得到較低的訓(xùn)練誤差柴我,我們將這一現(xiàn)象稱作欠擬合(underfitting)解寝;
另一類是模型的訓(xùn)練誤差遠(yuǎn)小于它在測試數(shù)據(jù)集上的誤差,我們稱該現(xiàn)象為過擬合(overfitting)屯换。
模型復(fù)雜度
為了解釋模型復(fù)雜度编丘,我們以多項(xiàng)式函數(shù)擬合為例。給定一個由標(biāo)量數(shù)據(jù)特征x和對應(yīng)的標(biāo)量標(biāo)簽y組成的訓(xùn)練數(shù)據(jù)集彤悔,多項(xiàng)式函數(shù)擬合的目標(biāo)是找一個K階多項(xiàng)式函數(shù):
來近似?y嘉抓。在上式中,wk是模型的權(quán)重參數(shù)晕窑,b是偏差參數(shù)抑片。與線性回歸相同,多項(xiàng)式函數(shù)擬合也使用平方損失函數(shù)杨赤。特別地敞斋,一階多項(xiàng)式函數(shù)擬合又叫線性函數(shù)擬合。
給定訓(xùn)練數(shù)據(jù)集疾牲,模型復(fù)雜度和誤差之間的關(guān)系:
訓(xùn)練數(shù)據(jù)集大小
影響欠擬合和過擬合的另一個重要因素是訓(xùn)練數(shù)據(jù)集的大小植捎。一般來說,如果訓(xùn)練數(shù)據(jù)集中樣本數(shù)過少阳柔,特別是比模型參數(shù)數(shù)量(按元素計(jì))更少時焰枢,過擬合更容易發(fā)生。此外舌剂,泛化誤差不會隨訓(xùn)練數(shù)據(jù)集里樣本數(shù)量增加而增大济锄。因此,在計(jì)算資源允許的范圍之內(nèi)霍转,我們通常希望訓(xùn)練數(shù)據(jù)集大一些荐绝,特別是在模型復(fù)雜度較高時,例如層數(shù)較多的深度學(xué)習(xí)模型避消。
學(xué)習(xí)鏈接:過擬合欠擬合及其解決方案