线性回归——lasso回归和岭回归(ridge regression)
目錄
- 線性回歸——最小二乘
- Lasso回歸和嶺回歸
- 為什么 lasso 更容易使部分權(quán)重變?yōu)?0 而 ridge 不行?
- References
線性回歸很簡單,用線性函數(shù)擬合數(shù)據(jù),用 mean square error (mse) 計算損失(cost),然后用梯度下降法找到一組使 mse 最小的權(quán)重。
lasso 回歸和嶺回歸(ridge regression)其實就是在標準線性回歸的基礎(chǔ)上分別加入 L1 和 L2 正則化(regularization)。
本文的重點是解釋為什么 L1 正則化會比 L2 正則化讓線性回歸的權(quán)重更加稀疏,即使得線性回歸中很多權(quán)重為 0,而不是接近 0?;蛘哒f,為什么 L1 正則化(lasso)可以進行 feature selection,而 L2 正則化(ridge)不行。
線性回歸——最小二乘
線性回歸(linear regression),就是用線性函數(shù) \(f(\bm x) = \bm w^{\top} \bm x + b\) 去擬合一組數(shù)據(jù) \(D = \{(\bm x_1, y_1), (\bm x_2, y_2), ..., (\bm x_n, y_n)\}\) 并使得損失 \(J = \frac{1}{n}\sum_{i = 1}^n (f(\bm x_i) - y_i)^2\) 最小。線性回歸的目標就是找到一組 \((\bm w^*, b^*)\),使得損失 \(J\) 最小。
線性回歸的擬合函數(shù)(或 hypothesis)為:
\[ f(\bm x) = \bm w^{\top} \bm x + b \tag{1} \]
cost function (mse) 為:
\[ \begin{split} J &= \frac{1}{n}\sum_{i = 1}^n (f(\bm x_i) - y_i)^2 \\ & = \frac{1}{n}\sum_{i = 1}^n (\bm w^{\top} \bm x_i + b - y_i)^2 \end{split} \tag{2} \]
Lasso回歸和嶺回歸
Lasso 回歸和嶺回歸(ridge regression)都是在標準線性回歸的基礎(chǔ)上修改 cost function,即修改式(2),其它地方不變。
Lasso 的全稱為 least absolute shrinkage and selection operator,又譯最小絕對值收斂和選擇算子、套索算法。
Lasso 回歸對式(2)加入 L1 正則化,其 cost function 如下:
\[ J = \frac{1}{n}\sum_{i = 1}^n (f(\bm x_i) - y_i)^2 + \lambda \|w\|_1 \tag{3} \]
嶺回歸對式(2)加入 L2 正則化,其 cost function 如下:
\[ J = \frac{1}{n}\sum_{i = 1}^n (f(\bm x_i) - y_i)^2 + \lambda \|w\|_2^2 \tag{4} \]
Lasso回歸和嶺回歸的同和異:
- 相同:
- 都可以用來解決標準線性回歸的過擬合問題。
- 不同:
- lasso 可以用來做 feature selection,而 ridge 不行?;蛘哒f,lasso 更容易使得權(quán)重變?yōu)?0,而 ridge 更容易使得權(quán)重接近 0。
- 從貝葉斯角度看,lasso(L1 正則)等價于參數(shù) \(\bm w\) 的先驗概率分布滿足拉普拉斯分布,而 ridge(L2 正則)等價于參數(shù) \(\bm w\) 的先驗概率分布滿足高斯分布。具體參考博客 從貝葉斯角度深入理解正則化 -- Zxdon 。
也許會有個疑問,線性回歸還會有過擬合問題?
加入 L1 或 L2 正則化,讓權(quán)值盡可能小,最后構(gòu)造一個所有參數(shù)都比較小的模型。因為一般認為參數(shù)值小的模型比較簡單,能適應(yīng)不同的數(shù)據(jù)集,也在一定程度上避免了過擬合現(xiàn)象。
可以設(shè)想一下對于一個線性回歸方程,若參數(shù)很大,那么只要數(shù)據(jù)偏移一點點,就會對結(jié)果造成很大的影響;但如果參數(shù)足夠小,數(shù)據(jù)偏移得多一點也不會對結(jié)果造成什幺影響,一種流行的說法是『抗擾動能力強』。具體參見博客 淺議過擬合現(xiàn)象(overfitting)以及正則化技術(shù)原理。
為什么 lasso 更容易使部分權(quán)重變?yōu)?0 而 ridge 不行?
lasso 和 ridge regression 的目標都是 \(\min_{\bm w, b} J\),式(3)和(4)都是拉格朗日形式(with KKT條件),其中 \(\lambda\) 為 KKT 乘子,我們也可以將 \(\min_{\bm w, b} J\) 寫成如下形式:
lasso regression:
\[ \begin{array}{cl} {\min \limits_{w, b}} & {\dfrac{1}{n}\sum_{i = 1}^n (\bm w^{\top} \bm x_i + b - y_i)^2} \\ {\text{s.t.}} &{\|w\|_1 \le t} \end{array} \tag{5} \]ridge regression:
\[ \begin{array}{cl} {\min \limits_{w, b}} & {\dfrac{1}{n}\sum_{i = 1}^n (\bm w^{\top} \bm x_i + b - y_i)^2} \\ {\text{s.t.}} &{\|w\|_2^2 \le t} \end{array} \tag{6} \]
式(5)和(6)可以理解為,在 \(\bm w\) 限制的取值范圍內(nèi),找一個點 \(\hat{\bm w}\) 使得 mean square error 最小,\(t\) 可以理解為正則化的力度,式(5)和(6)中的 \(t\) 越小,就意味著式(3)和(4)中 \(\lambda\) 越大,正則化的力度越大 。
以 \(\bm x \in R^2\) 為例,式(5)中對 \(\bm w\) 的限制空間是方形,而式(6)中對 \(\bm w\) 的限制空間是圓形。因為 lasso 對 \(\bm w\) 的限制空間是有棱角的,因此 \(\arg \min_{w, b} {\frac{1}{n}\sum_{i = 1}^n (\bm w^{\top} \bm x_i + b - y_i)^2}\) 的解更容易切在 \(\bm w\) 的某一個維為 0 的點。如下圖所示:
Fig.1[1] Lasso (left) and ridge (right) regression.
Fig. 1 中的坐標系表示 \(\bm w\) 的兩維,一圈又一圈的橢圓表示函數(shù) \(J = {\frac{1}{n}\sum_{i = 1}^n (\bm w^{\top} \bm x_i + b - y_i)^2}\) 的等高線,橢圓越往外,\(J\) 的值越大,\(\bm w^*\) 表示使得損失 \(J\) 取得全局最優(yōu)的值。使用 Gradient descent,也就是讓 \(\bm w\) 向著 \(\bm w^*\) 的位置走。如果沒有 L1 或者 L2 正則化約束,\(\bm w^*\) 是可以被取到的。但是,由于有了約束 \(\|w\|_1 \le t\) 或 \(\|w\|_2^2 \le t\),\(\bm w\) 的取值只能限制在 Fig. 1 所示的灰色方形和圓形區(qū)域。當然調(diào)整 \(t\) 的值,我么能夠擴大這兩個區(qū)域。
等高線從低到高第一次和 \(\bm w\) 的取值范圍相切的點,即是 lasso 和 ridge 回歸想要找的權(quán)重 \(\hat{\bm w}\)。
lasso 限制了 \(\bm w\) 的取值范圍為有棱角的方形,而 ridge 限制了 \(\bm w\) 的取值范圍為圓形,等高線和方形區(qū)域的切點更有可能在坐標軸上,而等高線和圓形區(qū)域的切點在坐標軸上的概率很小。這就是為什么 lasso(L1 正則化)更容易使得部分權(quán)重取 0,使權(quán)重變稀疏;而 ridge(L2 正則化)只能使權(quán)重接近 0,很少等于 0。
正是由于 lasso 容易使得部分權(quán)重取 0,所以可以用其做 feature selection,lasso 的名字就指出了它是一個 selection operator。權(quán)重為 0 的 feature 對回歸問題沒有貢獻,直接去掉權(quán)重為 0 的 feature,模型的輸出值不變。
對于 ridge regression 進行 feature selection,你說它完全不可以吧也不是,weight 趨近于 0 的 feature 不要了不也可以,但是對模型的效果還是有損傷的,這個前提還得是 feature 進行了歸一化。
References
[1] Tibshirani, R. (1996). Regression Shrinkage and Selection Via the Lasso. Journal Of The Royal Statistical Society: Series B (Methodological), 58(1), 267-288. doi: 10.1111/j.2517-6161.1996.tb02080.x
[2] Lasso算法 -- 維基百科
[3] 機器學習總結(jié)(一):線性回歸、嶺回歸、Lasso回歸 -- 她說巷尾的櫻花開了
[4] 從貝葉斯角度深入理解正則化 -- Zxdon
[5] 淺議過擬合現(xiàn)象(overfitting)以及正則化技術(shù)原理 -- 閃念基因
轉(zhuǎn)載于:https://www.cnblogs.com/wuliytTaotao/p/10837533.html
總結(jié)
以上是生活随笔為你收集整理的线性回归——lasso回归和岭回归(ridge regression)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: phpstrom php出现404
- 下一篇: RNN梯度消失和爆炸的原因 以及 LST