prml 読書会 §3 線形回帰モデル - iip.ist.i.kyoto ... · モデルエビデンス...
TRANSCRIPT
PRML 読書会§3 線形回帰モデル
2010 / 06 / 27id: taki0313
2010年7月9日金曜日
● §3.1 線形基底関数モデル
● §3.2 バイアスーバリアンス分解
● §3.3 ベイズ線形回帰
● §3.4 ベイズモデル比較
● §3.5 エビデンス近似
● §3.6 固定された基底関数の限界
★☆☆
★☆☆
★★☆
★★★
★★★
★☆☆
CONTENTS
2010年7月9日金曜日
● 回帰問題
Introduction
● 教師なし学習 → 教師あり学習
訓練データ集合 {xn} , {tn}
次の入力 x に対する t を予測
例えば…
t = y(x) を作る 、 p( t | x ) を考える …
Et[t | x] が 回帰関数としていいよっ @ §1.5.5
2010年7月9日金曜日
§3.1 線形基底関数モデル
● 単純な線形回帰
● 基底関数Φj を使う
どちらもパラメータwについて線形
基底関数は特徴抽出のようなもの
多項式フィッティングでは Φj(x) = x^j
2010年7月9日金曜日
基底関数の例
多項式 ガウス シグモイド
2010年7月9日金曜日
● 仮定:目標変数が関数+ノイズで表現される
§3.1.1 最尤推定と最小二乗法
● 二乗損失関数を仮定するなら、条件付き期待値がいい
● 条件付き期待値 : y(x,w)
2010年7月9日金曜日
独立に生成されたとして、尤度関数は
N個のデータ
対数尤度
2010年7月9日金曜日
二乗和誤差関数 ED
対数尤度の最大化 : 勾配=0
ムーアペンローズの疑似逆行列
逆行列を一般化
2010年7月9日金曜日
本当になるの…?
2010年7月9日金曜日
M=3, N=2ぐらいで検証 ///
2010年7月9日金曜日
2010年7月9日金曜日
なってた
2010年7月9日金曜日
バイアスパラメータ w0 の役割
目標値の平均と基底関数の平均の重み付き和の差
精度パラメータβ
回帰値の残差分散
2010年7月9日金曜日
● 各軸が目標値で貼られるN次元空間
● M=2, N=3の例
§3.1.2 最小二乗法の幾何学
空間のベクトル
回帰関数
j番目の基底関数
N個集めたもの Φのj列目のベクトル
ちなみにΦ(xn) はn行目のベクトルになっている
2010年7月9日金曜日
● N > M のとき M次元部分空間Sになる
● tを予測するy(xn,w) ∈ S はどれがいいか
「一番近いところ」=正射影
演習3.2で確認して…
2010年7月9日金曜日
● 確率的勾配降下法
● 誤差関数Eが のようになるとき
τ:繰り返し回数、η:更新パラメータ
§3.1.3 逐次学習
(3.12)EDを使うと…
LMSアルゴリズム(最小平均二乗アルゴリズム)
2010年7月9日金曜日
● 過学習を防ぐためにλ使うよっ
§3.1.4 正則化最小二乗法
例えば…
全体では荷重減衰という形になる
統計ではパラメータ縮小推定法の一例
2010年7月9日金曜日
● 解を求めることが出来る
● もう少し一般的な形
● q=1(lasso)、λが十分に大きい→疎な解
2010年7月9日金曜日
● 正則化項って…
Mを決める問題 → λを決める問題
問題をすりかえてるだけ…?
● 簡単に扱うために、2次形式がいいので、これを使う
λを大きくする → 疎な解
モデルの複雑さを抑え、過学習を防ぐ
どのモデルがいいか?は§3.4
2010年7月9日金曜日
● 全てに対して同じ基底関数を使う
§3.1.5 出力変数が多次元
y : K次元列ベクトル
W : (M,K)行列
2010年7月9日金曜日
● こういう感じの解
tkは第n要素がtnk,N次元列ベクトル
疑似逆行列は一度計算すればいい
細かいことは必要になったら確かめればいいと思う
2010年7月9日金曜日
● §1.5.5での議論
p(t|x)が与えられたら損失関数を使って…ごにょごにょ
● 期待二乗損失
§3.2 バイアスーバリアンス分解
二乗損失関数を使うと、最適なのは条件付き期待値…ごにょごにょ
データの本質的なノイズyに依存する部分(ここ!)
最適な回帰関数h(x)は条件付き期待値
2010年7月9日金曜日
理想的な回帰関数h(x)が求まるはず
無理だからy(x,w)でモデル化する…?
モデルの不確実性 = 事後確率で表現
wの推定が入ってる、どうしようか
データ集合Dの取り方を考慮する
∞に資源が使えるなら…
第一項の積分
2010年7月9日金曜日
データDについて期待値を取る
2*(...) の項は例によって消える
● 積分の処理
(バイアス)^2 バリアンス
Bias:すべてのデータ集合に対する予測値の平均が理想からどれぐらいずれてるか
Variance: 各々のデータ集合に対する予測値が、あるデータ集合の選び方に関する期待値の周りでの変動の度合い
2010年7月9日金曜日
期待損失 = Bias^2 + Variance + Noise
期待損失を最小化
Bias - Variance はトレードオフ
Bias Variance
複雑なモデル 小 大簡単なモデル 大 小
● つまり…
学習の目標
h(x) = sin(2πx) , N=25 , M=25
データ集合を100種類
モデルの複雑さはλで調整
テスト
2010年7月9日金曜日
● 実際は…
データの個数は限られてる & 期待値が出せない
データの無駄遣いしない!
結論:大きい訓練集合として使う2010年7月9日金曜日
● 最尤推定
§3.3 ベイズ線形回帰
モデルの複雑さはデータのサイズに依存
正則化項で調整
過学習の可能性がある
● ベイズかわいいよベイズ
パラメータwを確率変数にする
尤度関数は…
2010年7月9日金曜日
wの事前分布
尤度関数の指数部分は2次間数の形
共役事前分布もガウス分布
wの事後分布 ∝ 尤度 × 事前分布
事後確率最大にするwは、単純にmNで求められる
計算? → 2章
2010年7月9日金曜日
このときmNは最尤推定値WMLに一致
∞に広い事前分布
簡単化のために…
対数尤度
2010年7月9日金曜日
れいだい@ちょくせんふぃ(ry
2010年7月9日金曜日
● 1次元入力x, 1次元目標変数t, y(x,w) = w0 + x*w1
● f(x, a) = a0 + x*a1 (a0=-0.3, a1=0.5)に対して xn ∈ U(x| -1, 1)から選び、f(xn, a)を評価。 それにσ=0.2のガウスノイズを加えてtnを作る● 目標: a0=-0.3 , a1=0.5を復元● α=2.0に固定し、β=(1 / 0.2)^2 = 25を使う(真値、既知)
● 事後分布 ∝ 事前分布 * 尤度● wの事前分布p(w|α)=N(w|0,1/αE)
2010年7月9日金曜日
初期事前分布
ランダムに選んだy(x,w)
1点を観測(青丸)
尤度の更新
2点目を観測(青丸)
尤度の更新
たくさん観測wが真値に…
2010年7月9日金曜日
ガウス事前分布の一般化
q=2 で一致
尤度関数の共役事前分布になる事後分布のwに関する最大化=正則化誤差関数の最小化事後分布の最頻値が期待値に一致する
他の一般的な形式を使う
q=2のときに限り…
2010年7月9日金曜日
● 直接tを予測したい → 予測分布を評価
§3.3.2 予測分布
● 計算?2章でおk & 事前分布 & 尤度
データのノイズ 1/β + wに関する不確かさ
N → ∞で第二項→0 (wが定まっていく)
2010年7月9日金曜日
れいだい@さんかくかんすう
2010年7月9日金曜日
● sin(2πx) , N = 1 , 2 , 4 , 25. , 青がデータ● 緑線が真値、赤が平均、領域が平均±標準偏差● モデルはガウス関数9個
● wの事後分布からy(x,w)をプロット
2010年7月9日金曜日
● 訓練データの目標値を使って予測 。事後分布の平均解を変形
§3.3.3 等価カーネル
次のように見る
2010年7月9日金曜日
言葉の定義とか…
k(x,x’) : 等価カーネル、平滑化行列
目標変数の線形結合を取るので、線形平滑器と呼ぶ
ガウス基底関数に対する等価カーネル k(x,x’)
横軸 x’ , 縦軸 x
xとx’が近かったら大きい重みを付ける
等価カーネルはx‘について局所的な関数になる
2010年7月9日金曜日
近傍点での予測平均は互いに強い相関を持つ
不確かさ : 等価カーネルで決まる
基底関数を決めると等価カーネルが決まる
解釈:y(x)とy(x’)の共分散を見る
k(x,x’)は重みを決める
目標変数の重み付き和で予測出来る
等価カーネルはカーネル関数:非線形関数ベクトルの内積
2010年7月9日金曜日
● ベイズの立場から、モデル選択を考える
§3.4 ベイズモデル比較
L個のモデル {Mi} を比較する
モデルは観測されたデータD上の確率分布
どのようなモデルでデータが生成されたかは不明とする
モデルの不確かさを事前分布P(Mi)で表現
Dが与えられるとき、事後確率の評価する
2010年7月9日金曜日
事前確率 p(Mi) : モデルの好み
モデルエビデンス p(D|Mi) : データから見たモデルの好み
どうやってエビデンスを評価する?
モデル空間でパラメータを周辺化した尤度関数 :周辺尤度
それぞれの意味
定義
エビデンスの比 p(D|Mi) / p(D|Mj) : ベイズ因子
モデルの事後分布が分かった後の予測分布(混合分布の一種)
混合分布 全体の分布が個々の分布の重み付き平均2010年7月9日金曜日
一番もっともらしいモデルを選ぶ、単純な近似
モデル選択
● パラメータwを持つモデルの例
モデルエビデンスは、wの事後確率を計算する時の分母
モデルエビデンス
積分を近似して別の解釈を得る
パラメータが1つの例を考える
2010年7月9日金曜日
事後分布が最頻値の近傍で尖っていると仮定 : wMAPその幅を Δwposterior で表わす全体の積分をかけ算で近似する
事前確率は平坦で、p(w) ~ 1 / Δwprior とする
対数を取る
第一項:尤もなwによるデータへのフィッティング度
第二項:モデルの複雑さに基づくペナルティ(負)
比が小さくなるにつれて、ペナルティが大きい
2010年7月9日金曜日
M個のパラメータを含むとき:順に近似+同じ比を持つと仮定
第一項:フィットしやすくなり、増加する第二項:Mに応じて減少エビデンスを最大にする最適なモデルの複雑さ…
更なる解釈単純なモデルから複雑なモデルまで、M1 M2 M3を考えるなぜ周辺尤度最大化で中間程度の複雑さのモデルになるか
二つの項を上手く調整する
2010年7月9日金曜日
M1 : 単純なモデル生成出来るDの範囲が狭い
M3 : 複雑なモデル生成出来るDの範囲が広い
p(D|Mi)は正規化されているので、あるデータ集合D0に対して中間な複雑さを持つM2でエビデンスが最大になることがある
単純なM1ではD0を生成出来ない複雑なM3ではD0になる確率が低い
データDの生成p(w)からwを選ぶp(D|w)からサンプリング
2010年7月9日金曜日
ベイズモデル比較の枠組み考えているMの集合の中にDを生成する真の分布が含まれていると仮定している
仮定は正しいか?
2つのモデルM1, M2. M1が正しいとする期待ベイス因子
平均的に正しいモデルのベイス因子が大きくなる
ベイズモデル比較の枠組みDだけに基づいて、モデルを考えられるただし、いろいろと制約を付けたことに注意実際はテスト用のデータ集合で性能を評価する方が賢明
2010年7月9日金曜日
§3.5 エビデンス近似
● 線形基底関数モデルを完全にベイズ的に扱う
超パラメータα,βも事前分布を導入して予測
パラメータ増えるし、解析的に扱うの大変…
wだけで積分する周辺尤度を使う
経験ベイズ・第2種の最尤推定・エビデンス近似・一般化最尤推定…
2010年7月9日金曜日
予測分布 : wとαとβについて周辺化
p(t|w,β) : (3.8) , p(w|t,α,β) : (3.49),(3.53),(3.54)
p(α,β|t)が鋭く尖っているとする
尖っているαとβの値で固定
固定したαとβの下でwについて周辺化
ベイズの定理より
2010年7月9日金曜日
尖ってる場所のα,βを求める
事前分布が比較的平坦と仮定
周辺尤度p(t|α,β)を最大化する点として求める
結果として、訓練データだけからα,βを決定出来る
対数エビデンスを最大化する方法
解析的な評価
EMアルゴリズム
2010年7月9日金曜日
§3.5.1 エビデンス関数の評価
● 周辺尤度関数 p(t|α,β)
(3.11), (3.12), (3.52)を使うと…
2010年7月9日金曜日
確認
2010年7月9日金曜日
正則化二乗和誤差関数(3.27)と似てる
wについて平方完成
Aは∇∇E(w)に相当する : ヘッセ行列
イメージだけ
A
つまりmNは事後分布の平均になっている
2010年7月9日金曜日
事後分布の評価
対数尤度
回帰の例題に戻る
2010年7月9日金曜日
● 多項式の次数Mとモデルエビデンスの関係● α = 5 * 10^{-3}
● 見た目では3~8に違いはあまりないが、3が最適● データを説明出来る最も簡単なモデルがM=3
2010年7月9日金曜日
§3.5.2 エビデンス関数の最大化
● p(t|α,β) を αについて最大化
● 固有ベクトル方程式を考える
→ A の固有値はα + λi
● ln |A| のαに関する導関数
2010年7月9日金曜日
尤度関数をαで微分
2αを掛けて、式を整理 & Σ は M個の項
尤度最大にするαは…
2010年7月9日金曜日
γ, mNもαに依存する陰関数
αについて → 繰り返し法、βも同じ
αの初期値→γ,mNの更新→αの更新→ …
の固有値は最初に計算して使い回し × β → λi
βについての最大化
λiがβに比例することに注意する
2010年7月9日金曜日
§3.5.3 有効パラメータ数
● ベイズ解 α の解釈
● 事前分布と尤度関数の等高線を描く
固有値は尤度関数の歪み具合を表わす
は正定値行列 → 固有値は全て正
● λiに応じて固有ベクトル方向の歪みはどうなるか
2010年7月9日金曜日
λについて
γに大きく寄与する γにあまり影響しないwell-determined
λ1 < λ2
λ2 は λ1 より影響する
γ ← 尤度最大化
γに寄与する → 最尤に近い
γ : 有効パラメータ数
γに寄与→「最尤」に縛られる→その方向はWmlに近い
2010年7月9日金曜日
βの解釈
1変数ガウス分布の分散の最尤推定値
μMLを使う分、バイアスが入ってる
バイアスを取り除くため、不偏推定量では次元が落ちる
線形回帰の場合
有効パラメータ数 : γ
そのγの分だけ補正してやる → 1 / N-γ
2010年7月9日金曜日
● 三角関数+9個のガウス基底関数の例 、 M=10
● βを真値11.1にして、エビデンスの枠組みでαを決定する
● 右:青線が誤差、赤線が対数エビデンス● 左:青線がγ、赤線が2αEw(mn)
● 最適なαは二つの交点 : ちょうどいい場所● その交点は右の図で誤差最小になる点に近い
2010年7月9日金曜日
● それぞれのパラメータの値をγの関係● 0≦α≦∞ → 0≦γ≦M
{wi}の大きさの変化
α → γを支配
γ → 大きさを支配
αは大きさを制御する
● M << Nの極限 : 全てのパラメータがwell-determined
● α、βの再推定方程式は…
● がデータ点に関する陰的な和を含み、固有値が増える
2010年7月9日金曜日
§3.6 固定された基底関数の限界
● 線形性の仮定 → 閉じた解が求まる● ベイズ推定が簡単になる● 基底関数を自由に選べる
1. データの観測前に基底関数を固定する仮定● 欠点もある
2. 次元の呪い → Mが指数関数的に増える● 実際のデータの嬉しいこと
1.データは限られた非線形多様体上に分布している2. 全ての次元ではなく、一部の次元に強く反応する
2010年7月9日金曜日