正規化 是什麼?
Normalization:正規化 的完整解釋
正規化是一種資料前處理技術,將資料縮放到一個單位範數,例如L1或L2範數,使每個樣本的向量長度為1。
容易混淆
正規化 vs 標準化 正規化:把每個樣本縮到固定範數 標準化:把特徵拉成平均 0、標準差 1 最關鍵的區別:先看它是在比什麼,再看它怎麼做。
正規化 vs 特徵縮放 正規化:通常處理樣本向量 特徵縮放:通常處理欄位數值範圍 最關鍵的區別:先看它是在比什麼,再看它怎麼做。
記住這句就好
把每個樣本縮到差不多長。
實際案例
文本向量 把長短不同的文件向量正規化,方便比較相似度。
影像特徵 在某些嵌入模型裡,正規化後距離比較有意義。
算法與應用
L1 和 L2 正規化最常見,前者偏稀疏,後者更平滑。 它常和餘弦相似度、向量檢索、以及度量學習搭配。 如果你的模型很怕向量長度影響結果,正規化通常很有用。
中英對照與常見說法
| 中文 | 英文 | 指的是什麼 |
|---|---|---|
| 正規化 | normalization | 把數值縮放到固定範圍,最常見是 0 到 1 |
| 標準化 | standardization | 減平均除標準差,讓平均為 0、標準差為 1 |
| 最小最大縮放 | min-max scaling | 正規化最常見的具體做法 |
| 批次正規化 | batch normalization | 神經網路層與層之間做的正規化 |
| 正則化 | regularization | 完全不同的東西,指抑制過擬合的手段 |
最後一列是最常見的誤譯。正規化(normalization)與正則化(regularization)中文只差一個字,英文完全不同,目的也不同。正規化處理的是數值尺度,正則化處理的是模型複雜度。看到「L2 正規化」多半是誤譯,原文應該是 L2 regularization。
公式與什麼時候該用哪一種
最小最大正規化
x' = (x − min) / (max − min)結果落在 0 到 1。適合需要固定範圍的場合,例如影像像素值、要餵進有界激活函數的輸入。缺點是對離群值極度敏感,一筆極端值就會把其他資料全部壓扁到很小的區間。標準化(Z 分數)
x' = (x − μ) / σ結果平均 0、標準差 1,沒有固定上下界。對離群值穩健得多,是多數機器學習模型的預設選擇,尤其是線性回歸、邏輯回歸、支援向量機、主成分分析這類跟距離或梯度有關的模型。判斷方式:不確定就先用標準化。只有在明確需要有界輸出,或資料本身就有天然上下限時,才用最小最大正規化。
還有一個常被忽略的紀律:縮放參數(min、max、平均、標準差)只能從訓練集算,然後套用到驗證集與測試集。用全部資料一起算會讓測試集的資訊洩漏進訓練流程,評估數字會虛高。
情境判斷
Q1(直覺題):兩篇文件長度差很多,但你只想比較語意方向,該做什麼? → 正規化,讓向量長度先統一。
Q2(判斷題):如果你的特徵本來就有絕對大小意義,還能隨便正規化嗎? → 要看情況,因為縮掉大小可能也把有用訊號一起拿掉。
相關術語
常見問題
正規化和標準化一樣嗎?
不一樣,目標和處理對象都不同。
它一定能提升模型嗎?
不一定,要看任務是否真的需要控制向量長度。
L1 和 L2 怎麼選?
看你要不要稀疏表示,以及對離群值敏感不敏感。