🎯 正則化 · iPAS 常考

Lasso(L1 正則化):會「斷捨離」的正則化

當你有一堆特徵、卻不知道哪些有用,Lasso 會幫你自動把沒用的係數直接砍成 0,只留下關鍵的少數。這頁帶你看懂它和 Ridge 的差別、那張紅色菱形圖在說什麼,以及它為什麼能「歸零」做特徵選擇。

過擬合絕對值懲罰圖怎麼看為何能歸零L1 vs L2凸函數特徵選擇

🤔 一、先搞懂:特徵太多會出什麼問題?

Lasso 解決的問題,是「特徵太多、又分不出哪些重要」。

🌀 過擬合(Overfitting)= 死背

模型太複雜時,會把訓練資料的雜訊也背下來:舊資料超準、新資料就崩。當你丟給它幾十、幾百個特徵,其中很多根本沒用,模型卻硬要每個都用上、給出又大又亂的係數,過擬合會更嚴重。

💡 那就讓模型「斷捨離」→ 正則化(Regularization)

正則化=在「把訓練誤差變小」之外,再加一條規則:係數別亂長大。而 L1(Lasso)更狠:它不只縮小係數,還會把「沒用的特徵」係數直接壓成 0,等於自動幫你挑出真正重要的少數特徵。

📖 二、Lasso / L1 到底做了什麼?

一句話:在原本的損失(MSE)後面,加上「所有係數的絕對值之和」,再乘上力道 λ 當罰款。

Loss = MSE(沒考好的扣分) + λ × ( |β₁| + |β₂| + … )(係數的「絕對值」罰款)

跟 Ridge 只差一個地方:Ridge 罰平方(β²),Lasso 罰絕對值(|β|)。就這一字之差,造就了「會不會歸零」的天壤之別。

🧑‍🏫 比喻:一位嚴格的老師

一樣把訓練想成考試:MSE 是考差的扣分,懲罰是「死背」的扣分。但 L1 是個嚴格的老師——它不只叫你把小抄縮小,還會直接叫你把「根本用不到的那幾張小抄」整個丟掉(係數歸零)。所以 Lasso 最後手上只留下幾張真正有用的小抄。

➖ 關鍵直覺:L1 是「減法」、L2 是「除法」

從更新過程看:L2(Ridge)像除法,每次把係數乘以 0.9:100→90→81→…→0.0001,無限接近 0 但永遠不歸零L1(Lasso)像減法,每次固定減 10:100→90→…→10→0,乾脆地扣到 0 為止。這就是 L1 能歸零、L2 不能的本質。

🎮 三、動手玩:看 Lasso 把一個係數「砍成 0」

這張圖畫的不是資料,而是「係數的世界」。先看懂圖例,再拉滑桿到最右邊,你會親眼看到一個特徵被移除。

🗺️ 怎麼看這張圖(重要!)

兩條軸 = 兩個係數 β1、β2,不是資料!原點 (0,0) 代表「兩個係數都是 0」。落在某條軸上,就代表「另一個係數=0」。
灰色同心圓 = 誤差等高線:越靠中心誤差越小、越外圈越大。
藍點 = 原始最佳解:完全不加懲罰時、誤差最小的係數。
紅色菱形 = L1 的「允許範圍」:係數只能待在菱形內。λ 越大菱形越小。注意它的尖角剛好戳在座標軸上
紅點 = Lasso 最終解:誤差圈擴大時,很容易先碰到菱形的尖角 → 解落在軸上 → 某個係數=0。
β1 (特徵1) β2 (特徵2) 原始最佳解
← 懲罰弱・菱形大懲罰強・菱形小 →

目前狀態:中等懲罰

// L1 計算過程即時監控
限制式 (Constraint): |β₁| + |β₂| ≤ C

👀 一定要試:把滑桿拉到最右

往右拉(加大 λ)→ 紅色菱形變小 → 紅點滑向尖角 → β2 變成 0,右邊面板會跳出「⚠️ 特徵 x₂ 被移除」。因為 0 × x₂ = 0,這個特徵對模型再也沒有影響——這就是 Lasso 最招牌的特徵選擇(Feature Selection)

📐 四、為什麼 L1 會歸零、L2 不會?

秘密全在「圈圈的形狀」——尖角 vs 圓滑。這是考試最愛考的對比。

1
L1 是「菱形」,尖角剛好在軸上
誤差圈往外擴、第一次碰到菱形就停。菱形的四個尖角正好戳在座標軸上,而尖角又特別「突出」,所以誤差圈極容易先碰到尖角。碰到尖角 = 落在軸上 = 另一個係數=0(被選掉了)。
2
L2 是「圓形」,圓滑沒尖角
圓的邊是平滑的,誤差圈碰上來時,碰觸點幾乎都在斜斜的圓弧上、極難剛好在軸上。所以 L2 只會讓兩個係數一起變小、但都不歸零。一個有尖角、一個沒有,差別就這麼來的。
比較L1(Lasso)· 本頁L2(Ridge)
懲罰項絕對值和 Σ|β|平方和 Σβ²
範圍形狀菱形(有尖角)圓形(圓滑)
更新像減法 → 扣到 0除法 → 趨近 0
對係數把不重要的砍成 0全部一起縮小、不歸零
特徵選擇✅ 會(稀疏解)❌ 不會(保留全部)
最適場景特徵很多、想挑關鍵少數特徵相關、想要穩定係數

🧠 記憶口訣

Lasso 的「L」長得像數字 1 → L1。所以 L1 = Lasso = 會歸零 = 做特徵選擇L2 = Ridge = 只縮小、不歸零。兩個都想要?用 Elastic Net(L1+L2)。

🥣 五、別怕那個尖角:L1 仍是「凸函數」

很多人擔心:有尖角會不會讓最佳化卡住?答案是不會——L1 雖然有尖角,依然是凸函數

β Loss y = |β| 任兩點連線都在曲線上方 這就是「凸函數」

V 型曲線:|β| 的圖形是一個 V 字。

凸的定義:在曲線上任取兩點連直線(虛線),這條線永遠在曲線上方——這就是凸函數。

為什麼重要:凸函數像一個碗,球滾下去一定會停在最低點(全域最佳解),不會卡在半山腰的假谷底。

結論:MSE 是凸的、L1 也是凸的,兩個凸函數相加還是凸函數,所以 Lasso 一定找得到最佳解。

🎯 六、什麼時候用 Lasso?

一句話:特徵又多又雜、想自動挑出關鍵少數的時候。

✅ Lasso 的主場

想像你有上百個特徵(例如基因資料、文字的上萬個詞、一堆感測器讀數),但真正有用的可能只有十幾個。Lasso 會把沒貢獻的特徵係數直接壓成 0,自動留下重要的少數。好處是:模型更簡單、更快、更好解釋(你能直接說「模型只用到這幾個特徵」)。

⚠️ Lasso 的弱點

多個特徵高度相關時,Lasso 常會「隨機只留一個、砍掉其他」,有點不穩。這種情況用 Elastic Net(L1+L2 混合)通常更穩——它一邊做特徵選擇、一邊保留 Ridge 的穩定性。

🎚️ 七、λ 要設多少?

λ 控制「砍得多狠」。

λ 太小 → 幾乎不砍接近一般迴歸,可能還是過擬合、留太多特徵。
λ 太大 → 砍過頭連有用的特徵都歸零,模型太簡單、欠擬合。
用交叉驗證挑 λ試一排 λ,看哪個在沒見過的資料上表現最好。
先標準化特徵否則尺度大的特徵被罰過重、被誤砍;截距通常不罰。

📝 八、iPAS 考題實戰

題目 1:在 Lasso 模型中,L1 正則化導致參數收斂為零的原因為何?
註:第四梯次初級 AI 應用規劃師・第一科・第 6 題
查看答案與詳解
正確答案:(C)

這題考幾何直覺。L1 的懲罰是絕對值(菱形、有尖角),最佳化時解很容易落在尖角=座標軸上,使某些參數變成 0,形成稀疏解(Sparse Solution)
(B) 錯:L1 在 0 點不平滑(有尖角);(D) 錯:L1 依然是凸函數

題目 2:關於正則化 L1、L2 方法,下列敘述何者正確?
註:第四梯次初級 AI 應用規劃師・第一科・第 4 題
查看答案與詳解
正確答案:(C)
  • (A) ❌:權重越多越複雜、越容易過擬合,不是提升正確率。
  • (B) ❌:L1 才是 Lasso,L2 是 Ridge(口訣:Lasso 的 L 像 1)。
  • (C) ✅:L1 用「絕對值和」懲罰來控制複雜度,正是定義。
  • (D) ❌(陷阱):真正能把權重壓「成 0」的是 L1;L2 只會「趨近 0、不歸零」。

✅ 九、30 秒重點整理

Lasso = L1 正則化在損失加「係數絕對值和 × λ」的懲罰。
會歸零 → 特徵選擇菱形尖角在軸上,把沒用的係數砍成 0。
L1 減法、L2 除法L1 扣到 0;L2 只趨近 0。
有尖角但仍是凸函數保證找得到全域最佳解。
主場:高維、想挑特徵特徵相關時改用 Elastic Net 更穩。
λ 用交叉驗證挑太小不砍、太大砍過頭;先標準化特徵。

📝 iPAS 考點提醒

L1 正則化(Lasso)是控制過擬合與特徵選擇的方法,iPAS 中級科目三考點。重點:在損失加上係數絕對值和的懲罰,會把不重要特徵的係數壓到 0,產生稀疏解、自動選特徵。易混點:L1(會歸零做選擇)與 L2(只縮小不歸零)不同;L1 的菱形約束尖角使解落在座標軸上。情境:特徵很多想自動篩選;特徵高度相關時 Elastic Net(L1 加 L2)更穩。

想練情境題與詳解 → AI 學習與考證地圖

❓ 常見問題

L1 正則化(Lasso)做什麼?

在損失函數加上權重絕對值之和的懲罰,促使權重縮小,並能把不重要特徵的權重直接壓成 0,達到自動特徵選擇。

為什麼 L1 會產生稀疏解?

絕對值懲罰在 0 附近有尖角,最佳化時容易停在座標軸上(某些權重恰為 0);幾何上其等高線是菱形,易與損失相切於頂點。

L1 和 L2 的關鍵差別?

L1 產生稀疏解(可做特徵選擇);L2(Ridge)只把權重平滑縮小、不歸零。兩者都能抑制過擬合,但效果與用途不同。

什麼時候選 L1?

特徵很多、懷疑只有少數真正有用、想自動篩特徵或要可解釋模型時很合適;它會把無用特徵係數壓成 0。

Elastic Net 是什麼?

同時結合 L1 與 L2 懲罰,兼具特徵選擇與穩定性;在特徵高度相關時通常比單純 Lasso 更穩。

🧭 相關主題

← 返回 AI 學習與考證地圖