線形回帰モデルにおける説明変数の選択と
回帰係数の縮小推定法:Lasso と Elastic Net
中村知繁
慶應義塾大学理工学部数理科学科南研究室

February 6, 2014
Contents
イントロダクション - 研究背景

Lasso - L1 罰則による、縮小推定と変数選択
Lasso の問題点 - n ≫ p 問題とグループ化効果
Elastic Net - Lasso に変わる新たな手法
Prostate Cancer Data
音声認識
まとめ
今後の課題

2 / 33
研究背景
線形回帰法は、一般的に目的変数 Yn×1 を、説明変数 X1 , ..., Xp の線形
結合で説明する方法である。このような方法のうち最も基本的なものの
1つは、最小二乗法 (OLS 法) であり、OLS 法を利用した回帰係数の推
定値は以下のように表される

ˆ
β(OLS) = (X T X)−1 X T y

(1)

回帰における重要な 2 つの視点
▶

データの予測精度 - 学習データで構築したモデルが、未知のデー
タが得られたとき、結果をどの程度の精度で予測できるか。

▶

モデルの解釈 - 目的変数と説明変数の関係性をみるために、目的
変数に対して影響の大きい説明変数のみで、モデルを構築できて
いるか。

3 / 33
研究背景
線形回帰法は、一般的に目的変数 Yn×1 を、説明変数 X1 , ..., Xp の線形
結合で説明する方法である。このような方法のうち最も基本的なものの
1つは、最小二乗法 (OLS 法) であり、OLS 法を利用した回帰係数の推
定値は以下のように表される

ˆ
β(OLS) = (X T X)−1 X T y

(1)

回帰における重要な 2 つの視点
▶

データの予測精度 - 学習データで構築したモデルが、未知のデー
タが得られたとき、結果をどの程度の精度で予測できるか。

▶

モデルの解釈 - 目的変数と説明変数の関係性をみるために、目的
変数に対して影響の大きい説明変数のみで、モデルを構築できて
いるか。

4 / 33
研究背景 (続き)
予測精度の向上
▶

リッジ回帰:L2 罰則を課したもとで、残差二乗和を最小化
する

▶

問題点:回帰係数を縮小推定するが、一方で説明変数の選択
ができない。

説明変数の選択
▶

変数増加法・変数減少法・最良変数選択法:AIC などを基準
にして、説明変数の選択を行う。

▶

問題点:連続的な説明変数の選択ができない。計算コストが
大きい。

5 / 33
研究背景 (続き)
予測精度の向上
▶

リッジ回帰:L2 罰則を課したもとで、残差二乗和を最小化
する

▶

問題点:回帰係数を縮小推定するが、一方で説明変数の選択
ができない。

説明変数の選択
▶

変数増加法・変数減少法・最良変数選択法:AIC などを基準
にして、説明変数の選択を行う。

▶

問題点:連続的な説明変数の選択ができない。計算コストが
大きい。

6 / 33
Lasso

Lasso とは
▶

Lasso:Least Absolute Shrinkage and Selection Operator

▶

Tibshirani(1996)

特徴
▶

L1 罰則のもとで、残差二乗和を最小化する

▶

回帰係数を縮小推定することで、予測精度を向上させる。

▶

連続的な変数の選択が可能。解は係数のパス図で得られる。

▶

上記 2 つを同時に行うことができる。

7 / 33
Lasso 続き
定義 (Lasso)
▶

X は n × p の標準化された共変量の行列。

▶

y は平均を 0 に調整した、目的変数のベクトル。

▶

Lasso の推定量は
ˆ
β(Lasso) = arg min ||y−Xβ||2 +λ|β|1 , |β|1 =
β

p
∑

|βj | (2)

j=1

または、

ˆ
β(lasso) = arg min ||y −Xβ||2 , subject to
β

p
∑

|βj | ≤ t. (3)

j=1

8 / 33
Lasso 続き
p=2 の場合で Lasso の性質を確認する:縮小推定
▶

簡単のため、共変量の個数を 2 つとする

▶

共変量ベクトルを x1 , x2 、その相関係数を xT x2 = ρ とする。
1

▶

ˆ
ˆ
ここで、β1 (ols) > 0, β2 (ols) > 0 とすると、Lasso の推定量は、(3)
から、以下のように表される。
)
( ) (ˆ
λ
ˆ
β1 (ols) − 2(1+ρ)
β1
ˆ
ˆ = β2 (ols) − λ
β2
2(1+ρ)

+

▶

Lasso は各回帰係数を同じ大きさだけ縮小して推定する。

▶

縮小した結果 0 以下になった推定量を 0 にする : 変数選択の性質

9 / 33
Lasso 続き

p=2 の場合で Lasso の性質を確認する:縮小推定 (続き)
▶

ˆ
ˆ
上のスライドの結果と β1 + β2 = t を用いて、ρ を式から消去する
と、Lasso の推定量は
(
)
ˆ
ˆ
t
β1 (ols) − β2 (ols)
ˆ
β1 (lasso) =
+
2
2
+
(
)
ˆ1 (ols) − β2 (ols)
ˆ
t
β
ˆ
β2 (lasso) =
−
2
2
+

▶

Lasso の推定量は説明変数間の相関の影響を受けない

10 / 33
Lasso 続き

Lasso を解くためのアルゴリズム:LARS 法
▶

Lasso を解析的に解くことは難しい。解析的に解く場合の計
算コストは O(2p ) である (Tibshirani 1996)

▶

Lasso が扱う問題は p が大きい事例が多いので、指数的に計
算量が大きくなる方法では対応できない。

▶

LARS(Efron 2004) のアルゴリズムは計算コスト O(p3 + np2 )
で解くことができる。

▶

LARS : Least Angle Regression

▶

より高速なアルゴリズムとして Coordinate Descent がある。

▶

詳しくは卒論に書いてありますが、ここでは紹介に留めます。

11 / 33
Lasso 続き

シュミレーション : Lasso とリッジ回帰の性質の比較
▶

2 つの独立な変数 z1 と z2 を以下のように定義する
z1 ∼ U (0, 20)

z2 ∼ U (0, 20)

▶

目的変数ベクトルを y = z1 + 0.1 × z2 + N (0, 1) とする

▶

観測された説明変数を以下のように定義する

x1 = z 1 + ϵ 1
x4 = z 2 + ϵ 4
▶

x2 = −z1 + ϵ2
x5 = −z2 + ϵ5

x3 = z1 + ϵ3
x6 = z2 + ϵ6

データ (X, y) にリッジ回帰と、Lasso を当てはめて推定値求
めた結果が次の図。

12 / 33
Lasso 続き : シュミレーション結果

Figure: 左図:Lasso の解のパス図.右図:リッジ回帰の解のパス図:横軸
は |β|1 / max |β|1 の大きさ、縦軸は回帰係数の推定量

13 / 33
Lasso の課題
Lasso の問題点
▶

p ≫ n 問題 (West et al. 2001):p ≫ n の状況において、共変
量が p 個あった場合でも、Lasso が選択できる共変量の個数
は n 個である(分散共分散行列のランクが n になるため)
。

▶

グループ化効果がない:Lasso は変数間の相関を考慮できな
い。高い相関を持ついくつかの変数があるとき、それらをグ
ループ化された変数とよび、Lasso は、その中から 1 つしか
モデルに取り込むことはできない。

▶

n > p での問題:説明変数間の相関が高い場合には、グルー
プ化変数を無視する性質によってリッジ回帰よりも予測精度
が悪くなることがある。

14 / 33
Lasso の課題 続き

Lasso が課題になる具体的な例
▶

白血病の人の遺伝子データ, Golub et al. Science(1999)。

▶

データのサンプル数 72 個, 共変量の数 7129 個.(p ≫ n 問題)

▶

遺伝子データでは、一般的に p ≈ 10000 で、サンプル数
n < 100 である。

▶

遺伝子データでは、一般的に遺伝子同士の結合 (”Pathway”)
が似通っていることから、共変量同士の相関が高いケースが
多く、グループ化された変数が存在する。

▶

→ 解決策の1つとして、(Na¨
ıve) Elastic Net がある。

15 / 33
Elastic Net
定義 (Na¨ Elastic Net : Na¨ ENet)
ıve
ıve
λ1 > 0, λ2 > 0 として、
ˆ
β(Naive ENet) = arg min ||y − Xβ||2 + λ2 ||β||2 + λ1 |β|1
β

または、0 ≤ α ≤ 1 として、これと同値な式

ˆ
β(Naive ENet) = arg min ||y − Xβ||2 , s.t. (1 − α)|β|1 + α||β||2 ≤ t (4)
β

を Na¨ ENet の推定量と定義する。
ıve

Na¨ ENet の特徴
ıve
▶

λ1 → 0 とするとリッジ回帰.λ2 → 0 とすると Lasso になる.

▶

推定量の計算は、次のスライドのように定義の式を変形すること
で Lasso と同様に LARS で解くことができる。

16 / 33
Elastic Net 続き

Na¨ ENet の特徴
ıve
▶

λ1 → 0 とするとリッジ回帰.λ2 → 0 とすると Lasso になる.

▶

計算は、次のスライドのように定義の式を変形することで
Lasso と同様に LARS で解くことができる。

▶

p >> n 問題を解決:(refenet) 式により、Na¨ ENet は n × p
ıve
行列を (n + p) × p に拡張した後に Lasso のアルゴリズムを適
応し推定値を求めるため、p 個の共変量をすべてモデルに取
り込むことができる。

17 / 33
Elastic Net 続き
Na¨ ENet の解法
ıve
まず、以下のように X ∗ と、y ∗ を定義する。
(
)
( )
X
y
∗
∗
X(n+p)×p = (1 + λ2 )−1/2 √
y(n+p) =
(5)
0
λ2 Ip
√
√
ここで、γ = λ1 / (1 + λ2 ), β ∗ = (1 + λ2 )β とすると、次が成り立つ
ため Lasso 同様に LARS 法で解くことができる。

ˆ
β(Naive ENet) = arg min ||y ∗ − X ∗ β ∗ ||2 + γ|β ∗ |1
β

以上より、

1
ˆ
ˆ
β(Naive ENet) = √
β∗
1 + λ2
▶

(5) から、X のランクが p になり、p ≫ n 問題を解消できることが
示される。

18 / 33
Elastic Net 続き : グループ化効果
一般的に罰則付きの最小自乗法は、J(β) を罰則項として次のように表される。

ˆ
β = arg min |y − Xβ|2 + λJ(β)
β

(6)

′

ここで、β = (β1 , · · · , βi , · · · , βj , · · · , βp )、β = (β1 , · · · , βj , · · · , βi , · · · , βp ) とし
′
て、J(β) = J(β ) が成立することを仮定する。すると、次の補題が示せる。

補題
xi = xj (i, j ∈ 1, 2, · · · , p) であると仮定する。
ˆ
ˆ
(a) J(·) が狭義凸関数であるならば、βi = βj が全ての λ > 0 に対して成り立つ。
ˆ ˆ
ˆ
(b) J(β) = |β|1 であるならば、βi βj ≥ 0 かつ、β ∗ は方程式 (7) の異なる最小の値であ
り、全ての s ∈ [0, 1] に対して、以下が成立する。
ˆ∗
βk


ˆ
 βk
ˆ
ˆ
=
(βi + βj ) · (s)
 ˆ
ˆ
(βi + βj ) · (1 − s)

if k ̸= i and k ̸= j,
if k = i
if k = j

→ Lasso の罰則はグループ化効果を持たないことが示せる。一方の Elastic Net の罰則は
グループ化効果を持つことが示唆される。

19 / 33
Elastic Net 続き : グループ化効果
定理
データセット (y, X) とパラメータ (λ1 , λ2 ) が与えられたとき、
ˆ
ıve
β(λ1 , λ2 ) を Na¨ elastic net の推定量とする。ここで、
ˆi (λ1 , λ2 )βj (λ1 , λ2 ) > 0 と仮定し、以下で Dλ ,λ (i, j) を定義
ˆ
β
1 2
する。
1 ˆ
ˆ
Dλ1 ,λ2 (i, j) =
|βi (λ1 , λ2 ) − βj (λ1 , λ2 )|
|y|1
このとき、ρ = xT xj (xi と xj の相関係数) とすると、以下が成り
i
立つ。
1√
Dλ1 ,λ2 (i, j) ≤
2(1 − ρ)
λ2
▶

相関係数によって係数の差の絶対値は押さえ込まれる。
ρ = 1 とすると、2 つの回帰係数の推定量が一致することが
わかる。→ Na¨ ENet はグループ化効果を持つ。
ıve

20 / 33
Elastic Net 続き
Na¨ ENet の課題と Elastic Net の定義
ıve
▶

課題:経験的に、Na¨ ENet は良いパフォーマンス示さない
ıve
ことが知られている。

▶

原因:リッジ回帰と Lasso のによって、回帰係数の推定値が
2 重に縮小されているため。

▶

対処:Na¨ ENet の回帰係数に対して、リスケーリングを
ıve
行ったものを ENet の推定値とする。実際、リッジ回帰にお
ける回帰係数の縮小は 1/(1 + λ2 ) であるから、その大きさに
対応する。

ˆ
ˆ
β (ENet) = (1 + λ2 )β (Na¨ ENet)
ıve

(7)

21 / 33
Elastic Net 続き : シュミレーション (続き)

Figure: 左:Lasso.真ん中:リッジ回帰、右:ENet:横軸は |β|1 / max |β|1
の大きさ、縦軸は回帰係数の推定量。Lasso には、グループ化効果は見
て取れないが、Elastic Net はグループ化効果を示している。

22 / 33
結果:前立腺がんのデータより
▶

8 つの臨床的尺度を説明変数。目的変数は前立腺のある抗体
の量の対数をとったもの。
Table: 前立腺がんのデータ:各方法別の比較

Method
OLS
リッジ回帰
Lasso
Na¨ elastic net
ıve
Elastic net
▶
▶

Parameter
λ=1
s = 0.35
λ = 1, s = 0.74
λ = 1000, s = 0.18

Test Prediction Error
0.522
0.517
0.471
0.450
0.349

Variables Selectied
すべて
すべて
(1,2,4,5,8)
(1,2,4,5,6,7,8)
(1,2,5,6,8)

λ はリッジの罰則の重みを表し、s は LASSO の罰則の重みを
表している。また、λ > 0、0 < s < 1 である。
このケースにおいては、Elastic Net は他のどの方法よりも優
れた結果を残している。
23 / 33
推定値のパス図

Figure: 左図:Lasso の解のパス図.右図:Elastic Net の解のパス図

24 / 33
音声認識への応用
音声認識とは
▶ 音素認識 (音声認識) は、ヒトの話す音声言語をコンピューターによって解析し、話
している内容を文字データとして取り出す方法。
▶ 具体的には、大量の発話を記録した学習用データから音声の特徴を蓄積し、入力さ
れた音声信号と、蓄積された特徴を比較して、最も特徴の近い文字を認識結果とし
て出力する

モチベーション
▶ 音素判別における課題:波形が類似している 2 つの音を分離する場合、分離精度が
悪くなる。
▶ 今回は機械で見分ける上で難しいとされる”aa”と”ao”という 2 つの音を、回帰法
によって分離する。その際、用いた手法の 精度を比較と、 特徴量抽出ができてい
るかを確認する。
▶ 用いる手法は、最小自乗法、リッジ回帰、変数増加法、LASSO、Elastic Net。

25 / 33
音声データの解析
データと解析手法
▶

50 名の男性の連続的な発話から、 aa”の音声データと、”ao”の音
”
声データを抽出した、それぞれのサンプル数は 695 個と 1022 個で
ある。

▶

共変量は各周波数毎で、256 個ある。目的変数は以下のようにした。
{
1
(音声データが”aa”であるとき)
Y =
0
(音声データが”ao”であるとき)

▶

各手法の分離精度は、”aa”と”ao”のデータをランダムに 4 分割し、
3 つを学習用データ、1 つをテスト用データとするクロスバリデー
ション法を用いて、平均正答率で測る。
また、特徴量を抽出できているか確認するため、全データを用いて
モデルを構築する際に取り込まれる変数を、そのモデルが取り込
む選択する特徴量とした。

▶

26 / 33
音声データの解析結果
解析結果:予測精度
▶

解析結果を見ると、説明変数を選択する手法を用いた方が、
分離能力は向上することがわかる。

▶

説明変数を選択する手法の中でも、変数増加法よりも
LASSO 及び、(Na¨
ıve)ENet の方がより予測精度ではより良い
パフォーマンスを示している。

Table: 音素解析:方法別の結果比較
手法
最小二乗法
変数増加法
リッジ回帰
Lasso
Na¨ elastic net
ıve
Elastic net

パラメータ

λ = 2.0
s = 0.09
λ = 1, s = 0.31
λ = 1000, s = 0.30

正答率
0.698
0.768
0.704
0.794
0.797
0.808

選択された変数の数
すべて
47
すべて
32
43
42

27 / 33
特徴量抽出
特徴量抽出とは
頑健な学習モデルの構築のため、特徴集合(説明変数)のうち意味のある部分集合だけを
選択する手法。

Figure: ”aa”と”ao”の音素の Log-Periodgram を 100 個ずつプロット
している。ここでは、40-70 の周波数の領域が特徴量と見て取ることが
できる。

28 / 33
音声データの解析結果
解析結果:特徴量抽出
▶

変数増加法は、特徴量をうまく抽出できていない。

▶

LASSO, (Na¨ ENet は特徴量を抽出しているが、LASSO は
ıve)
グループ化効果を持たないため、特徴量に取りこぼしがある。

▶

ENet, Na¨ ENet は特徴量を取りこぼしなくモデルに取り込
ıve
んでいる。
Table: 音素解析:用いた 4 つの変数選択法で選択された変数
手法
変数増加法

Lasso
Na¨ elastic net
ıve
Elastic net

選択された変数
2 4 8 9 12 13 21 22 30 32 38 40 41 42 48 55 56 58 60 63 67 71 77 80 122 124 153
154 159 161 176 180 182 185 187 197 200 201 204 218 224 226 227 231 242 251 256
4 23 37 40 42 43 44 45 47 48 49 53 59 62 63 64 65 93 103 132
141 152 167 184 211 222 223 231 234 235 238 241
9 19 23 26 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
57 58 59 60 61 62 63 64 65 66 69 85 92 100 109 224 227 228 231 247
4 23 37 38 39 40 41 42 43 44 45 46 47 48 49 52 53 54 55 56 57 58 59 60 61 62 63 64
65 79 221 223 231 232 234 236 246 251 253 254 255 256

29 / 33
まとめ
▶

昨今のデータ解析では、共変量が多いケースがある。その場
合に、予測精度の向上と、解釈可能なモデルの構築がしばし
ば課題になる。

▶

Lasso は説明変数の選択を行い、スパースなモデルを構築す
るが、一方でグループ化効果を取り込むことができず、予測
精度が下がることがある。

▶

Lasso はその性質上、p >> n 問題には対応できない。

▶

Elastic Net は、上記の負の側面を解消することで、予測精度
を向上させる一方、変数を選択し解釈可能なモデルを与える。

▶

Elastic Net は特徴量抽出の点からも、優れた結果を残すこと
が音素解析の事例から理解できた。遺伝子解析分野への応用
が期待できる。

30 / 33
今後の課題と展望
計算量の視点
▶

今回、Lasso と Elastic Net の解法には、LARS アルゴリズム
を用いたが、遺伝子解析などケースで変数が大規模化
(p ≈ 10000) する場合には、LARS アルゴリズムでは計算量が
多く時間がかかることが知られている。

▶

この問題の解消には、Friedman(2009) で提案される
Coordinate Descent が有効であり、現在の R Package ではこ
の方法を用いて推定量が計算されている。

Elastic Net 罰則を用いた応用手法
▶

スパース主成分分析

▶

サポートカーネルマシーン

31 / 33
参考文献

▶

Bradley Efron, Trevor Hastie, Iain Johnstone, Robert
Tibshirani(2004). LEAST ANGLE REGRESSION

▶

Hui Zou and Trevor Hastie(2005). Regularization and variable
selection via the elastic net

▶

Robert Tibshirani (1996). Regression Shrinkage and Selection
via the Lasso

▶

Trevor Hastie, Robert Tibshirani, Jerome Friedman(2009).
The Elements of Statistical Learning 2nd Edition

32 / 33
ご清聴ありがとうございました

33 / 33

卒論プレゼンテーション -DRAFT-

  • 1.
    線形回帰モデルにおける説明変数の選択と 回帰係数の縮小推定法:Lasso と ElasticNet 中村知繁 慶應義塾大学理工学部数理科学科南研究室 February 6, 2014
  • 2.
    Contents イントロダクション - 研究背景 Lasso- L1 罰則による、縮小推定と変数選択 Lasso の問題点 - n ≫ p 問題とグループ化効果 Elastic Net - Lasso に変わる新たな手法 Prostate Cancer Data 音声認識 まとめ 今後の課題 2 / 33
  • 3.
    研究背景 線形回帰法は、一般的に目的変数 Yn×1 を、説明変数X1 , ..., Xp の線形 結合で説明する方法である。このような方法のうち最も基本的なものの 1つは、最小二乗法 (OLS 法) であり、OLS 法を利用した回帰係数の推 定値は以下のように表される ˆ β(OLS) = (X T X)−1 X T y (1) 回帰における重要な 2 つの視点 ▶ データの予測精度 - 学習データで構築したモデルが、未知のデー タが得られたとき、結果をどの程度の精度で予測できるか。 ▶ モデルの解釈 - 目的変数と説明変数の関係性をみるために、目的 変数に対して影響の大きい説明変数のみで、モデルを構築できて いるか。 3 / 33
  • 4.
    研究背景 線形回帰法は、一般的に目的変数 Yn×1 を、説明変数X1 , ..., Xp の線形 結合で説明する方法である。このような方法のうち最も基本的なものの 1つは、最小二乗法 (OLS 法) であり、OLS 法を利用した回帰係数の推 定値は以下のように表される ˆ β(OLS) = (X T X)−1 X T y (1) 回帰における重要な 2 つの視点 ▶ データの予測精度 - 学習データで構築したモデルが、未知のデー タが得られたとき、結果をどの程度の精度で予測できるか。 ▶ モデルの解釈 - 目的変数と説明変数の関係性をみるために、目的 変数に対して影響の大きい説明変数のみで、モデルを構築できて いるか。 4 / 33
  • 5.
  • 6.
  • 7.
    Lasso Lasso とは ▶ Lasso:Least AbsoluteShrinkage and Selection Operator ▶ Tibshirani(1996) 特徴 ▶ L1 罰則のもとで、残差二乗和を最小化する ▶ 回帰係数を縮小推定することで、予測精度を向上させる。 ▶ 連続的な変数の選択が可能。解は係数のパス図で得られる。 ▶ 上記 2 つを同時に行うことができる。 7 / 33
  • 8.
    Lasso 続き 定義 (Lasso) ▶ Xは n × p の標準化された共変量の行列。 ▶ y は平均を 0 に調整した、目的変数のベクトル。 ▶ Lasso の推定量は ˆ β(Lasso) = arg min ||y−Xβ||2 +λ|β|1 , |β|1 = β p ∑ |βj | (2) j=1 または、 ˆ β(lasso) = arg min ||y −Xβ||2 , subject to β p ∑ |βj | ≤ t. (3) j=1 8 / 33
  • 9.
    Lasso 続き p=2 の場合でLasso の性質を確認する:縮小推定 ▶ 簡単のため、共変量の個数を 2 つとする ▶ 共変量ベクトルを x1 , x2 、その相関係数を xT x2 = ρ とする。 1 ▶ ˆ ˆ ここで、β1 (ols) > 0, β2 (ols) > 0 とすると、Lasso の推定量は、(3) から、以下のように表される。 ) ( ) (ˆ λ ˆ β1 (ols) − 2(1+ρ) β1 ˆ ˆ = β2 (ols) − λ β2 2(1+ρ) + ▶ Lasso は各回帰係数を同じ大きさだけ縮小して推定する。 ▶ 縮小した結果 0 以下になった推定量を 0 にする : 変数選択の性質 9 / 33
  • 10.
    Lasso 続き p=2 の場合でLasso の性質を確認する:縮小推定 (続き) ▶ ˆ ˆ 上のスライドの結果と β1 + β2 = t を用いて、ρ を式から消去する と、Lasso の推定量は ( ) ˆ ˆ t β1 (ols) − β2 (ols) ˆ β1 (lasso) = + 2 2 + ( ) ˆ1 (ols) − β2 (ols) ˆ t β ˆ β2 (lasso) = − 2 2 + ▶ Lasso の推定量は説明変数間の相関の影響を受けない 10 / 33
  • 11.
    Lasso 続き Lasso を解くためのアルゴリズム:LARS法 ▶ Lasso を解析的に解くことは難しい。解析的に解く場合の計 算コストは O(2p ) である (Tibshirani 1996) ▶ Lasso が扱う問題は p が大きい事例が多いので、指数的に計 算量が大きくなる方法では対応できない。 ▶ LARS(Efron 2004) のアルゴリズムは計算コスト O(p3 + np2 ) で解くことができる。 ▶ LARS : Least Angle Regression ▶ より高速なアルゴリズムとして Coordinate Descent がある。 ▶ 詳しくは卒論に書いてありますが、ここでは紹介に留めます。 11 / 33
  • 12.
    Lasso 続き シュミレーション :Lasso とリッジ回帰の性質の比較 ▶ 2 つの独立な変数 z1 と z2 を以下のように定義する z1 ∼ U (0, 20) z2 ∼ U (0, 20) ▶ 目的変数ベクトルを y = z1 + 0.1 × z2 + N (0, 1) とする ▶ 観測された説明変数を以下のように定義する x1 = z 1 + ϵ 1 x4 = z 2 + ϵ 4 ▶ x2 = −z1 + ϵ2 x5 = −z2 + ϵ5 x3 = z1 + ϵ3 x6 = z2 + ϵ6 データ (X, y) にリッジ回帰と、Lasso を当てはめて推定値求 めた結果が次の図。 12 / 33
  • 13.
    Lasso 続き :シュミレーション結果 Figure: 左図:Lasso の解のパス図.右図:リッジ回帰の解のパス図:横軸 は |β|1 / max |β|1 の大きさ、縦軸は回帰係数の推定量 13 / 33
  • 14.
    Lasso の課題 Lasso の問題点 ▶ p≫ n 問題 (West et al. 2001):p ≫ n の状況において、共変 量が p 個あった場合でも、Lasso が選択できる共変量の個数 は n 個である(分散共分散行列のランクが n になるため) 。 ▶ グループ化効果がない:Lasso は変数間の相関を考慮できな い。高い相関を持ついくつかの変数があるとき、それらをグ ループ化された変数とよび、Lasso は、その中から 1 つしか モデルに取り込むことはできない。 ▶ n > p での問題:説明変数間の相関が高い場合には、グルー プ化変数を無視する性質によってリッジ回帰よりも予測精度 が悪くなることがある。 14 / 33
  • 15.
    Lasso の課題 続き Lassoが課題になる具体的な例 ▶ 白血病の人の遺伝子データ, Golub et al. Science(1999)。 ▶ データのサンプル数 72 個, 共変量の数 7129 個.(p ≫ n 問題) ▶ 遺伝子データでは、一般的に p ≈ 10000 で、サンプル数 n < 100 である。 ▶ 遺伝子データでは、一般的に遺伝子同士の結合 (”Pathway”) が似通っていることから、共変量同士の相関が高いケースが 多く、グループ化された変数が存在する。 ▶ → 解決策の1つとして、(Na¨ ıve) Elastic Net がある。 15 / 33
  • 16.
    Elastic Net 定義 (Na¨Elastic Net : Na¨ ENet) ıve ıve λ1 > 0, λ2 > 0 として、 ˆ β(Naive ENet) = arg min ||y − Xβ||2 + λ2 ||β||2 + λ1 |β|1 β または、0 ≤ α ≤ 1 として、これと同値な式 ˆ β(Naive ENet) = arg min ||y − Xβ||2 , s.t. (1 − α)|β|1 + α||β||2 ≤ t (4) β を Na¨ ENet の推定量と定義する。 ıve Na¨ ENet の特徴 ıve ▶ λ1 → 0 とするとリッジ回帰.λ2 → 0 とすると Lasso になる. ▶ 推定量の計算は、次のスライドのように定義の式を変形すること で Lasso と同様に LARS で解くことができる。 16 / 33
  • 17.
    Elastic Net 続き Na¨ENet の特徴 ıve ▶ λ1 → 0 とするとリッジ回帰.λ2 → 0 とすると Lasso になる. ▶ 計算は、次のスライドのように定義の式を変形することで Lasso と同様に LARS で解くことができる。 ▶ p >> n 問題を解決:(refenet) 式により、Na¨ ENet は n × p ıve 行列を (n + p) × p に拡張した後に Lasso のアルゴリズムを適 応し推定値を求めるため、p 個の共変量をすべてモデルに取 り込むことができる。 17 / 33
  • 18.
    Elastic Net 続き Na¨ENet の解法 ıve まず、以下のように X ∗ と、y ∗ を定義する。 ( ) ( ) X y ∗ ∗ X(n+p)×p = (1 + λ2 )−1/2 √ y(n+p) = (5) 0 λ2 Ip √ √ ここで、γ = λ1 / (1 + λ2 ), β ∗ = (1 + λ2 )β とすると、次が成り立つ ため Lasso 同様に LARS 法で解くことができる。 ˆ β(Naive ENet) = arg min ||y ∗ − X ∗ β ∗ ||2 + γ|β ∗ |1 β 以上より、 1 ˆ ˆ β(Naive ENet) = √ β∗ 1 + λ2 ▶ (5) から、X のランクが p になり、p ≫ n 問題を解消できることが 示される。 18 / 33
  • 19.
    Elastic Net 続き: グループ化効果 一般的に罰則付きの最小自乗法は、J(β) を罰則項として次のように表される。 ˆ β = arg min |y − Xβ|2 + λJ(β) β (6) ′ ここで、β = (β1 , · · · , βi , · · · , βj , · · · , βp )、β = (β1 , · · · , βj , · · · , βi , · · · , βp ) とし ′ て、J(β) = J(β ) が成立することを仮定する。すると、次の補題が示せる。 補題 xi = xj (i, j ∈ 1, 2, · · · , p) であると仮定する。 ˆ ˆ (a) J(·) が狭義凸関数であるならば、βi = βj が全ての λ > 0 に対して成り立つ。 ˆ ˆ ˆ (b) J(β) = |β|1 であるならば、βi βj ≥ 0 かつ、β ∗ は方程式 (7) の異なる最小の値であ り、全ての s ∈ [0, 1] に対して、以下が成立する。 ˆ∗ βk  ˆ  βk ˆ ˆ = (βi + βj ) · (s)  ˆ ˆ (βi + βj ) · (1 − s) if k ̸= i and k ̸= j, if k = i if k = j → Lasso の罰則はグループ化効果を持たないことが示せる。一方の Elastic Net の罰則は グループ化効果を持つことが示唆される。 19 / 33
  • 20.
    Elastic Net 続き: グループ化効果 定理 データセット (y, X) とパラメータ (λ1 , λ2 ) が与えられたとき、 ˆ ıve β(λ1 , λ2 ) を Na¨ elastic net の推定量とする。ここで、 ˆi (λ1 , λ2 )βj (λ1 , λ2 ) > 0 と仮定し、以下で Dλ ,λ (i, j) を定義 ˆ β 1 2 する。 1 ˆ ˆ Dλ1 ,λ2 (i, j) = |βi (λ1 , λ2 ) − βj (λ1 , λ2 )| |y|1 このとき、ρ = xT xj (xi と xj の相関係数) とすると、以下が成り i 立つ。 1√ Dλ1 ,λ2 (i, j) ≤ 2(1 − ρ) λ2 ▶ 相関係数によって係数の差の絶対値は押さえ込まれる。 ρ = 1 とすると、2 つの回帰係数の推定量が一致することが わかる。→ Na¨ ENet はグループ化効果を持つ。 ıve 20 / 33
  • 21.
    Elastic Net 続き Na¨ENet の課題と Elastic Net の定義 ıve ▶ 課題:経験的に、Na¨ ENet は良いパフォーマンス示さない ıve ことが知られている。 ▶ 原因:リッジ回帰と Lasso のによって、回帰係数の推定値が 2 重に縮小されているため。 ▶ 対処:Na¨ ENet の回帰係数に対して、リスケーリングを ıve 行ったものを ENet の推定値とする。実際、リッジ回帰にお ける回帰係数の縮小は 1/(1 + λ2 ) であるから、その大きさに 対応する。 ˆ ˆ β (ENet) = (1 + λ2 )β (Na¨ ENet) ıve (7) 21 / 33
  • 22.
    Elastic Net 続き: シュミレーション (続き) Figure: 左:Lasso.真ん中:リッジ回帰、右:ENet:横軸は |β|1 / max |β|1 の大きさ、縦軸は回帰係数の推定量。Lasso には、グループ化効果は見 て取れないが、Elastic Net はグループ化効果を示している。 22 / 33
  • 23.
    結果:前立腺がんのデータより ▶ 8 つの臨床的尺度を説明変数。目的変数は前立腺のある抗体 の量の対数をとったもの。 Table: 前立腺がんのデータ:各方法別の比較 Method OLS リッジ回帰 Lasso Na¨elastic net ıve Elastic net ▶ ▶ Parameter λ=1 s = 0.35 λ = 1, s = 0.74 λ = 1000, s = 0.18 Test Prediction Error 0.522 0.517 0.471 0.450 0.349 Variables Selectied すべて すべて (1,2,4,5,8) (1,2,4,5,6,7,8) (1,2,5,6,8) λ はリッジの罰則の重みを表し、s は LASSO の罰則の重みを 表している。また、λ > 0、0 < s < 1 である。 このケースにおいては、Elastic Net は他のどの方法よりも優 れた結果を残している。 23 / 33
  • 24.
  • 25.
    音声認識への応用 音声認識とは ▶ 音素認識 (音声認識)は、ヒトの話す音声言語をコンピューターによって解析し、話 している内容を文字データとして取り出す方法。 ▶ 具体的には、大量の発話を記録した学習用データから音声の特徴を蓄積し、入力さ れた音声信号と、蓄積された特徴を比較して、最も特徴の近い文字を認識結果とし て出力する モチベーション ▶ 音素判別における課題:波形が類似している 2 つの音を分離する場合、分離精度が 悪くなる。 ▶ 今回は機械で見分ける上で難しいとされる”aa”と”ao”という 2 つの音を、回帰法 によって分離する。その際、用いた手法の 精度を比較と、 特徴量抽出ができてい るかを確認する。 ▶ 用いる手法は、最小自乗法、リッジ回帰、変数増加法、LASSO、Elastic Net。 25 / 33
  • 26.
    音声データの解析 データと解析手法 ▶ 50 名の男性の連続的な発話から、 aa”の音声データと、”ao”の音 ” 声データを抽出した、それぞれのサンプル数は695 個と 1022 個で ある。 ▶ 共変量は各周波数毎で、256 個ある。目的変数は以下のようにした。 { 1 (音声データが”aa”であるとき) Y = 0 (音声データが”ao”であるとき) ▶ 各手法の分離精度は、”aa”と”ao”のデータをランダムに 4 分割し、 3 つを学習用データ、1 つをテスト用データとするクロスバリデー ション法を用いて、平均正答率で測る。 また、特徴量を抽出できているか確認するため、全データを用いて モデルを構築する際に取り込まれる変数を、そのモデルが取り込 む選択する特徴量とした。 ▶ 26 / 33
  • 27.
    音声データの解析結果 解析結果:予測精度 ▶ 解析結果を見ると、説明変数を選択する手法を用いた方が、 分離能力は向上することがわかる。 ▶ 説明変数を選択する手法の中でも、変数増加法よりも LASSO 及び、(Na¨ ıve)ENet の方がより予測精度ではより良い パフォーマンスを示している。 Table:音素解析:方法別の結果比較 手法 最小二乗法 変数増加法 リッジ回帰 Lasso Na¨ elastic net ıve Elastic net パラメータ λ = 2.0 s = 0.09 λ = 1, s = 0.31 λ = 1000, s = 0.30 正答率 0.698 0.768 0.704 0.794 0.797 0.808 選択された変数の数 すべて 47 すべて 32 43 42 27 / 33
  • 28.
  • 29.
    音声データの解析結果 解析結果:特徴量抽出 ▶ 変数増加法は、特徴量をうまく抽出できていない。 ▶ LASSO, (Na¨ ENetは特徴量を抽出しているが、LASSO は ıve) グループ化効果を持たないため、特徴量に取りこぼしがある。 ▶ ENet, Na¨ ENet は特徴量を取りこぼしなくモデルに取り込 ıve んでいる。 Table: 音素解析:用いた 4 つの変数選択法で選択された変数 手法 変数増加法 Lasso Na¨ elastic net ıve Elastic net 選択された変数 2 4 8 9 12 13 21 22 30 32 38 40 41 42 48 55 56 58 60 63 67 71 77 80 122 124 153 154 159 161 176 180 182 185 187 197 200 201 204 218 224 226 227 231 242 251 256 4 23 37 40 42 43 44 45 47 48 49 53 59 62 63 64 65 93 103 132 141 152 167 184 211 222 223 231 234 235 238 241 9 19 23 26 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 69 85 92 100 109 224 227 228 231 247 4 23 37 38 39 40 41 42 43 44 45 46 47 48 49 52 53 54 55 56 57 58 59 60 61 62 63 64 65 79 221 223 231 232 234 236 246 251 253 254 255 256 29 / 33
  • 30.
    まとめ ▶ 昨今のデータ解析では、共変量が多いケースがある。その場 合に、予測精度の向上と、解釈可能なモデルの構築がしばし ば課題になる。 ▶ Lasso は説明変数の選択を行い、スパースなモデルを構築す るが、一方でグループ化効果を取り込むことができず、予測 精度が下がることがある。 ▶ Lasso はその性質上、p>> n 問題には対応できない。 ▶ Elastic Net は、上記の負の側面を解消することで、予測精度 を向上させる一方、変数を選択し解釈可能なモデルを与える。 ▶ Elastic Net は特徴量抽出の点からも、優れた結果を残すこと が音素解析の事例から理解できた。遺伝子解析分野への応用 が期待できる。 30 / 33
  • 31.
    今後の課題と展望 計算量の視点 ▶ 今回、Lasso と ElasticNet の解法には、LARS アルゴリズム を用いたが、遺伝子解析などケースで変数が大規模化 (p ≈ 10000) する場合には、LARS アルゴリズムでは計算量が 多く時間がかかることが知られている。 ▶ この問題の解消には、Friedman(2009) で提案される Coordinate Descent が有効であり、現在の R Package ではこ の方法を用いて推定量が計算されている。 Elastic Net 罰則を用いた応用手法 ▶ スパース主成分分析 ▶ サポートカーネルマシーン 31 / 33
  • 32.
    参考文献 ▶ Bradley Efron, TrevorHastie, Iain Johnstone, Robert Tibshirani(2004). LEAST ANGLE REGRESSION ▶ Hui Zou and Trevor Hastie(2005). Regularization and variable selection via the elastic net ▶ Robert Tibshirani (1996). Regression Shrinkage and Selection via the Lasso ▶ Trevor Hastie, Robert Tibshirani, Jerome Friedman(2009). The Elements of Statistical Learning 2nd Edition 32 / 33
  • 33.