對L1正則化和L2正則化的理解

2021-08-16 11:06:58 字數 1842 閱讀 6380

一、 奧卡姆剃刀(occam's razor)原理:

在所有可能選擇的模型中,我們應選擇能夠很好的解釋資料,並且十分簡單的模型。從貝葉斯的角度來看,正則項對應於模型的先驗概率。可以假設複雜模型有較小的先驗概率,簡單模型有較大的先驗概率。   

二、正則化項

2.1、什麼是正則化?

正則化是結構風險最小化策略的實現,在經驗風險上加乙個正則項或罰項,正則項一共有兩種l1正則化和l2正則化,或者l1範數和l2範數。對於線性回歸模型,使用l1正則化的模型叫做lasso回歸;使用l2正則化的模型叫做ridge回歸(嶺回歸)

2.2、正則化項和模型複雜度之間的關係

正則化項一般是模型複雜度的單調遞增的函式,模型越複雜,正則化值越大。

一般來說,監督學習可以看做最小化下面的目標函式:

上式中的第1項為經驗風險,即模型f(x)關於訓練資料集的平均損失;第2項為正則化項,去約束我們的模型更加簡單

三、l1範數

3.1概念:l1範數是指向量中各個元素絕對值之和。

3.2 為什麼l1範數會使權值稀疏?

任何的正則化運算元,如果他在w

i=0的地方不可微,並且可以分解為「求和」 的形式,那麼這個正則化運算元就可以實現稀疏。

3.3 引數稀疏有什麼好處?

(1)特徵選擇(feature selection)

引數稀疏規則化能夠實現特徵的自動選擇,在特徵工程的過程中,一般來說,x

i的大部分元素(特徵)都和其標籤y

i沒有關係的。我們在最小化目標函式的時候,考慮了這些無關特徵,雖然可以獲得最小的訓練誤差,但是對於新的樣本時,這些沒用的資訊反而被考慮,干擾了對樣本的**。稀疏規則化將這些沒用的特徵的權重置為0,去掉這些沒用的特徵。

(2)可解釋性

將無關特徵置為0,模型更容易解釋。例如:患某種病的概率為y,我們收集到的資料x是1000維的,我們的任務是尋找這1000種因素是如何影響患上這種病的概率。假設,我們有乙個回歸模型:y=w1*x

1+w2*x

2+…+w

1000

*x1000

+b,通過學習,我們最後學習到w*只有很少的非零元素。例如只有5個非零的w*,那麼這5個w*含有患上這種病的關鍵資訊。也就是說,是否患上這種病和這5個特徵相關,那事情變得容易處理多了。

四、l2範數

4.1 概念:l2範數是指向量各元素的平方和然後再求平方根。

正則化項可以取不同的形式。對於回歸問題中,損失函式是平方損失,正則化項為引數向量l2的範數。

4.2 為什麼l2範數可以防止過擬合?

左一:欠擬合;中間:正常擬合;右側:過擬合

線性回歸擬合圖

讓l2範數的正則項||w||

2最小,可以使得w的每個元素都很小,都接近於0。(l1範數讓w等於0),而越小的引數說明模型越簡單,越簡單的模型越不容易產生過擬合的現象。(結合上圖線性回歸擬合圖可知,限制了某些引數很小,其實也就限制了多項式的某些分量的影響很小,這也就相當於減少了變數的個數)

L1正則化和L2正則化

為了降低過擬合風險,需要控制模型複雜度,自然想到減少引數個數,但是這個問題不易直接解決,可以通過放寬條件控制。新增優化條件 這會使引數條件空間有明顯的凸角,這些突出點顯然會成為聯合優化時的最優解,但同時這些這些凸點中又會有較多的0值 由其限制條件可見,凸點都在座標軸上 因此l1範數會更易得到稀疏解,...

L1正則化和L2正則化

l1標準化與l2標準化 參考 l1 l2標準化及其python 實現 我們知道,正則化的目的是限制引數過多或者過大,避免模型更加複雜。l1 與 l2 解的稀疏性 以二維情況討論,上圖左邊是 l2 正則化,右邊是 l1 正則化。從另乙個方面來看,滿足正則化條件,實際上是求解藍色區域與黃色區域的交點,即...

L1正則化和L2正則化

摘自 深度學習 l1正則化和l2正則化 在機器學習中,我們非常關心模型的 能力,即模型在新資料上的表現,而不希望過擬合現象的的發生,我們通常使用正則化 regularization 技術來防止過擬合情況。正則化是機器學習中通過顯式的控制模型複雜度來避免模型過擬合 確保泛化能力的一種有效方式。如果將模...