最小角回歸法(Least Angle Regression)求解Lasso 回歸算法


引用:http://www.cnblogs.com/pinard/p/6018889.html

最近在學習機器學習的相關框架,看到最小角回歸理解了一下:

在介紹最小角回歸算法前,我們需要了解兩個相關算法,一個是前向選擇算法(Foward Selection),一個是前向梯度算法(Forward Statgewise)。

1.前向選擇算法(Foward Selection)

  假設有Y=Xθ,X為m*n的矩陣,Y為m*1的矩陣,我們要找到一個θ,最大程度的擬合輸入和輸出。

  這里把X看成n個m*1的的向量Xi

  第一步:選擇和目標Y最為接近的Xi(余弦相似度),記為Xk

  過Y向Xk向量做投影,投影的長度便作為Xk對應的系數,記為θk

  第二步:定義(殘差)Y=Y-XkK

  若Y把所有的自變量都投影完畢,或者Y'為0,結束算法。

  否則投影后的Y被設為新的目標Y,重復第一步。

  圖示引薦如下:

  

上圖為Y在X1,X2上的分解,對應的θ即為要求解的系數。

2.前向梯度算法(Forward Stagewise)

  同前向選擇方法不同的一點是,θk的取值是人為設定的,每次θk會有一個初始值設為w,

  計算殘差Y=Y-Xk*w,再根據Y’去找相似度最大的向量Xi。

  引圖如下:

如上圖Y沿着x1方向,行走εx1時,就會停下來計算殘差,再判斷究竟與x1的相似度還是與x2的相似度大,然后繼續走下去。

 

3.最小角回歸(Least Angle Regression, LARS)算法

首先,還是找到與因變量Y最接近或者相關度最高的自變量Xk,使用類似於前向梯度算法中的殘差計算方法,得到新的目標Y',此時不用和前向梯度算法一樣小步小步的走。而是直接向前走直到出現一個Xt,使得Xt和Y'的相關度和Xk與Yyes的相關度是一樣的,此時殘差Y'就在Xt和Xk的角平分線方向上,此時我們開始沿着這個殘差角平分線走,直到出現第三個特征Xp和Yyes的相關度足夠大的時候,即Xp到當前殘差Yyes的相關度和θt,θk與Yyes的一樣。將其也叫入到Y的逼近特征集合中,並用Y的逼近特征集合的共同角分線,作為新的逼近方向。以此循環,直到Yyes足夠的小,或者說所有的變量都已經取完了,算法停止。此時對應的系數θ即為最終結果。

引圖如下:

2017-09-16
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM