過擬合(overfitting):模型只能擬合訓練數據的狀態。即過度訓練。
避免過擬合的幾種方法:
①增加全部訓練數據的數量(最為有效的方式)
②使用簡單的模型(簡單的模型學不夠,復雜的模型學的太多),這里的簡單指的是不要過于復雜
③正則化(對目標函數后加上正則化項):使得這個“目標函數+正則化項”的值最小,即為正則化,用防止參數變得過大(參數值變小,意味著對目標函數的影響變小),λ是正則化參數,代表正則化懲罰的強度,當λ=0時,意味著不使用正則化,反正λ越大,代表對參數的變大抑制作用越強。
?兩種正則化方法:
①L1正則化使得對判定為不需要的參數會直接讓它變為0,即直接去除不要的變量
②L2正則化會抑制參數,使變量的影響不會過大。
?欠擬合(underfitting):與過擬合狀態相反,即過度不訓練。
過擬合就是能很好擬合訓練數據,對測試數據的擬合效果不好;欠擬合是既不能擬合訓練數據,又不能擬合測試數據;所以要判斷模型是過擬合還是欠擬合通過測試數據的精度數值觀測是無法區分的。
那么怎么通過數值判斷模型是過擬合還是欠擬合狀態?
欠擬合:訓練精度下降,測試精度上升
欠擬合圖像特點:訓練曲線和測試曲線最終趨于一個定值,這個定值明顯大于1
過擬合:訓練精度一直很高,測試精度上升
過擬合圖像特點:訓練曲線趨于一個定值a,測試曲線趨于一個定值b,a和b之間有一定且明顯的差距