スパース回帰の基礎と実践:L1/L0正則化からElastic Netまで高次元データの特徴選択を極める

はじめに — スパース回帰とは何か

スパース回帰(sparse regression)は、多数の説明変数(特徴量)がある状況で、モデルの説明に本当に必要な変数のみを選択し、残りをゼロに近づける(またはゼロにする)回帰手法の総称です。高次元データ(p ≫ n や p と n が同程度)やノイズの多い実データにおいて、過学習を抑えつつ解釈性の高いモデルを構築するために広く使われます。

なぜスパース性が重要か

  • 解釈性:限られた変数だけを用いるため、どの要因が結果に大きく寄与しているかが明確になります。

  • 一般化性能:不要なパラメータを除くことで過学習を防ぎ、テスト時の性能向上につながることが多いです。

  • 計算効率と保存性:高次元データを扱う際、スパース構造は計算や記憶の面で有利に働きます。

数学的定式化(簡潔に)

標準的な線形回帰のケースを考えると、目的は残差平方和を最小化することです。スパース回帰ではこれにペナルティ項を加え、係数ベクトル β の「大きさ」だけでなく「非ゼロ性」も抑えることを目指します。一般的な形式は:

minimize_{β} (1/2n) ||y - Xβ||_2^2 + λ P(β)

ここで P(β) は正則化項(ペナルティ)で、λ ≥ 0 は正則化強度を制御するハイパーパラメータです。使われる P によって方法の名称や性質が変わります。

代表的な手法と特徴

  • L0 正則化(ベストサブセット選択)
    非ゼロ係数の数を直接ペナルティ化する方法(P(β)=||β||_0)。本質的にスパースな解を得られるが、組合せ最適化となり一般に NP-困難です。近年は整数最適化や分枝限定法の進展により小〜中規模問題で実用可能になってきています。

  • L1 正則化(LASSO)
    P(β)=||β||_1 を用いる方法。Tibshirani(1996)が導入した LASSO は凸最適化であり、滑らかな最小化問題に帰着するため計算が比較的容易で、係数の多くをゼロにします。L1 は L0 の凸緩和とみなされます。

  • リッジ回帰(L2)との対比
    リッジは P(β)=||β||_2^2 を用いる方法で、係数を小さくしますがゼロにしにくいためスパース性は生まれません。相関の高い説明変数がある場合、リッジは安定した推定を提供します。

  • Elastic Net
    L1 と L2 を組み合わせた正則化。相関の強い変数群から複数を選ぶ挙動があり、LASSO の不安定さを緩和します(Zou & Hastie 2005)。

  • 非凸ペナルティ(SCAD, MCP など)
    Fan & Li の SCAD(2001)や Zhang の MCP は、重要な係数を過度に縮小しないことを目的とした非凸ペナルティです。適切な条件下で「オラクル性(oracle property)」を満たすことがありますが、最適化が難しく局所解の問題があります。

計算アルゴリズム(概要)

  • 座標降下法(Coordinate Descent)
    各変数の係数を順に最適化する単純かつ高速な手法で、特に L1 ペナルティに強力です。大規模問題で広く用いられ、glmnet など主要実装はこのアプローチを採用しています。

  • LARS(Least Angle Regression)
    Efron et al. による手法で、LASSO の解パス(λ を変化させたときの解の変化)を効率良く計算できます。解が稀に不連続になる場合の処理を含みます。

  • 直交マッチング追跡(OMP)や貪欲法
    Greedy な選択を繰り返すことでスパース解を構築します。単純で直感的ですが、局所最適に陥ることがあります。信号処理分野でよく使われます。

  • プロキシマル法(ISTA / FISTA 等)
    勾配ステップと閾値化を組み合わせる反復アルゴリズム。大規模データに対しても適用可能で、収束加速版(FISTA)が頻用されます。

  • 整数計画・分枝限定法
    L0 最適化のために使われる。計算負荷は高いが、組合せ的に厳密解を求められる場合がある。

理論的性質と前提条件

  • 一貫性と選択の一致
    LASSO が真のスパースモデルを一貫して選択するためには、設計行列 X に対して「無相関(irrepresentable)条件」や制限付き厳密性(Restricted Eigenvalue)条件などが必要です。これらが満たされないと、重要変数を見落としたり、誤って変数を選んだりすることがあります。

  • Restricted Isometry Property(RIP)と圧縮センシング
    圧縮センシング理論では、計測行列が RIP を満たせば L1 最小化で元のスパース信号を復元できることが示されています(Candès, Tao, Donoho の研究)。これは主に信号復元の領域で重要です。

  • オラクル性
    いくつかの非凸ペナルティ(SCAD, MCP)は、真の非ゼロ係数を正確に特定し、かつ推定値がオラクル推定量と同等の収束率を持つといった性質(オラクル性)を示す場合があります。

  • 推論の問題点と最近の進展
    LASSO による推定はバイアス(縮小)を含むため、単純な標準誤差や p 値の解釈が難しい。近年は「debiased / desparsified LASSO」といった方法が提案され、係数に関する統計的推論(信頼区間、仮説検定)を可能にしています(van de Geer ら、Javanmard & Montanari ら)。

モデル選択とハイパーパラメータ調整

スパース回帰では正則化パラメータ λ(と Elastic Net なら L1/L2 の比率 α)を適切に選ぶことが重要です。一般的な方法は以下の通りです。

  • 交差検証(k-fold CV):予測性能を基準に λ を選ぶ最も実務的な手法。過学習を抑えつつ汎化誤差を最小化する。

  • 情報量基準(AIC, BIC, eBIC):モデルの複雑さを考慮して λ を選定。高次元では修正された BIC や eBIC が提案されている。

  • 正則化パスの可視化:λ を減少させながら係数の変化を見ると、変数選択の過程が直感的に理解できる(LARS や glmnet のプロット)。

応用例

  • 遺伝学・ゲノミクス:多数の遺伝子マーカーの中から疾患に関与するものを選択する。

  • 信号処理(圧縮センシング):限られた観測からスパースな信号を復元する。

  • 金融データ解析:多数の説明変数(経済指標、市場因子)から予測に寄与する要因を抽出する。

  • 機械学習の特徴選択:高次元特徴空間での次元削減と過学習抑制。

実務上の注意点と落とし穴

  • 相関の強い説明変数:LASSO は相関の強い変数群の中から1つを選ぶ傾向があり、重要な変数を誤って除外することがある。Elastic Net やグループラッソ(Group Lasso)などの利用を検討する。

  • 標準化の必要性:特徴量のスケールが異なる場合、正則化項の効果が偏るため事前に標準化(平均0・分散1)することが一般的。

  • 変数のカテゴリ化・ダミー変換:カテゴリ変数をダミー変数にした場合、それらをグループとして扱う手法(Group Lasso)を検討すると解釈性が保たれる。

  • モデルの不確実性:選択された変数はデータ依存で変わりやすい。ブートストラップや安定性選択(stability selection)で選択の堅牢性を評価することが推奨されます。

拡張と関連手法(概観)

  • Group Lasso:変数をグループ単位で選択する。カテゴリ変数や多変量係数の選択に有用。

  • Adaptive Lasso:係数ごとに重みを付けた L1 ペナルティで、適切な重み付けにより一部の理論的利点(オラクル性)を達成する場合がある。

  • Sparse PCA / Sparse CCA:主成分分析や相関解析にスパース性を導入したもの。

  • 行列・テンソルのスパース化:低ランク化とスパース化を同時に扱う拡張も研究されている。

まとめ — いつスパース回帰を選ぶか

スパース回帰は「予測性能だけでなく、モデルの解釈性も重視したい」「変数が多数あって本当に必要なものを特定したい」といった場面で非常に有用です。ただし、データの相関構造やサンプル数、目的(予測か推論か)によって手法の選択や前処理、ハイパーパラメータの設定が変わります。実務では交差検証、安定性評価、場合によっては非凸ペナルティやグループ化の利用を組み合わせることで、より信頼できるモデルが得られます。

参考文献