在學(xué)習(xí)器訓(xùn)練過程中經(jīng)常會遇到過擬合的情況,模型記錄噪聲和不相關(guān)特征,在新數(shù)據(jù)面前訓(xùn)練效果不佳。這樣的學(xué)習(xí)器沒有從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)真正有意義的模式,而只是記錄了它所看到的一切,解決此問題的一種解決方法是正則化[4]。
一、正則化概念
1、基礎(chǔ)概念
正則化一般具有如下形式[1]
其中第一項為經(jīng)驗風(fēng)險,第二項為正則化項(regularizer)也稱為懲罰項(penalty term),為調(diào)整兩者之間關(guān)系的系數(shù)。
正則化的作用是選擇經(jīng)驗風(fēng)險和模型復(fù)雜度同時較小的模型。正則化項一般是模型復(fù)雜度單調(diào)遞增函數(shù),模型越復(fù)雜,值越大。給模型的參數(shù)加上一定的正則約束,這樣在優(yōu)化目標函數(shù)的同時能夠避免權(quán)值過大帶來過擬合的風(fēng)險。
正則化是模型防止過擬合的核心技術(shù)之一。
2、可控參數(shù)lambda
正則項系數(shù)lambda,調(diào)整經(jīng)驗誤差項和正則項之間的系數(shù)。
當lamba=0時,相當于公式?jīng)]有正則項,模型全力討好第一項,將經(jīng)驗誤差進行最小化,往往也是最容易發(fā)生過擬合的時候。隨著lamba的增大,正則化項在模型中的話語權(quán)越來越大,對模型復(fù)雜性的懲罰因子也越來越厲害。
3、公式地位
該公式是有監(jiān)督學(xué)習(xí)的核心原理,是機器學(xué)習(xí)中最核心、最關(guān)鍵、最能概述監(jiān)督學(xué)習(xí)的核心思想原理。
會發(fā)現(xiàn)80%的單一機器學(xué)習(xí)模型都是這個公式可以解釋的,無非是對經(jīng)驗風(fēng)險、正則化項變著法換樣子而已。
擴展第一項的經(jīng)驗風(fēng)險,探究常見的機器學(xué)習(xí)模型與對應(yīng)經(jīng)驗風(fēng)險關(guān)系【暫放】
二、常見的正則化項
正則化項的可選擇比較多的,比較常見的是L1、L2正則項
1、L1正則化[2]
采用L1范數(shù)的正則化又稱為lasso,比如在sklearn.linear_mode下的Lasso,LassoCV, LassoLarsCV就是線性回歸與L1正則項的組合,LassoCV, LassoLarsCV使用交叉驗證等方式獲得最優(yōu)的值
使用L1范數(shù)作為正則化項,下面公式稱為lasso
可用于特征選擇,降低特征維度
2、L2正則化[2]
使用L2范數(shù)作為正則化項,下面公式稱為ridge
L2是正則化中的天選之子,在各種防止過擬合和正則化處理過程中,L2正則化可謂風(fēng)頭無兩
由于偏導(dǎo)方面的優(yōu)勢,L2正則化項的復(fù)雜度比L1要好。
3、Elastic-Net正則化
Elastic-Net正則化是嶺回歸和Lasso回歸的組合,Zou和 Hastie (2005) 引入了 Elastic Net 正則化,可以通過參數(shù)調(diào)節(jié)L1正則化和L2正則化的權(quán)重
補充:范數(shù)
范數(shù)可以理解為距離度量的方法。
向量空間中的向量都是有大小的,這個大小如何度量,就是用范數(shù)來度量的,不同的范數(shù)都可以來度量這個大小,就好比米和尺都可以來度量遠近一樣
當p=1時就是L1范數(shù),p=2時就是L2范數(shù)
參考資料
[1] 李航《統(tǒng)計學(xué)習(xí)方法》
[2] 周志華《機器學(xué)習(xí)》
[3] L1正則化引起稀疏解的多種解釋:https://zhuanlan.zhihu.com/p/50142573
[4] L1正則化的稀疏性:https://vimsky.com/article/3852.html
[5] 深度學(xué)習(xí)中的正則化:https://github.com/MingchaoZhu/DeepLearning/blob/master/7%20%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E4%B8%AD%E7%9A%84%E6%AD%A3%E5%88%99%E5%8C%96.pdf