LASSO迴歸與L1正則化 西瓜書

1.結構風險與經驗風險

在支持向量機部分,我們接觸到鬆弛變量,正則化因子以及最優化函數,在樸素貝葉斯分類,決策樹我們也遇到類似的函數優化問題。其實這就是結構風險和經驗風險兩種模型選擇策略,經驗風險負責最小化誤差,使得模型儘可能的擬合數據,而結構風險則負責規則化參數,使得參數的形式儘量簡潔,從而達到防止過擬合的作用.所以針對常見模型,我們都有下式:

                                                        

第一項經驗風險L(yi,f(xi,w))衡量真實值與預測值之間的誤差,第二項結構風險Ω(w)規則化項使得模型儘可能簡單.而第二項Ω(w)一般是模型複雜度的單調函數,模型越複雜,則規則化項的值越大,這裏常引入範數作爲規則化項,這也就引入了我們常見的L0範數,L1範數以及L2範數.


2.L0範數,L1範數,L2範數與LASSO迴歸,嶺迴歸

1)廣義定義

                L0範數  : 向量中非零元素的個數.

                L1範數 :向量中各個元素絕對值之和

                L2範數 :向量各元素平方和然後求平方根

L0,L1範數可以實現稀疏化,而L1係數因爲有比L0更好的特性而被廣泛應用,L2範數在迴歸裏就是嶺迴歸,也叫均值衰減,常用於解決過擬合,通過對向量各元素平方和再求平方根,使得L2範數最小,從而使得參數W的各個元素都接近於0,與L1範數不同,L2範數規劃後w的值會接近於0但不到0,而L1範數規範後則可能令w的一些值爲0,所以L1範數規範在特徵選擇中經常用到,而L2範數在參數規則化時經常用到.在迴歸模型中,通過添加L1,L2範數引入正則化項,便得到了LASSO迴歸和嶺迴歸:

2)迴歸模型

常見線性模型迴歸:

                                                                    

LASSOO迴歸:

                                                                    

嶺迴歸:

                                                                    


3.嵌入式選擇與LASSO迴歸

這裏主要針對西瓜書第11節的內容,對近端梯度下降PGD法解決L1正則化問題進行討論.

1)優化目標

表示微分算子,對優化目標:

                                                                     

若f(x)可導,且f 滿足L-Lipschitz(利普希茨連續條件),即存在常數L>0使得:

                                                        

2)泰勒展開

則在Xk處我們可以泰勒展開:

                                                

上式是嚴格相等,由L-Lipschitz條件我們可以看到:

                                                                    

這裏給出了一個L的下界,且下界的形式與二階導函數形式類似,從而泰勒展開式的二階導便通過L替代,從而嚴格不等也變成了近似:

                                                   

3)簡化泰勒展開式

接下來我們化簡上式:

                                       

                                

                                

其中φ(xk)是與x無關的const常數.

                                                              

4)簡化優化問題

這裏若通過梯度下降法對f(x)進行最小化,則每一步下降迭代實際上等價於最小化二次函數f(x),從而推廣到我們最上面的優化目標,類似的可以得到每一步的迭代公式:

                                                

令  

                                                                      

則我們可以先計算z,再求解優化問題:

                                                            

5)求解

令xi爲x的第i個分量,將上式展開可以看到沒有xixj(x≠j)的項,即x的各分量互不影響,所以優化目標有閉式解.這裏對於上述優化問題求解需要用到Soft Thresholding軟閾值函數,其解爲:

                                                            

對於本例,帶入求解即得:

                                                            

因此,PGD能使LASSO和其他基於L1範數最小化的方法得以快速求解.


4.Soft Thresholding軟閾值函數證明

1)軟閾值函數

上式求解用到了軟閾值函數,下面對軟閾值函數的解進行求證,從而更好理解上述求解過程.

先看一下軟閾值函數:

                                                           

2)證明

Proof:

對於優化問題:

                                                                    

此處X,Z均爲n維向量.

展開目標函數:

      


從而優化問題變爲求解N個獨立的函數

                                                                        

這是我們常見的二次函數,對其求導

                                                                    

令導數爲0:

                                                                            

看到兩邊都有x,所以我們要對上述情況進行討論:

A.z>λ/2時

假設 x<0 ,   所以  sign(x)=-1 ,但 z-λ/2sign(x)>0 ,所以矛盾.

假設 x>0 ,所以  sign(x) = 1,z-λ/2sign(x)>0,所以極小值在x>0 取得1.

此時極小值小於f(0):

                                            

再看x<0,

                                      

                                                

所以f(x)在負無窮到0單調遞減,所以最小值在z-λ/2處取得.


B.z<-λ/2時

假設 x<0 ,   所以  sign(x)=-1 ,z-λ/2sign(x)<0 ,所以極值點在 x<0 處取得.

假設 x>0 ,所以  sign(x) = 1,z-λ/2sign(x)<0,所以矛盾.

此時極值小於f(0):

                                              

再看 x>0 ,

                                        

                                                  

所以f(x)在0到正無窮單調遞增,所以最小值在z+λ/2處取得.


C.λ/2<z<λ/2時

假設 x<0 ,   所以  sign(x)=-1 ,z-λ/2sign(x)>0 ,所以矛盾.

假設 x>0 ,所以  sign(x) = 1,z-λ/2sign(x)<0,所以矛盾.

所以x>0,x<0均不滿足條件.

所以有:

                                                                

                                                                        

                                                                  

                                                                  

當△x>0時,由條件z<λ/2:

                                                                

                                                            

                                                            

當△x<0時,由條件z<λ/2:

                                                                

                                                            

                                                            

所以在0處取極小值,同時也是最小值.


綜合以上三種情況:

                                                                  


3)對應西瓜書的L1正則化與LASSO迴歸

這裏的解對應的優化問題是:

                                                                    

而我們PGD優化的問題是:

                                                                

對上式同乘2/L不影響極值點位置的選取,所以我們的PGD優化問題變成:

                                                                

帶入綜合三種情況的到的最終解:

                                                                

西瓜書上11.14也就得證了~


總結:

終於看完了西瓜書11章特徵選擇與稀疏學習,發現從頭至尾都在提到用LASSO解決問題,所以就結合第六章的正則化和之前的模型評價,對正則化範數以及LASSO重新認識了一下,書中解決LASSO的大致方法就是通過利普希茨連續條件得到L,帶入到優化函數中對函數簡化變形,簡易優化函數,然後通過軟閾值函數得到最後的解.LASSO大致就是這些了,有問題歡迎大家交流~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章