Ridge迴歸、Lasso迴歸
阿新 • • 發佈:2018-11-12
最小二乘法:
目標函式=∑(觀測值-理論值)²
J(θ)=1/2(Xθ−Y)T (Xθ−Y)
迭代的表示式是:
θ=(XT X+αE)−1 XT Y
其中E為單位矩陣。
Ridge迴歸:
通過對係數的大小施加懲罰來解決普通最小二乘法的一些問題。它和一般線性迴歸的
區別是在損失函式上增加了一個L2正則化的項,和一個調節線性迴歸項和正則化項權
重的係數α。
J(θ)=1/2(Xθ−Y)T (Xθ−Y)+1/2α||θ||22
Ridge迴歸的解法和一般線性迴歸大同小異。如果採用梯度下降法,則每一輪θ迭代的
表示式是:
θ=θ−(βXT(Xθ−Y)+αθ)
其中β為步長。
Lasso迴歸:
Lasso迴歸有時也叫做線性迴歸的L1正則化,和Ridge迴歸的主要區別就是在正則化
項,Ridge迴歸用的是L2正則化,而Lasso迴歸用的是L1正則化。Lasso迴歸的損失
函式表示式如下:
J(θ)=1/2n (Xθ−Y)T (Xθ−Y)+α||θ||1
其中n為樣本個數,α為常數係數,需要進行調優。||θ||1為L1範數。
Lasso迴歸使得一些係數變小,甚至還是一些絕對值較小的係數直接變為0,因此特別
適用於引數數目縮減與引數的選擇,因而用來估計稀疏引數的線性模型。 不過lasso
迴歸會使損失函式不是連續可導。
座標軸下降法求lasso迴歸:
步驟: 1.給定初始點(x1,x2,...,xn) 2.固定除xi意外其他維度的點,以xi為自變數獲取最小值 3.換個維度,重複2 座標下降法在每次迭代中在當前點處沿一個座標方向進行一維搜尋,固定其他的座標 方向,找到一個函式的區域性極小值。
最小角迴歸法求解Lasso迴歸:
1.前項選擇演算法: 求解Y=Xθ中的θ。其中Y為 mx1的向量,X為mxn的矩陣,θ為nx1的向量。m為樣本數 量,n為特徵維度。 把矩陣X看做n個mx1的向量Xi(i=1,2,…n),在Y的X變數Xi(i =1,2,…m)中,選擇和 目標Y最為接近(餘弦距離最大)的一個變數Xk,用Xk來逼近Y ,得到下式: Y=Xk θk 其中: θk = Xk,Y / ||Xk||2 2.前向梯度演算法和前向選擇演算法有類似的地方,不再使用投影的方式,而是在最接近 的自變數Xt的方向上移動一小步,在觀察與殘差Yyes最接近的自變數,直到殘差足夠 小。 3.最小角迴歸演算法: 在縮小殘差問題上,最小角迴歸採用的是延Xt和Xk的平分線走,不斷縮小殘差。 其主要的優點有: 1)特別適合於特徵維度n 遠高於樣本數m的情況。 2)演算法的最壞計算複雜度和最小二乘法類似,但是其計算速度幾乎和前向選擇演算法一 樣 3)可以產生分段線性結果的完整路徑,這在模型的交叉驗證中極為有用 主要的缺點是: 由於LARS的迭代方向是根據目標的殘差而定,所以該演算法對樣本的噪聲極為敏感。