L1 Regularization(Lasso)
L1 損失對應 L1 範數(曼哈頓距離,Manhattan norm)
意思就是:
把每個預測值和真實值的「誤差絕對值」加起來 (不平方)
不像 L2 Regularization(Ridge) 那樣平方誤差,而是直接量距離
L1 的效果
- 壓縮權重
- 很多權重會 直接變成 0
- 產生 稀疏模型(Feature Selection)
(詳細看 L1 vs L2 正則化 — 實務差異)
L1 正則化(L1 regularization)會讓損失函數變成「凸形(convex)」
整個優化問題只有一個全域最小值(global minimum),不會有多個局部最小值(local minima),因此比較容易找到最佳解。
想像你在城市裡走路:
- L1 就像走「曼哈頓街道」——你只能沿著東西、南北方向走。
- L2 像是「直線飛行距離」——直接穿越街區。
→ L1 測的是真實走過的路;L2 測的是理論最短路徑
L1 的特性是促進稀疏性(sparsity),會讓部分權重直接變為 0
權重「變多」本身不會提升正確率,反而可能造成 overfitting
特性
透過懲罰權重的絕對值,使部分權重被壓到 0
- 自動特徵選擇
- 模型更簡單、可解釋性高
| 特性 | 說明 |
|---|---|
| 對離群值(outlier)不太敏感 | 因為不平方,所以不會被極端值放大。 |
| 會讓部分權重變成 0(稀疏化) | 適合做特徵選擇。 |
| 在 0 附近不連續 | 導致梯度更新不平滑(在 0 附近「跳來跳去」)。 |
| 訓練可能抖動或收斂慢 | 尤其在大模型或深層網路時更明顯。 |
常見應用場景
回歸任務的損失函數 → Mean Absolute Error, MAE (平均絕對誤差)
- 特徵選擇 / 模型壓縮 → Lasso Regression、稀疏編碼(Sparse Coding)
- 研究壓縮 / 稀疏網路 → L1 有時用於讓神經網路自動「剪枝」
實務應用:Lasso、MAE、特徵壓縮等輕量任務
不適用:大型深度模型(LLM、CNN、Transformer)
為什麼大型模型不常用 L1
L1 在 0 附近的梯度是「突變」的(不像 L2 那樣連續),會讓訓練過程「一震一震」
⇒ 難以穩定收斂
→ 而像 LLaMA、GPT、Mistral 這種大語言模型都有上百億參數,非常仰賴「平滑、穩定的梯度更新」,所以幾乎都採用 L2(weight decay) 來正則化。