ラッソ回帰

**ラッソ回帰**（ラッソかいき、**least absolute shrinkage and selection operator**、**Lasso**、**LASSO**）は、変数選択と正則化の両方を実行し、生成する統計モデルの予測精度と解釈可能性を向上させる回帰分析手法。1986年に地球物理学の文献で最初に導入され、その後1996年に が独自に再発見して一般化した。

ラッソ回帰はもともと最小二乗法で定義されていた。最小二乗法の単純なケースでは、予測器の振る舞いについて多くの事実が分かる。すなわち、リッジ回帰やとの関係、ラッソ係数予測といわゆるソフトしきい値処理（soft thresholding）との関係である。

一般化線形モデル、一般化推定方程式、比例ハザードモデル、など、さまざまな統計モデルに簡単に拡張できる。

## 動機
ラッソ回帰は、与えられた共変量の一部のみ最終モデルで使用することにより、回帰モデルの予測精度と解釈可能性を向上させるために導入された。

ラッソ回帰以前は、段階的選択が変数選択に広く用いられていた。これは、少数の共変量のみが結果と強い関係がある場合などには予測精度を向上させるが、それ以外の場合は、予測誤差を悪化させる可能性がある。 また、大きな回帰係数を縮小して過剰適合を減らすリッジ回帰も予測精度を向上させるために用いられていたが、リッジ回帰では共変量選択を実行しない。

ラッソ回帰は、回帰係数の絶対値の合計を固定値よりも小さくすることでこれらの目標を両方とも達成できる。これにより、特定の係数が強制的にゼロに設定され、これらの係数を含まないより単純なモデルが効果的に選択される。この考え方は、リッジ回帰に似ているが、リッジ回帰の場合はこれは係数のサイズを縮小するだけであり、ゼロに設定することはない。

## 基本形
ラッソ回帰はもともと最小二乗法の場面で導入された。このケースを最初に検討することは有益である。

それぞれが p 個の共変量と単一の結果で構成される N 個のケースで構成されるサンプルを考える。

y_i を結果、x_i:=(x_1,x_2,\ldots,x_p)^T を i 番目のケースの共変量ベクトルとする。
ラッソ回帰では、次の式を解くことを考える。

:  \min_{ \beta_0, \beta } \left\{ \sum_{i=1}^N (y_i - \beta_0 - x_i^T \beta)^2 \right\}\quad \text{ subject to } \sum_{j=1}^p |\beta_j| \leq t.  

ここで、t を正則化の量を決定する事前に指定された自由パラメーターとする。
共変量行列 X について、X_{ij} = (x_i)_j、すなわち x_i^T が X の第 i 行とすると、次のように簡潔に記述することができる。

:  \min_{ \beta_0, \beta } \left\{ \frac{1}{N} \left\| y - \beta_0 1_N - X \beta \right\|_2^2 \right\}\quad \text{ subject to } \| \beta \|_1 \leq t. 

ここで、\| u \|_p = \left( \sum_{i=1}^N | u_i |^p \right)^{1/p} を標準 <math> \ell^p </math>ノルムとし、 1_N は 1 が N 個並んだ縦ベクトルとする。

データポイント x_i のスカラー平均を \bar{x}、応答変数 y_i の平均を \bar{y} と記載すると、\beta_0 の推定値 \hat{\beta}_0 = \bar{y} - \bar{x}^T \beta  を用いて下記のように記述できる。

:  y_i - \hat{\beta}_0 - x_i^T \beta = y_i - ( \bar{y} - \bar{x}^T \beta ) - x_i^T \beta = ( y_i - \bar{y} ) - ( x_i - \bar{x} )^T \beta, 

したがって、中央に配置された（ゼロ平均化された）変数を処理するのが標準的である。解が測定スケールに依存しないよう、共変量は通常、標準化されている  \textstyle \left( \sum_{i=1}^N x_{i}^2 = 1 \right) 。

参考のために書き直すと

:  \min_{ \beta \in \mathbb{R}^p } \left\{ \frac{1}{N} \left\| y - X \beta \right\|_2^2 \right\}\quad \text{ subject to } \| \beta \|_1 \leq t. 

これは、ラグランジュの未定乗数法に基づいて書き直すと、下記の形式と同値である。

:  \min_{ \beta \in \mathbb{R}^p } \left\{ \frac{1}{N} \left\| y - X \beta \right\|_2^2 + \lambda \| \beta \|_1 \right\} 

ここで、 t  と  \lambda  との関係はデータに依存する。

### 正規直交共変量
ラッソ回帰の推定量に関する基本的な性質を下記に示す。

まず、共変量が正規直交であると仮定すると、内積  (\cdot \mid \cdot)  およびクロネッカーのデルタ \delta_{ij} を用いて  ( x_i \mid x_j ) = \delta_{ij}  と記載できる。
これは、X^T X = I と記載しても同等である。

次に、勾配法を使用すると、

: 
\begin{align}
\hat{\beta}_j = {} & S_{N \lambda}( \hat{\beta}^\text{OLS}_j ) = \hat{\beta}^\text{OLS}_j \max \left( 0, 1 - \frac{ N \lambda }{ |\hat{\beta}^\text{OLS}_j| } \right) \\
& \text{ where } \hat{\beta}^\text{OLS} = (X^T X)^{-1} X^T y
\end{align}
 

 S_\alpha  はソフトしきい値演算子と呼ばれる。これは、小さい値をゼロに設定し、値をゼロに変換する（十分に小さい場合は正確にゼロにする）ためである。ハードしきい値演算子  H_\alpha  は小さい値をゼロにして大きい値を変更しない。

これは、下記の最小化を目的とするリッジ回帰と比較可能である。

:  \min_{ \beta \in \mathbb{R}^p } \left\{ \frac{1}{N} \| y - X \beta \|_2^2 + \lambda \| \beta \|_2^2 \right\} 

これから

:  \hat{\beta}_j = ( 1 + N \lambda )^{-1} \hat{\beta}^\text{OLS}_j. 

したがって、リッジ回帰は、 (1 + N \lambda)^{-1}  という一様係数で縮小することになり、係数をゼロに設定しない。

ベストサブセット選択回帰と比較することもできる。この手法では、下記の最小化を目標とする。

:  \min_{ \beta \in \mathbb{R}^p } \left\{ \frac{1}{N} \left\| y - X \beta \right\|_2^2 + \lambda \| \beta \|_0 \right\} 

ここで、 \| \cdot \|_0  は 「  \ell^0  ノルム」である。z の非ゼロ成分が m 個あるとき、 \| z \| = m  と定義する。

この場合、以下が示される。

: \hat{\beta}_j = H_{ \sqrt{ N \lambda } } \left( \hat{\beta}^\text{OLS}_j \right) = \hat{\beta}^\text{OLS}_j \mathrm{I} \left( \left| \hat{\beta}^\text{OLS}_j \right| \geq \sqrt{ N \lambda } \right) 

ここで、 H_\alpha  はいわゆるハードしきい値演算子で、\mathrm{I} はインジケーター関数（引数が true の場合は 1、それ以外の場合は 0）である。 

従って、ラッソ回帰による推定値は、リッジ回帰とベストサブセット選択回帰の両方による推定値と似た特徴を持つ。すなわち、リッジ回帰のようにすべての係数の大きさを縮小するだけでなく、ベストサブセット選択回帰と同様に、それらの一部をゼロに設定する。さらに、リッジ回帰はすべての係数を定数係数でスケーリングするが、ラッソ回帰は代わりに定数を用いて係数をゼロに近づけて、到達した場合は係数をゼロに設定する。

## 一般的な形式
ラッソ正則化は、一般化線形モデル、一般化推定方程式、比例ハザードモデル、一般的なM-推定量など、さまざまな目的関数に拡張できる。
目的関数を下記とすると

:  \frac{1}{N} \sum_{i=1}^N f( x_i, y_i, \alpha, \beta ) 

ラッソ正則化した予測値は次の解となる

:  \min_{ \alpha, \beta } \frac{1}{N} \sum_{i=1}^N f( x_i, y_i, \alpha, \beta )\quad \text{subject to } \| \beta \|_1 \leq t 

ここで、 \beta  だけが罰則を受け、\alpha は許可された値を自由に取ることができる。上記の基本形において、 \beta_0  が罰則を受けなかったことに相当する。

## 解釈

### 幾何学的解釈

上で説明したように、ラッソ回帰は係数をゼロに設定できるが、表面的には類似しているように見えるリッジ回帰はできない。これは、2つのケースでの制約境界の形状の違いによるものである。ラッソ回帰とリッジ回帰の両方は、同じ目的関数を最小化すると解釈できる。

:  \min_{ \beta_0, \beta } \left\{ \frac{1}{N} \left\| y - \beta_0 - X \beta \right\|_2^2 \right\} 

ここで、制約条件が異なる。
ラッソ回帰での制約条件は  \| \beta \|_1 \leq t  である。
リッジ回帰での制約条件は  \| \beta \|_2^2 \leq t  である。

2次元のパラメータ空間（w1, w2）における制約領域を図示した。
ラッソ回帰（L1-norm）では正方形に相当する（一般に n 次元の正軸体）。
リッジ回帰（L2-norm）では円に相当する（一般に n 次元の超球面）。
パラメータは制約条件としてパラメータ空間のこれらの領域を動いた中で、目的関数を最小化する値を取る。
ラッソ回帰では、「角（かど）」が存在することで、特定の係数をゼロにした地点を選びやすくなる。

### ベイジアン解釈

係数の事前分布として正規分布を仮定した場合の MAP推定値がリッジ回帰に相当するのと同様に、係数の事前分布としてラプラス分布を仮定した場合の MAP推定値がラッソ回帰に相当する。

ラプラス分布はゼロで鋭くピークに達し（その1次導関数は不連続）、確率分布は正規分布よりもゼロに近く集中する。
このことからも、なぜラッソ回帰では一部の係数をゼロに設定する傾向があるのに、リッジ回帰はそうではないのか、ということを説明できる。

: p(\mathbf{y}, \boldsymbol{\beta} \mid \mathbf{X}) = p(\mathbf{y} \mid \boldsymbol{\beta}, \mathbf{X})\;p(\boldsymbol{\beta} \mid \mathbf{X}) = \prod_{n=1}^N p(y_n \mid \boldsymbol{\beta}, \mathbf{x}_n)\;\prod_{k=0}^K p(\beta_k)

すなわち、

: \log{p(\mathbf{y}, \boldsymbol{\beta} \mid \mathbf{X})} = \sum_{n=1}^N \log{p(y_n \mid \boldsymbol{\beta}, \mathbf{x}_n)} + \sum_{k=0}^K \log{p(\beta_k)}

である。

ここで、\mathbf{y} の事前分布として平均 \mathbf{X} \boldsymbol{\beta}、分散 \sigma^2 の正規分布を仮定すると、右辺第1項は

: 
\sum_{n=1}^N \log{\left( \frac{1}{\sqrt{2\pi}\,\sigma} \exp{\left( -\frac{(y_n - \mathbf{x}_n^\top \boldsymbol{\beta})^2}{2\sigma^2} \right)} \right)} = - N \log(\sqrt{2\pi}\,\sigma) - \frac{1}{2\sigma^2} \sum_{n=1}^N (y_n - \mathbf{x}_n^\top \boldsymbol{\beta})^2 

さらに、パラメータ \boldsymbol{\beta} の事前分布として平均 0、分散 2b^2 のラプラス分布を仮定すると、右辺第2項は

:  \sum_{k=0}^K \log{\left( \frac{1}{2b}\exp{\left( - \frac{b} \right)} \right)} = - (K + 1) \log(2b) - \frac{1}{b} \sum_{k=0}^K | \beta_k |

以上から、\lambda = \frac{2\sigma^2}{bN} を用いて次のように表される。

: \log{p(\mathbf{y}, \boldsymbol{\beta} \mid \mathbf{X})} = - \frac{N}{2\sigma^2} \left( \frac{1}{N} \sum_{n=1}^N (y_n - \mathbf{x}_n^\top \boldsymbol{\beta})^2 + \lambda \sum_{k=0}^K | \beta_i | \right) + \mathrm{const.}

括弧内は、ラグランジュの未定乗数法に基づく記載と同等である。

## 一般化

### エラスティックネット

2005年、Zou と Hastie は、ラッソ回帰に存在する欠点に対処するためにエラスティックネットを導入した。
ラッソ回帰は、標本数が共変量の数よりも少ないとき（ n ）、標本数（ n  個）までしか共変量を選択できない。
また、ラッソ回帰では高度に相関する共変量の組み合わせから1つしか共変量を選択しないことが多いため、共変量が強く相関しているならば、パフォーマンスがリッジ回帰に劣る場合がある。

エラスティックネットは \ell^2 によるペナルティ項を追加することによってラッソ回帰を拡張し、下記の式を得る。

:  \min_{ \beta \in \mathbb{R}^p } \left\{ \left\| y - X \beta \right\|_2^2 + \lambda_1 \| \beta \|_1 + \lambda_2 \| \beta \|_2^2 \right\}, 

これは次の式を解くことと同じである。

: 
\begin{align}
\min_{ \beta_0, \beta } \left\{ \left\| y - \beta_0 - X \beta \right\|_2^2 \right\} & \text{ subject to } ( 1 - \alpha ) \| \beta \|_1 + \alpha \| \beta \|_2^2 \leq t, \\
& \text{ where } \alpha = \frac{\lambda_2}{\lambda_1 + \lambda_2}.
\end{align}


この問題は単純なラッソ回帰の形式で記述できる。

:  \min_{ \beta^* \in \mathbb{R}^p } \left\{ \left\| y^* - X^* \beta^* \right\|_2^2 + \lambda^* \| \beta^* \|_1 \right\} 

ただし、

:  X_{(n+p) \times p}^* = ( 1 + \lambda_2 )^{-1/2} \binom{X}{ \lambda_2^{1/2} I_{p \times p} }  、 &nbsp; y_{(n+p)}^* = \binom{y}{0^p}, \qquad \lambda^* = \frac{ \lambda_1 }{ \sqrt{ 1 + \lambda_2 } }  、 &nbsp; \beta^* = \sqrt{ 1 + \lambda_2 } \beta.  

そして、 \hat{\beta} = \frac{ \hat{\beta}^* }{ \sqrt{ 1 + \lambda_2 } }  、共変量が互いに直交する場合、

:  \hat{\beta}_j = \frac{ \hat{\beta}^\text{*,OLS}_j }{ \sqrt{ 1 + \lambda_2 } } \max \left( 0, 1 - \frac{ \lambda^* }{ \left| \hat{\beta}^\text{*,OLS}_j \right| } \right) = \frac{ \hat{\beta}^\text{OLS}_j }{ 1 + \lambda_2 } \max \left( 0, 1 - \frac{ \lambda_1 }{ \left| \hat{\beta}^\text{OLS}_j \right| } \right) = ( 1 + \lambda_2 )^{-1} \hat{\beta}^\text{lasso}_j. 

エラスティックネットのペナルティは、ラッソ回帰およびリッジ回帰のペナルティの組み合わせに相当する。

正規化パラメータ  \lambda_1, \lambda_2  は、交差検証法を用いたグリッド・サーチにより選択されることが多い。

### Adaptive Lasso
2006年、オラクル性 oracle properties を持つように、罰則項に重みを乗じる手法が提唱された。

:  \operatorname{arg\,min}_{ \boldsymbol{\beta} } \left\| \mathbf{y} - \sum_{j=1}^p \mathbf{x}_j \beta_j \right\| + \lambda \sum_{j=1}^p w_j \left| \beta_j \right|.

### MI-LASSO
2013年、多重代入されたデータセットに対して、ラッソ回帰により変数選択する手法が提唱された。

## 正則化パラメータの選択
収縮の強度と変数の選択を制御する正則化パラメータ \lambda を適切に選択することで、予測の精度と解釈可能性を向上することができる。正則化が強くなりすぎると、重要な変数がモデルから削除される、係数が過度に縮小される等の可能性がある。
正則化パラメータ  \lambda  の選択には交差検証法がよく用いられる。

赤池情報量規準（AIC）やベイズ情報量規準（BIC）などのは、交差検証法よりも計算が高速であり、小さいサンプルでもパフォーマンスが変動しにくいため、交差検証よりも好ましい場合がある。
情報量規準は、モデルのサンプル内精度を最大化することによって推定器の正則化パラメータを選択すると同時に、その有効なパラメーターの数/自由度にペナルティを課す。

## 関連項目
* 
* 
* ティホノフ正則化

## 脚注

### 出典