Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PRML勉強会 第三章 - 宮西由貴 作成分
Search
takegue
April 21, 2014
Technology
0
1.6k
PRML勉強会 第三章 - 宮西由貴 作成分
PRML勉強会 第三章 - 宮西由貴 作成分 代理upload
takegue
April 21, 2014
Tweet
Share
More Decks by takegue
See All by takegue
不自然言語の自然言語処理: コード補完を支える最新技術
takegue
1
820
つかわれるプラットフォーム 〜デザイン編〜@DPM#2
takegue
2
12k
カルチャーとエンジニアリングをつなぐ データプラットフォーム
takegue
4
6.2k
toC企業でのデータ活用 (PyData.Okinawa + PythonBeginners沖縄 合同勉強会 2019)
takegue
4
1k
Rettyにおけるデータ活用について
takegue
0
860
Sparse Overcomplete Word Vector Representations
takegue
0
200
Aligning Sentences from Standard Wikipedia to Simple Wikipedia
takegue
0
200
High-Order Low-Rank Tensors for Semantic Role Labeling
takegue
0
120
Dependency-based empty category detection via phrase structure trees
takegue
0
70
Other Decks in Technology
See All in Technology
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
290
Terraform Stacks入門 #HashiTalks
msato
0
360
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
870
The Rise of LLMOps
asei
7
1.7k
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
OTelCol_TailSampling_and_SpanMetrics
gumamon
1
180
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
390
Engineer Career Talk
lycorp_recruit_jp
0
180
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
TypeScript、上達の瞬間
sadnessojisan
46
13k
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
190
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Gamification - CAS2011
davidbonilla
80
5k
Six Lessons from altMBA
skipperchong
27
3.5k
Facilitating Awesome Meetings
lara
50
6.1k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
For a Future-Friendly Web
brad_frost
175
9.4k
Into the Great Unknown - MozCon
thekraken
32
1.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Unsuck your backbone
ammeep
668
57k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Transcript
PRML勉強会 第5回
こんにちは 第三章を担当します 一章でやったことがたくさん出ます 数式に関してはざっくり行きます 抜かした節もいくつかあります(ごめんね☆)
第三章について 1. 線形基底関数モデル 2. バイアス-バリアンス分解 3. ベイズ線形回帰 4. ベイズモデル比較 5.
エビデンス近似 6. 固定された基底関数の限界
第三章について 1. 線形基底関数モデル 2. バイアス-バリアンス分解 3. ベイズ線形回帰 4. ベイズモデル比較 5.
エビデンス近似 6. 固定された基底関数の限界 今回説明する部分
線形基底関数モデル・・・の前に 線形回帰モデルについて 利点:解析的に扱いやすい 欠点:入力空間が高次元の場合は適切でない 変数or係数の足し算・引き算のみで 表された数式 (変数×係数はOK)
単純な線形回帰モデル 入力変数に関しては非線形なモデルに拡張 , = 0 + 1 1 + ⋯
+ = (1 , ⋯ , ) 入力 0 , ⋯ , パラメータ 特徴 パラメータに関する線形関数になっている 入力変数 に関する線形関数でもある =表現能力が乏しい
拡張した線形回帰モデル , = 0 + () −1 =1 () 基底関数
0 バイアスパラメータ パラメータ数 特徴 入力変数に関しては非線形 パラメータに関しては線形なので線形モデル =解析は容易
ちなみに・・・ 先ほどの関数について0 = とすると… , = () −1 =1
= = (0 , ⋯ , −1 ) = (0 , ⋯ , −1 ) 単純になりました!
基底関数、何にする? 一章の多項式回帰: = 入力空間の一部での変化が全領域に及ぶ 入力空間を分割 それぞれの空間に多項式を当てはめる
「スプライン関数」と呼ぶ 「ガウス基底関数」 「ロジスティックシグモイド関数」 フーリエ基底「ウェーブレット」 「本章で示すほとんどのことは基底関数に依存しません。」 ということなので 省 略 です。 解決!!
最尤推定と最小二乗法の関係 最尤推定で回帰を論じる = , + ガウスノイズ (期待値0,分散の逆数=精度がのガウス確率変数) , ,
= Ν , , −1 一章より、二乗損失関数を仮定することで 予測値は目標値の条件付き期待値となる = = (, )
先ほどの式に手を加えて… 入力が = {1 , ⋯ , }, 目標値が1
, ⋯ , = = の尤度関数 , , = Ν ( ), −1 =1 入力変数の分布をモデル化したいわけではない →これからはを式から抜いて表示 多次元出力関数の観測値ではない 調整可能なとの関数になっている ということが重要!
尤度関数をごにょごにょしよう 対数を取る(掛け算→足し算にするため?) ln{ , , } = ln{Ν ,
−1 } =1 = 2 ln(β) − 2 ln 2 − () は二乗和誤差関数 = 1 2 { − ( )}2 =1 1変数ガウス分布 の標準形
を決定しよう(1) 最尤推定を使う 条件付きガウスノイズ分布での線形モデルは 二乗和誤差関数小=尤度関数大 対数化した尤度関数の勾配を取ると ln{ , ,
} = { − ( )}( ) =1
勾配=0の時(ガウス分布の頂点)、 0 = ( )−( ( )( ) =1
=1 これをについて解くと、 = ()−1 N×M行列 = ( ) ⋯ − ( ) ⋮ ⋱ ⋮ ( ) ⋯ − ( ) を決定しよう(2) 最小二乗問題の 正規方程式と一緒!
擬似逆行列の話 後々出てくるそうなので一応… ≡ ()−1 この行列をムーア―ペンローズ擬似逆行列と言う ムーア―ペンローズ擬似逆行列の意味 通常の逆行列の概念を、 非正方行列へと拡張したものと考えられる
バイアスパラメータの話(1) = 1 2 { − ( )}2 =1 =
(0 , ⋯ , −1 ) 0 = 1 ※ = 1 2 { − 0 − −1 =1 ( )}2 =1 ※ , = () −1 =1 =
バイアスパラメータの話(2) 先ほどの式を0 で微分=0として0 を解く 0 = − −1 =1
= 2 =1 目標値の平均 = 2 ( ) =1 基底関数の値の平均の重み付き和 バイアスパラメータの役割 と の差を埋め合わせている
を決定しよう 尤度関数から最大化する 手法としては、0 と一緒 2 ln(β) − 2
ln 2 − () ーーーーーーー手順は省略しますーーーーーーーー 1 = 1 { − ( )}2 =1
お詫び 3.1.2最小二乗法の幾何学 および 3.1.3逐次処理 に関しては省略します なんか説明の必要ないかなーと思ったので… よければ読んでみてください。
正則化項の話 誤差関数に正則化項を加える(過学習を防ぐ) + 正則化係数( と の重要度を制御) 正則化項で一番単純な値を使うと… =
1 2 = 1 2 { − ( )}2 =1 1 2 { − ( )}2+ 2 =1
荷重減衰 先ほどの正則化項の選び方のこと 機械学習の分野では荷重減衰 データのあてはめに必要ない重みが減衰するから 統計学ではパラメータ縮小推定
重みを0に近づけるから の勾配=0とすると最小二乗解の拡張
一般的な正則化誤差項 1 2 { − ( )}2+ 2 =1 =1
= 2 の時、荷重減衰の式と一緒 qの値によって変化する誤差項 特にq=1の時をlassoと呼ぶ lassoではλが大きい時、疎な解が得られる q=2 q=1
正則化の問題点 限られた訓練データで複雑なモデルを学習 ⇒過学習が発生! そこで使うのが正則化 根本的な問題は解決していない! 適切な基底関数の数を求める →適切なλを求めるに置き換えただけ
この問題については後半で…
出力変数が多次元の場合 今まで扱ってきたのは1次元のみ 応用場面によっては多次元もあるかも… 計算とか複雑なんだろうなー… K(>1)次元の出力を目標ベクトルとして、 の要素に対して異なる基底関数を用いる
複数の独立な1次元回帰問題に落とし込める! ※教科書に複雑な式もありますが最後には、 「単純化のため、1次元の目標変数tを考える」となっています。
3.1が終了しました お疲れ様でした これ以降の話をしましょう ベイズの枠組みを使って過学習をなくします その前にバイアスとバリアンスについて学びます
今日はバイアス-バリアンスまでです
バイアスとバリアンスの導出 期待二乗損失の話 = − ℎ 2 + ℎ −
2 , ℎ = | = (|) 損失を少なくしたいので第一項(非負)を0にする = ℎ ならば理想的! でも、ℎ は正しく求まらない・・・ (データと計算資源が無限にあれば可能)
予測関数 ; とする Dはデータ数 の第一項の積分はDに対して: { ; −
ℎ()}2 ; を↑の式に足して引く (めっちゃ面倒なのでホワイトボードで!!!!) 最後に全体の期待値を取ると… ; − ℎ 2 = { [ ; − ℎ()]}2+ [{ ; − [(; )]}2] 予測関数を使う バイアス バリアンス
つまりバイアス-バリアンスって? 視覚的にみてみよう!(1) 学習結果の平均(赤)と 真のグラフ(緑) 学習結果 学習結果がまとまっているが、結果と真のグラフは程遠い
つまりバイアス-バリアンスって? 視覚的に見てみよう!(2) 学習結果 学習結果の平均(赤)と 真のグラフ(緑) 結果と真のグラフは近いが、学習結果がまとまっていない
つまりバイアス-バリアンスって? (1)について 学習結果がまとまっている バリアンスが小さい 結果と真のグラフは程遠い
バイアスが大きい (2)について 学習結果がまとまっていない バリアンスが大きい 結果と真のグラフが近い バイアスが小さい トレードオフ の関係!
終わりです お疲れ様でした!
先週の続きです 先週:3章の3.2まで進みました 基底関数 最尤推定 正則化
バイアス・バリアンス など… 自分の番が終わるのがうれしい(本音)
第三章について 1. 線形基底関数モデル 2. バイアス-バリアンス分解 3. ベイズ線形回帰 4. ベイズモデル比較 5.
エビデンス近似 6. 固定された基底関数の限界
3.3 ベイズ線形回帰
これまでの議論と提案 線形回帰モデルパラメータ:最尤推定で決定 問題によってモデルの複雑さを選択する必要有 尤度関数を最大にするモデル=過度に複雑 ⇒過学習が発生! 正則化した場合…
正則化パラメータ=モデルの複雑さ 線形回帰モデルをベイズ的に扱う • 過学習を回避 • 訓練データのみを使ってモデルの複雑さを自動決定
パラメータwと事前確率分布 , = = Ν ( ), −1 =1
尤度関数 が定義される場合… 共役事前分布は = 0 , 0 0 期待値 0 共分散 事後分布(尤度関数×事前分布)は = , = 0 −10 + , −1 = 0 −1 +
続き 事後確率を最大にする重みベクトル = 無限に広い事前分布(0 = −1( → 0))では
= 最尤推定値(= ΦΦ −1Φ) N=0の場合は事後確率が事前確率と一致
今後の表記 議論を簡単に→精度パラメータ=α, 期待値=0 = , −1 等方的ガウス分布 = ,
事後分布(変化はない) = , −1 = + 事後分布の対数 ln p | = − 2 { − ( )}2− 2 + 定数 =1 ↑をwについて最大化 =二乗和誤差関数と二次正則化項の和を最小化
図3.7を使った説明
予測分布 wではなく、新しいxに対するtを予測したい 予測分布を評価する t , α, = ,
, , t , α, 予測分布 訓練データの目標値からなるベクトル 2.3.3の(2.115)より予測分布は、 t , , α, = , 2 2 = 1 + () 予測分布の分散
図3.8を使った説明
3.4 ベイズモデル比較
ベイズの立場からのモデル比較 モデルに関する不確かさを表す⇒確率を使用 確率の加法・乗法定理を使用 モデル ℳ = 1,
… , を比較 モデルの事後分布 ℳ を評価する 事後分布 ℳ の式 ℳ ∝ ℳ ℳ 訓練集合 ※簡単のため、事前分布は全モデルにおいて等しいとする
モデルエビデンス モデルエビデンス ℳ が重要 データから見たモデルの好み 周辺尤度とも呼ぶ (モデル空間でのパラメータを周辺化した尤度関数)
2つのモデルに対するエビデンス比はベイズ因子 ℳ / ℳ
モデル平均の近似 単純なのはモデル選択 一番もっともらしいモデルを一つ選ぶ方法 ℳ = , ℳ ℳ
周辺尤度: 事前分布からパラメータをランダムにサンプリングした 時に、データ集合が生成される確率 & ベイズの定理によってパラメータの事後確率を計算す る際、分母に現れる正規化定数
正しいモデルが選択される?(1) 2つのモデルℳ1 , ℳ2 を考えて確認 ℳ1 が正しいモデルとする 有限データ集合では正しくないモデルのベイズ因子が
大きくなることも… ⇒ベイズ因子をデータ集合の分布に関して平均 ⇒期待ベイズ因子が得られる ℳ1 ln ℳ1 ℳ3 ※真のデータ生成の分布に関して期待値を取る 仮定: モデルの集合中に、データが生成される真の分布が存在
正しいモデルが選択される?(2) カルバック-ライブラーダイバージェンス 2つの分布が等しい時に0 それ以外の場合は常に正の値 期待ベイズ因子は カルバック-ライブラーダイバージェンスの一例
仮定が成り立つ時、 平均的には正しいモデルのベイズ因子が常に大きい
3.5 エビデンス近似
Αとβにも事前分布を! 線形基底関数モデルを全てベイズ的に扱う ⇒αとβに事前分布を導入&周辺化したい! 全変数の上での解析的な周辺化は困難 パラメータwに関して積分 (周辺尤度関数を得る)
周辺尤度関数を最大にするα,βを決定 エビデンス近似 超パラメータ
超パラメータに事前分布を導入 予測分布:同時分布をw,α,βに関して周辺化 p t = , , , ,
ちなみに、 , , = Ν , , −1 (3.8) = , (3.49) = (3.53) −1 = + (3.54) 省略 事後分布
予測分布 事後分布が , の周りで鋭く尖っている α,βを , に固定&wを周辺化→予測分布を得る ≅ ,
, = , , , , の値は? ベイズの定理より事後分布は , ∝ , , 事前分布が比較的平坦な場合 ⇒ 周辺尤度関数 , を最大にする =エビデンス関数
最大化の手法 解析的にエビデンス関数を評価 エビデンス関数を評価 エビデンス関数の導関数=0とおく Αとβの再推定方程式を得る
EMアルゴリズムを使用 訓練データのみを用いて 超パラメータの値を決定できる こちらを説明
エビデンス関数の評価 , = , ↑周辺尤度関数 =同時分布をパラメータwについて積分 評価方法
エビデンス関数に変形 指数関数の中身を平方完成 ガウス関数の正規化係数の一般形を使用
(再掲)尤度関数をごにょごにょしよう 対数を取る(掛け算→足し算にするため?) ln{ , , } = ln{Ν ,
−1 } =1 = 2 ln(β) − 2 ln 2 − () は二乗和誤差関数 = 1 2 { − ( )}2 =1 1変数ガウス分布 の標準形
, = , を変形 , = 2 2 2 2
−() = , −1 E = β + = 2 | − |2 + 2 :wの次元数 ↑エビデンス関数 E と正則化二乗和誤差関数は定数倍の差のみ
(再掲)正則化項の話 誤差関数に正則化項を加える(過学習を防ぐ) + 正則化係数( と の重要度を制御) 正則化項で一番単純な値を使うと… =
1 2 = 1 2 { − ( )}2 =1 1 2 { − ( )}2+ 2 =1
指数関数の中身E(w)を平方完成 E = + 1 2 − − = +
= ヘッセ行列 = 2 || − ||2 + 2 = −1Φ 事後分布の平均
評価 exp − = exp − exp − 1 2
− − = exp − 2 2 ||−1 2 上記のように評価可能 周辺尤度の対数は ln , = 2 ln + 2 ln − − 1 2 ln − 2 ln (2)
αについて最大化(1) 固有ベクトル方程式を定義 = = + なので、固有値 + を持つ 周辺尤度の対数に含まれるln
|A|の項のαに関する導関数 ln = ln ( + ) = ln + = 1 + 周辺尤度の対数のαに関する停留点は以下を満たす 0 = 2 − 1 2 − 1 2 1 +
αについて最大化(2) 先ほどの式に2αを掛けて式を整理 = − 1 + = 上記の式の青字部分より、 =
の時に、周辺尤度が最大になる γはiに関する和の部分にMが含まれる場合、 = +
βについて最大化(1) αの方法と同じ(固有ベクトルも) 固有ベクトル = 固有値 はβに比例⇒ = なので
ln = ln ( + ) = 1 ln + = 周辺尤度の停留点 0 = 2 − 1 2 { − ( )}2− 2 =1
βについて最大化(2) 最終的には・・・ 1 = 1 − { − (
)}2 =1
固定された基底関数の限界 今回扱ったもの 固定の非線形基底関数を線形結合したモデル パラメータに関する線形性を仮定している 最小二乗問題の閉じた解が求まる
ベイズ推定の問題が簡単に! 入力変数から目標変数への非線形変換をモデル化 基底関数の選び方による 問題点の一つ: 「訓練データ集合を観測する前に基底関数を固定する」という仮定 ⇒次元の呪いが問題に! ↓ 現実的なデータでは軽減される
固定された基底関数の限界 今回扱ったもの 固定の非線形基底関数を線形結合したモデル パラメータに関する線形性を仮定している 最小二乗問題の閉じた解が求まる
ベイズ推定の問題が簡単に! 入力変数から目標変数への非線形変換をモデル化 基底関数の選び方による 問題点の一つ: 「訓練データ集合を観測する前に基底関数を固定する」という仮定 ⇒次元の呪いが問題に! ↓ 現実的なデータでは軽減される 致命的な欠点がある || より複雑なモデルを 扱う必要有!
ということで… 次回の方頑張って ください!