过拟合问题——正则化方法
? ? ? 看了很多資料,本身想放一個正則化的概念的,實在不敢放,怕嚇跑一堆人,所以,將就吧。
? ? ? 首先,我們知道正則化(Regularization)是解決過擬合問題的,簡單來說,過擬合(也叫高方差)就是訓練樣本效果比較好,但是在測試集上的效果就比較差了,官方一點的話就是模型的泛化能力太差。
? ? ? 泛化能力:一個假設模型能夠應用到新樣本的能力。
? ? ? ?解決過擬合我們可以采用
? ? ?(1)丟棄一些不能幫助我們正確預測的特征,可以手工保留,也可以采用算法(例PCA)
? ? ?(2)正則化處理。保留所有的特征,但是減少參數的大小。
? ? ? 正則化的方式有很多,常見的有數據增強、L1正則化,L2正則化,早停,Dropout等。
? ? ? 正則化代價函數 =經驗代價函數 +正則化參數 *正則化項
? ? ? 其中,經驗損失函數就是我們所說的損失函數,最小化誤差讓模型更好擬合訓練集
? ? ? 范數的概念:
? ? ? ?
?從概率角度進行分析,很多范數約束相當于對參數添加先驗分布,其中L2范數相當于參數服從高斯先驗分布,L1范數相當于拉普拉斯分布。從貝葉斯的角度來分析, 正則化是為模型參數估計增加一個先驗知識,先驗知識會引導損失函數最小值過程朝著約束方向迭代。
?相關資料表示:
?L0和L1可以解決稀疏問題
?L0 問題是NP組合難問題,對較大規模數據無法直接求解;
?存在兩種直接求解L0問題的算法:
(1)貪婪算法
(2)門限算法
?問題:
(1)貪婪算法時間代價過高,無法保證收斂到全局最優
(2)門限算法時間代價低,但對數據噪聲十分敏感。解不具有連續性 ,無法保證全局最優解。
? L0應用場景:壓縮感知、稀疏編碼
? L0過渡到L1:從一個組合優化問題放松 到凸優化問題來解,L1范數是L0范數的最優凸近似
??實線的橢圓代表示沒有正則化目標的等值線,虛線圓圈表示L1正則化的等值線
? 里邊涉及一堆數學推理,我簡化來說,L1正則化可以產生稀疏矩陣(去掉沒用的特征,將權重置為0),有利于特征選擇。
? 擴充:參考https://wenku.baidu.com/view/00613bc4f78a6529657d536c.html?from=search
??
? L2(Tikhonov正則) 權重衰減
? 目標是通過向目標函數添加一個正則項,使權重更加接近原點。
? 實線的橢圓代表示沒有正則化目標的等值線,虛線圓圈表示L2正則化的等值線
??
? 在嶺回歸中,我們主要解決的問題就是特征數大于樣本數的情況,也是奇異矩陣問題。
? 奇異矩陣:若存在X的列間存在完全的線性依賴,即它的某一或某些列元素正好是另一或另一列元素的線性函數,這稱為共線性 ? 或多重共線性。X的共線性必然導致的列間和行間存在共性,并使得奇異,即行列式的值為0,。則無法求解矩陣的逆。
? 在回歸分析中,存在著近似于但不同于奇異矩陣的情況,即行列式的值近似于0,此類矩陣通常稱為病態矩陣或者近奇異矩陣。 ? L2范數有助于計算病態問題。
??
總結
以上是生活随笔為你收集整理的过拟合问题——正则化方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 孪生网络图像相似度_孪生网络(Siame
- 下一篇: 已知两点坐标求水平距离_知道两个点的坐标