ML 範數與正則化懲罰

2021-10-03 18:01:20 字數 932 閱讀 3403

l1範數是我們經常見到的一種範數,它的定義如下:

表示向量x中非零元素的絕對值之和。

l1範數有很多的名字,例如我們熟悉的曼哈頓距離、最小絕對誤差等。使用l1範數可以度量兩個向量間的差異,如絕對誤差和(sum of absolute difference)

由於l1範數的天然性質,對l1優化的解是乙個稀疏解,因此l1範數也被叫做稀疏規則運算元。通過l1可以實現特徵的稀疏,去掉一些沒有資訊的特徵,例如在對使用者的電影愛好做分類的時候,使用者有100個特徵,可能只有十幾個特徵是對分類有用的,大部分特徵如身高體重等可能都是無用的,利用l1範數就可以過濾掉。

l2範數是我們最常見最常用的範數了,我們用的最多的度量距離歐氏距離就是一種l2範數,它的定義如下:

表示向量元素的平方和再開平方。

像l1範數一樣,l2也可以度量兩個向量間的差異,如平方差和(sum of squared difference):

模型訓練集的效果越來越好,但測試集的效果反而越來越差——過擬合

正則化懲罰。可以懲罰數值較大的權重引數,讓他們對結果的影響小一點,防止模型為了迎合訓練集而過於複雜造成過擬合的情況,從而提高模型的泛化能力。

l1正則化

l2正則化

α代表正則化懲罰力度,α越大懲罰力度越大。

l2 計算起來更方便,而 l1 在特別是非稀疏向量上的計算效率就很低;還有就是 l1 最重要的乙個特點,輸出稀疏,會把不重要的特徵直接置零,而 l2 則不會;

最後,l2 有唯一解,而 l1 不是。

l1 norm 和l2 norm的區別核心:l2對大數,對outlier更敏感。

實際應用過程中,l1 nrom幾乎沒有比l2 norm表現好的時候,優先使用l2 norm是比較好的選擇。

機器學習基礎 範數與正則化

本文討論了機器學習中正則化這個話題,對於l1正則項為什麼稀疏也是面試中經常涉及的。正則化是機器學習中防止過擬合的一種重要技術。從數學上講,它增加了乙個正則化項,以防止係數如此完美地擬合而過度擬合。定義樣本,為樣本空間,模型函式,故 值為,損失函式為。因此機器學習的訓練過程可以轉換為乙個在泛函空間內,...

深度學習(九)正則化懲罰項

在機器學習特別是深度學習中,我們通過大量資料集希望訓練得到精確 泛化能力強的模型,對於生活中的物件越簡潔 抽象就越容易描述和分別,相反,物件越具體 複雜 明顯就越不容易描述區分,描述區分的泛化能力就越不好。比如,描述乙個物體是 方的 那我們會想到大概這個物體的投影應該是四條邊,兩兩平行且垂直,描述此...

機器學習 正則化項L1範數與L2範數的關係

在學習機器學習過程中,我自己糾結了很久的乙個問題是 l1 norm 和 l2 norm 到底是什麼關係,有什麼區別。l1 和 l2 都是深度學習中常用的正則化項 regularizer 描述的是模型的複雜度,它的作用在於模型越複雜,正則化項越大,將它加在損失函式 loss function 後面作為...