L1正則化與嵌入式特徵選擇(稀疏性)

香橙雲子發表於2018-02-06

嶺迴歸的歷史可追溯到1943年由A.Tikhonov發表在《蘇聯科學院院刊》上的一篇文章,我們知道計算機是在1946年發明出來的,由此可見,這是一個歷史悠久的演算法,至今依舊有生命力,屬於經典演算法之一。

嶺迴歸,是線性迴歸的L2正則化方式。本質上是一種迴歸。

給定資料集D = {(x1,y1),(x2,y2),...,(xm,ym)},其中xϵR^d dimension,yϵR。我們考慮最簡單的線性迴歸模型,以平方誤差為損失函式:

線性迴歸的損失函式

對於正則化不太瞭解的朋友可以看我這一篇文章《L1與L2正則化》,但是我們這裡對於正則化有一些更加深入的理解。

正則化(Regularization)是在被優化的目標函式中,新增一項與常數因子λ相乘(有時候也使用α)的引數,這一項就叫做正則項。我們很容易知道,由於目標函式總是向最小化方向發展,則被加進來的這一項會受到懲罰使之更傾向於小。具體的理解可以參考我的《L1與L2正則化》。以下是線性迴歸帶正則化的目標函式表示式。

帶L1正則化的線性迴歸的目標函式:

公式1

帶L2正則化的線性迴歸的目標函式,也就是我們提到的嶺迴歸

公式2

以上是正則化的感性認識以及其工作原理。我們常用的正則化為L1和L2正則化,也稱L1範數正則化與L2範數正則化。這兩種正則化都可以用來降低過擬合的風險,但是L1正則化比L2正則化多一個優勢在於,其可以更容易獲得稀疏(sparse)解,即其會有更少的非零分量。

我舉一個直觀的例子。假設x僅僅有兩個屬性,於是根據線性迴歸的目標函式求解,w都之後有兩個分量。即w1與w2,以此為座標軸,畫出一個座標系。如圖所示

L1範數與L2範數在w座標軸中的表示

那麼我們取在這個(w1,w2)空間裡平方誤差取值一樣的點連成線,就成了我們的平方誤差項等值線。再畫出L1,L2範數的等值線,即在(w1,w2)空間中L1範數與L2範數取值相同的點的連線,如圖所示。我們知道,平方誤差等值線與正則化項等值線的交點為帶正則化項的線性迴歸目標函式的解。我們從圖中可以看出,平方誤差等值線與L1正則化等值線的交點,在座標軸的頻率更高,即w1或w2為0;二平方誤差等值線與L2正則化等值線的交點更容易出現在象限中,即w1與w2均不為0。由此可見,採用L1範數正則化比L2範數更容易得到稀疏解。

注意到w取得稀疏解則意味著初始的d個特徵中僅有對應著w的非零分量的特徵才會出現在最終模型中,所以求得的結果是得到了僅採用一部分初始特徵的模型。我們便可以將L1鄭澤華的學習方法視為一種特徵選擇方法,刪掉了部分特徵(特徵為0),特徵選擇過程與學習器訓練過程融為一體,同時完成。

L1和L2正則的區別,如何選擇L1和L2正則?

  1. L1在0處不可導,怎麼處理他們都是可以防止過擬合,降低模型複雜度L1是在loss function後面加上模型引數的1範數(也就是|xi|)L0範數的最小化問題在實際應用中是NP難問題,無法實際應用
  2. L2是在loss function後面加上模型引數的2範數(也就是sigma(xi^2)),注意L2範數的定義是sqrt(sigma(xi^2)),在正則項上沒有新增sqrt根號是為了更加容易優化L1 會產生稀疏的特徵L2 會產生更多地特徵但是都會接近於0
  3. L1會趨向於產生少量的特徵,而其他的特徵都是0,而L2會選擇更多的特徵,這些特徵都會接近於0。L1在特徵選擇時候非常有用,而L2就只是一種規則化而已。
  4. L1對應拉普拉斯分佈,L2對應高斯分佈,L1偏向於引數稀疏性,L1不可導可以使用近似演算法或者ADMM來解決

相關文章