[Day 11] 驗證(Validation) - iT 邦幫忙 | 就愛喝咖啡
2022年9月22日—而交叉驗證的概念為將訓練資料集在進行切分,拿取部分資料作為驗證資料...此方法為k-foldcross-validation的特例,則是將k令為訓練資料集的總數 ...
在進行模型訓練時,通常會將資料切一小部分來進行驗證。驗證資料集通常可用來檢視訓練過程中模型是否不斷的進步,而如何切分資料及,則可以用數個交叉驗證的方法來進行。
在大部分的情況,資料會被切分出訓練資料集和測試資料集,在模型訓練時僅會使用訓練資料集,而測試資料集則被用來評估模型的表現,最理想的模型為在測試資料集且訓練資料集皆可以達到很好的表現。而交叉驗證的概念為將訓練資料集在進行切分,拿取部分資料作為驗證資料集,在模型訓練和參數調整時,使用驗證資料集進行驗證,確認該次迭代所計算出的損失函數是否有減少或其他模型衡量變數是否有較好的表現,在確認模型的表現達到該階段最佳時,便會使用測試資料集去檢查模型的表現,較常使用的交叉驗證法如下:
Hold-Out Validation 圖片來源:連結[1]此方法為最易操作的交叉驗證,意即將資料按照比例分成三部分,訓練資料、驗證資料、測試資料。只有在訓練資料會放入模型進行訓練,其餘的兩部分則會拿來驗證模型的好壞。
K-fold Cross-Validation 圖片來源:連結[2] 此方法目前較受到歡迎,k-fold的k代表的是將訓練資料切分為k組,每次將(k-1)組資料作為訓練資料,1組作為驗證資料,重複迭代k次。K的數量可根據資料數量來做決定。
Leave One Out Cross-Validation (LOOCV) 圖片來源:連結[3]
此方法為k-fold cross-validation的特例,則是將k令為訓練資料集的總數量N,則在每次訓練時,僅會使用一筆資料來作為驗證資料,其餘的N-1筆會作為訓練資料放入模型當中。
Bootstrap 圖片來源:...