L1 + L2 · Regularization

Elastic Net

彈性網路 · 兼具特徵選擇與穩定性的折衷者

Lasso 太激進、亂砍特徵;Ridge 太保守、全部留下。
Elastic Net 把兩種懲罰加在一起,用一個比例參數 α 決定該偏向哪一邊。

min ‖y − Xβ‖² + λ[ α‖β‖₁ + (1−α)‖β‖² ]
01 — 白話直覺

三種「個性」的正則化

正則化就是在「擬合資料」之外,額外懲罰係數太大。懲罰的方式不同,行為就天差地遠:

Lasso
L1 · 尖角

激進的裁判,直接把不重要的係數砍成 0。精簡,但相關特徵裡常只「亂選一個」,不穩定。

Ridge
L2 · 平滑

保守的好好先生,把所有係數一起縮小,但幾乎不會歸零。穩定,卻不做特徵選擇、不夠精簡。

Elastic Net
L1 + L2

折衷者:保留 Lasso 的「能砍到 0」尖角,又帶 Ridge 的圓滑穩定。相關特徵會被一起選、一起砍。

注意三個圖形:菱形有尖角、圓形平滑、Elastic Net 是圓角菱形。這個形狀差異,正是下一節的關鍵。

02 — 核心互動

看見約束區域:為什麼能做特徵選擇?

把問題畫成兩個係數 (β₁, β₂) 的平面。正則化等於把解限制在一塊約束區域內,而最佳解會落在「資料的理想解 β̂」最靠近約束邊界的點上。

尖角(L1 菱形)剛好長在座標軸上,解很容易被吸到角上 → 某個係數 = 0,特徵被剔除;圓形(L2)沒有角,解通常落在斜對角 → 係數都保留。

0.50
α = 0 純 Ridge (L2 圓)α = 1 純 Lasso (L1 菱形)
解的 β₁
解的 β₂
狀態
L1 菱形(參考) L2 圓形(參考) 目前 Elastic Net 區域

拖曳黑色的 β̂ 點移動「理想解」,並滑動 α。觀察:把 α 推向 1、且 β̂ 偏向某一軸時,解會「啪」地吸到尖角上,讓另一個係數歸零。

一句話

Elastic Net 的約束區域在 L2 的圓和 L1 的菱形之間連續變形。α 越大越尖、越容易產生稀疏(特徵選擇);α 越小越圓、越穩定。你正在親手調這個權衡。

03 — 係數收縮實驗

調 α 與 λ,看特徵被怎麼處理

下面是 8 個特徵在普通最小平方法(OLS)下的原始係數(淡色框)。調整下方參數,實心柱就是 Elastic Net 收縮後的結果——歸零的特徵會被標上 ✕ 剔除

0.50
1.00
保留特徵
剔除特徵

把 α 調到 0(純 Ridge):係數全部縮小但沒人歸零。把 α 調到 1(純 Lasso):小係數一個個被砍成 0。中間值就是 Elastic Net 的折衷。

βEN = soft(β̂, λα) / (1 + λ(1−α))

註:此為正交設計下的封閉解。soft( ) 是軟門檻(L1 把小係數推向 0),分母則是 L2 的等比縮小。

04 — 群組效應

相關特徵:一起選,還是亂選一個?

真實資料常有高度相關的特徵群組(例如基因組學裡同一條路徑上的基因)。這時 Lasso 會出問題:它傾向只留群組裡的某一個,而且每次換一批資料,留下的還不一樣——不穩定

Elastic Net 因為帶了 L2 項,會把相關特徵當成一群一起處理,要嘛一起留、要嘛一起砍,結果穩定可重現。

在 Lasso 模式下反覆按「重新抽一批資料」,觀察相關群組(G1、G2、G3)留下來的對象一直跳動;切到 Elastic Net,三個就會穩定地一起亮起。(此為概念示意)

05 — 優缺點與場景

什麼時候該用 Elastic Net?

優點

  • 同時做到特徵選擇係數穩定
  • 相關特徵會被一起選或一起砍(群組效應)
  • 特徵數遠多於樣本數(p ≫ n)時仍可運作
  • 用 α 一個旋鈕,就能在 Lasso 與 Ridge 之間自由滑動

缺點

  • 多了一個超參數 α(L1/L2 比例)要調
  • 加上 λ,要同時搜尋兩個維度,調參成本較高
  • 解釋性比純 Lasso 稍弱(保留的特徵較多)
  • α、λ 沒調好時,可能兩邊優點都拿不到

典型應用場景

🧬
基因組學分析
數萬個基因、樣本少,且同路徑基因高度相關
📈
高維度稀疏資料
特徵極多但真正有用的少,需自動篩選
🔗
相關特徵群組選擇
希望相關變數成群進出,而非任意挑一個

📝 iPAS 考點提醒

Elastic Net 結合 L1(Lasso)與 L2(Ridge)兩種正則化,iPAS 中級科目三考點。重點:兼顧特徵選擇(稀疏)與係數穩定。易混點:純 Lasso 遇一群高度相關特徵會隨機只留一個,加入 L2 能讓相關特徵一起保留、更穩;靠 l1_ratio 調 L1 與 L2 比例,兩端退化為 Ridge 與 Lasso。情境:特徵數多且彼此相關時優於單用 Lasso 或 Ridge。

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

❓ 常見問題

Elastic Net 是什麼?

結合 L1(Lasso)與 L2(Ridge)兩種正則化的線性模型;兼顧特徵選擇與係數穩定。

為什麼要結合 L1 和 L2?

純 Lasso 遇到一群高度相關特徵會隨機只留一個;加入 L2 能讓相關特徵一起被保留、結果更穩定。

Elastic Net 的參數?

一個控制整體強度(alpha 或 lambda),一個控制 L1 與 L2 比例(l1_ratio);兩端分別退化為 Ridge 與 Lasso。

何時選 Elastic Net?

特徵數多、且彼此相關時的好選擇;想要稀疏又不想犧牲穩定度時優於單用 Lasso 或 Ridge。

怎麼調參?

用交叉驗證同時掃 alpha 與 l1_ratio 的組合,選使驗證誤差最小者。

🧭 相關主題

← 返回 AI 學習與考證地圖