正規化

正規化的目標是將特徵轉換為類似的規模。這可提高模型的效能和訓練穩定性。

正規化技巧簡介

以下四個常見的正規化技巧可能相當實用:

  • 縮放範圍
  • 剪輯
  • 記錄檔資源調度
  • Z-分數

下方圖表顯示左側正規化技術對左側原始特徵 (價格) 分佈的影響。圖表的資料是 1985 年 Ward's Automotive Yearbook 所對應的資料集。該系列是 UCI 機器學習存放區下的 UCI 機器學習存放區

五個圖表:1. 原始分佈。2. 原始分佈範圍擴大到一個範圍,形狀與原始分佈相同。3. 剪輯原始分佈,刪除最高值。4. 以對數縮放的原始分佈,在資料中間分配資料。5. 分佈的 Z 分數,形狀與原始分佈類似。

圖 1. 正規化技巧摘要。

向範圍內調度資源

提醒您,MLCC 的注意事項縮放是指將浮點特徵值從自然範圍 (例如 100 到 900) 轉換為標準範圍 (通常是 0 和 1,有時是 -1 到 +1)。使用以下簡易公式進行縮放:

\[ x' = (x - x_{min}) / (x_{max} - x_{min}) \]

同時符合以下兩個條件時,您不妨將範圍調度資源:

  • 資料只有約略值和最小值,且沒有離群值。
  • 您的資料會平均分佈於該範圍內。

合適的範例是年齡。大部分年齡值介於 0 到 90 之間,而且範圍中的每個部分都有人數。

相反地,您使用收入資源調度,因為只有少數人有很高的收入。收入的線性量表的上限將非常高,而大多數人也都會擠到體重的一小部分。

功能剪輯

如果資料集包含極端離群值,請嘗試特徵特徵剪輯,將特定值的所有 (或低於) 特徵值限制為固定值。舉例來說,您可以將所有超過 40 的溫度值剪輯為剛好 40。

您可在其他正規化之前或之後套用特徵剪輯。

公式:設定最小值/最大值,以避免離群值。

原生分佈和上限發布的比較。在原生發布中,幾乎所有值的範圍都介於 1 到 4 之間,但有一小部分的值介於 5 到 55 之間。在上限發布中,所有超過 4 的值都會在現在的值為 4。

圖 2. 比較原始發布和其剪輯版本。

另一個簡單的裁剪策略是將 Z-score 剪輯至 +-N↓ (例如限制為 +-3score)。請注意, 是標準偏差。

記錄檔資源調度

記錄檔縮放功能會計算值的記錄,以將範圍縮小至較小的範圍。

\[ x' = log(x) \]

如果少數值有許多點,記錄資源調度就很有幫助,而大多數其他值則只有少量。這個資料分佈稱為「電力法」分配。電影評分就是很好的例子。在下圖中,多數電影的評分都很少 (後端的資料),而有些電影的評分也很高 (頭部的資料)。記錄檔資源調度功能會變更分佈情形,進而改善線性模型的效能。

比較原始資料與原始資料記錄的兩個圖表。原始資料圖表在頭部顯示大量評分,後面接著長尾。記錄圖表的分佈更平均。

圖 3. 比較原始分佈與記錄檔。

Z 分數

Z 分數是縮放的變化版本,代表平均值的標準偏差數量。您將使用 Z-score 來確保特徵分佈的平均值 = 0 和 std = 1。如果有一些離群值,但並不實用,您需要進行極端處理。

計算點 x 的 Z 分數的公式如下:

\[ x' = (x - μ) / σ \]

兩張圖表,比較原始資料與 Z 分數正規化的資料。原始資料顯示 Poisson 分佈情形的約略範圍,範圍介於 5,000 到 45,000 之間。
正規化資料範圍介於 -1 至 +4 之間。

圖 4. 比較原始分佈與 Z-score 分佈。

請注意,Z 分數會將原始範圍的範圍從 -40000 縮小到大約 -1 到 +4 的範圍。

假設您不確定離群值是否極端。 在這種情況下,除非您有不想讓模型學習的特徵值,否則請從 Z 分數開始;例如,這是測量錯誤或奇怪的結果。

摘要

正規化技巧公式使用時機
線性調整 $$ x' = (x - x_{min}) / (x_{max} - x_{min}) $$ 當功能更平均或更平均地分散在固定範圍內。
剪輯 如果 x > max,則 x' = max. if x < min, then x' = min 當特徵包含極端離群值時。
記錄檔資源調度 X' = log(x) 當功能符合電源法的規定時。
Z 分數 x' = (x - μ) / ↓ 特徵分佈不含極端離群值。