機器學習入門13 - 正則化:稀疏性 (Regularization for Sparsity)


原文鏈接:https://developers.google.com/machine-learning/crash-course/regularization-for-sparsity/

1- L₁正則化

稀疏矢量通常包含許多維度。創建特征組合會導致包含更多維度。
由於使用此類高維度特征矢量,因此模型可能會非常龐大,並且需要大量的 RAM。

在高維度稀疏矢量中,最好盡可能使權重正好降至 0。
正好為 0 的權重基本上會使相應特征從模型中移除。
將特征設為 0 可節省 RAM 空間,且可以減少模型中的噪點。

通過添加適當選擇的正則化項,最好情況下,可以使無意義維度的權重正好降至 0,就能夠避免在推理時支付這些模型系數的存儲費用。
可以使用 L1 正則化使模型中很多信息缺乏的系數正好為 0,從而在推理時節省 RAM。
注意:L2 正則化可以使權重變小,但是並不能使它們正好為 0.0,因此L2 正則化並不適合此場景。

2- L1和L2正則化

L2 和 L1 采用不同的方式降低權重:

  •   L2 會降低權重2
  •   L1 會降低 |權重|

因此,L2 和 L1 具有不同的導數:

  •   L2 的導數為 2 * 權重
  •   L1 的導數為 k(一個常數,其值與權重無關)

可以將 L2 的導數的作用理解為每次移除權重的 x%。
對於任意數字,即使按每次減去 x% 的幅度執行數十億次減法計算,最后得出的值也絕不會正好為 0。總而言之,L2 通常不會使權重變為 0。

可以將 L1 的導數的作用理解為每次從權重中減去一個常數。
不過,由於減去的是絕對值,L1 在 0 處具有不連續性,這會導致與 0 相交的減法結果變為 0。
例如,如果減法使權重從 +0.1 變為 -0.2,L1 便會將權重設為 0。就這樣,L1 使權重變為 0 了。

注意:以上說明適用於一維模型。

3- 理解

問題

1- 假設某個線性模型具有 100 個輸入特征:其中 10 個特征信息豐富,另外 90 個特征信息比較缺乏。
假設所有特征的值均介於 -1 和 1 之間。以下哪些陳述屬實?

    • L1 正則化會使大多數信息缺乏的權重正好為 0.0。
    • L1 正則化可能會使信息豐富的特征的權重正好為 0.0。
    • L1 正則化會使很多信息缺乏的權重接近於(但並非正好是)0.0。

2- 假設某個線性模型具有 100 個輸入特征,這些特征的值均介於 -1 到 1 之間:

    • 其中 10 個特征信息豐富。
    • 另外 90 個特征信息比較缺乏。

哪種類型的正則化會產生較小的模型?

    •    L1 正則化。
    •    L2 正則化。

答案

1-
 L1 正則化會使大多數信息缺乏的權重正好為 0.0。--- 正確
 lambda 充分的 L1 正則化往往會使信息缺乏的權重正好為 0.0。這樣,這些信息缺乏的特征便會遠離模型。

 L1 正則化可能會使信息豐富的特征的權重正好為 0.0。--- 正確
 請注意,L1 正則化可能會使以下類型的特征的權重正好為 0:
      信息缺乏的特征。
      不同程度的信息豐富的特征。
      與其他類似的信息豐富特征密切相關的信息豐富特征。

 L1 正則化會使很多信息缺乏的權重接近於(但並非正好是)0.0。--- 錯誤
 一般來說,lambda 充分的 L1 正則化往往會使信息缺乏的特征的權重正好為 0.0。
 與 L2 正則化不同,無論權重距 0.0 有多遠,L1 正則化都很難使權重降低但不為 0.0。

2-
L1 正則化。--- 正確
L1 正則化往往會減少特征的數量。也就是說,L1 正則化常常會減小模型的大小。

L2 正則化。--- 錯誤
L2 正則化很少會減少特征的數量。 也就是說,L2 正則化很少會減小模型的大小。

4- 練習

xxx

5- 關鍵詞

稀疏特征 (sparse feature)
一種特征向量,其中的大多數值都為 0 或為空。
例如,某個向量包含一個為 1 的值和一百萬個為 0 的值,則該向量就屬於稀疏向量。
再舉一個例子,搜索查詢中的單詞也可能屬於稀疏特征 - 在某種指定語言中有很多可能的單詞,但在某個指定的查詢中僅包含其中幾個。
與密集特征相對。

特征組合 (feature cross)
通過將單獨的特征進行組合(求笛卡爾積)而形成的合成特征。特征組合有助於表達非線性關系。

凸優化 (convex optimization)
使用數學方法(例如梯度下降法)尋找凸函數最小值的過程。
機器學習方面的大量研究都是專注於如何通過公式將各種問題表示成凸優化問題,以及如何更高效地解決這些問題。

L1 正則化 (L₁ regularization)
一種正則化,根據權重的絕對值的總和來懲罰權重。
在依賴稀疏特征的模型中,L1 正則化有助於使不相關或幾乎不相關的特征的權重正好為 0,從而將這些特征從模型中移除。與 L2 正則化相對。

L2 正則化 (L₂ regularization)
一種正則化,根據權重的平方和來懲罰權重。
L2 正則化有助於使離群值(具有較大正值或較小負值)權重接近於 0,但又不正好為 0。(與 L1 正則化相對。)
在線性模型中,L2 正則化始終可以改進泛化。

獨熱編碼 (one-hot encoding)
一種稀疏向量,其中:

    •   一個元素設為 1。
    •   所有其他元素均設為 0。

獨熱編碼常用於表示擁有有限個可能值的字符串或標識符。
例如,假設某個指定的植物學數據集記錄了 15000 個不同的物種,其中每個物種都用獨一無二的字符串標識符來表示。
在特征工程過程中,可能需要將這些字符串標識符編碼為獨熱向量,向量的大小為 15000。

權重 (weight)
線性模型中特征的系數,或深度網絡中的邊。
訓練線性模型的目標是確定每個特征的理想權重。
如果權重為 0,則相應的特征對模型來說沒有任何貢獻。



免責聲明!

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



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