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
ガウス過程入門
Search
Takahiro Kawashima
November 16, 2022
Science
0
250
ガウス過程入門
株式会社LabBase主催 LabTech Talk vol.59 にて使用した資料です.
Takahiro Kawashima
November 16, 2022
Tweet
Share
More Decks by Takahiro Kawashima
See All by Takahiro Kawashima
論文紹介:Precise Expressions for Random Projections
wasyro
0
210
論文紹介:Inter-domain Gaussian Processes
wasyro
0
130
論文紹介:Proximity Variational Inference (近接性変分推論)
wasyro
0
270
機械学習のための行列式点過程:概説
wasyro
0
1.3k
SOLVE-GP: ガウス過程の新しいスパース変分推論法
wasyro
1
1k
論文紹介:Stein Variational Gradient Descent
wasyro
0
890
次元削減(主成分分析・線形判別分析・カーネル主成分分析)
wasyro
0
640
論文紹介: Supervised Principal Component Analysis
wasyro
1
750
論文紹介: The Indian Buffet Hawkes Process to Model Evolving Latent Influences
wasyro
0
340
Other Decks in Science
See All in Science
The thin line between reconstruction, classification, and hallucination in brain decoding
ykamit
1
880
Machine Learning for Materials (Lecture 8)
aronwalsh
0
410
証明支援系LEANに入門しよう
unaoya
0
320
ABEMAの効果検証事例〜効果の異質性を考える〜
s1ok69oo
4
2k
伊豆赤沢海洋深層水中からメラニン分解能を有する微生物の探索
eltociear
0
120
Cross-Media Information Spaces and Architectures (CISA)
signer
PRO
3
29k
Introduction to Graph Neural Networks
joisino
PRO
4
2k
創薬における機械学習技術について
kanojikajino
5
940
【人工衛星開発】能見研究室紹介動画
02hattori11sat03
0
140
Machine Learning for Materials (Lecture 6)
aronwalsh
0
500
私たちのプロダクトにとってのよいテスト/good test for our products
camel_404
0
150
非同期コミュニケーションの構造 -チャットツールを用いた組織における情報の流れの設計について-
koisono
0
130
Featured
See All Featured
Teambox: Starting and Learning
jrom
132
8.7k
Building Applications with DynamoDB
mza
90
6.1k
For a Future-Friendly Web
brad_frost
175
9.4k
How to Think Like a Performance Engineer
csswizardry
19
1.1k
The Cult of Friendly URLs
andyhume
78
6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
504
140k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.9k
What's in a price? How to price your products and services
michaelherold
243
12k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Building Your Own Lightsaber
phodgson
102
6k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
328
21k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Transcript
ガウス過程入門 川島 貴大 1, 2 LabTech Talk, November 16, 2022
1 総合研究大学院大学 統計科学専攻 2 国立精神・神経医療研究センター
目次 1. イントロ:機械学習における非線形性 2. ベイズ推論概論 3. ベイズ線形回帰からガウス過程回帰へ 4. ガウス過程の発展 5.
むすび 2
イントロ:機械学習における非線形性
非線形性への挑戦 機械学習分野における挑戦のひとつ:非線形性の取り扱い 線形な分類器 非線形な分類器 実データの複雑な構造を捉えるには非線形性の考慮が不可欠 ∠ ただしそのぶん方法論も複雑に…… 3
さまざまな非線形モデル • 深層学習 • 非常に高い表現力 • 広範なタスクで高性能な万能性 •
大量のデータと計算リソースが必要 • 決定木・アンサンブル学習 • コンペなど多くの実問題で深層学習を超える精度 • 分類以外の問題への拡張性の低さ • ガウス過程・カーネル法 • 少数データでの安定性 • 回帰・分類を含め,多くのタスクに対する拡張性の高さ • 大規模なデータ・タスクにはしばしば不向き 4
ベイズ推論概論
ベイズの定理 ベイズの定理 確率変数 𝑋, 𝑌 について,次のベイズの定理が成り立つ: 𝑝(𝑋|𝑌 ) = 𝑝(𝑌
|𝑋)𝑝(𝑋) 𝑝(𝑌 ) . 𝑝(𝑋|𝑌 ) は条件付き分布で, 「𝑌 の値が得られたもとでの 𝑋 の 分布」を表す. ベイズ推論:ベイズの定理を応用した機械学習の枠組み ∠ ガウス過程もベイズ推論の一種 5
ベイズ推論 手元のデータを用いて,それを背後で支配する未知のパラメータ を求めるのが目標. D をデータ集合,𝜽 を未知パラメータとすると,ベイズ推論では 𝑝(𝜽|D) = 𝑝(D|𝜽)𝑝(𝜽) 𝑝(D)
∝ 𝑝(D|𝜽)𝑝(𝜽) を求める.各項はそれぞれ次のように呼ばれる: • 𝑝(𝜽):事前分布 • 𝑝(D|𝜽):尤度 • 𝑝(𝜽|D):事後分布 • 𝑝(D):分配関数(正規化定数) 6
ガウス分布 ベイズ推論ではデータの特性に合わせてさまざまな確率分布が 用いられるが,今回の主役はガウス分布 (単変量)ガウス分布 N(𝑥|𝜇, 𝜎2) = 1 √ 2𝜋𝜎2
exp (− (𝑥 − 𝜇)2 2𝜎2 ) 多変量ガウス分布 N(𝒙|𝝁, 𝜮) = (2𝜋)− 𝐷 2 |𝜮|− 1 2 exp (− 1 2 (𝒙 − 𝝁)⊤𝜮−1(𝒙 − 𝝁)) 7
ガウス分布 - 3 - 2 - 1 φ μ,σ2 (
0.8 0.6 0.4 0.2 0.0 −5 −3 1 3 5 x 1.0 −1 0 2 4 −2 −4 x) 0, μ= 0, μ= 0, μ= −2, μ= 2 0.2, σ = 2 1.0, σ = 2 5.0, σ = 2 0.5, σ = 単変量ガウス分布 二変量ガウス分布 平均 𝜇 / 𝝁 によってピーク位置が,分散/共分散 𝜎2 / 𝜮 によって 広がり方が決まる 8
ベイズ推論による線形回帰 ベイズ推論による線形回帰を試してみる 𝑁 = 31 本の木から胴回りの長さと体積を測ったデータ 胴回り長 𝑥 と体積 𝑦
の関係を推定 パラメータを 𝒘 = (𝑤0 , 𝑤1 )⊤ とし, 𝑝(𝑦𝑖 |𝑥𝑖 , 𝒘) = N(𝑦𝑖 |𝑤0 + 𝑤1 𝑥𝑖 , 𝜎2), 𝑝(𝒘) = N(𝒘|𝟎, 103𝑰) と尤度・事前分布をおいてみる. 20 40 60 80 8 12 16 20 Girth Volume 9
ベイズ推論による線形回帰 灰:事前分布 𝑝(𝑤𝑖 ),緑:事後分布 𝑝(𝑤𝑖 |D) 0.00 0.05 0.10 0.15
-100 -50 0 50 100 𝑤0 の事前・事後分布 0.0 0.5 1.0 1.5 2.0 -10 -5 0 5 10 𝑤1 の事前・事後分布 ∠ パラメータの情報が,もとの事前分布からより確信度の高い 事後分布へ更新された 10
ベイズ線形回帰からガウス過程回帰へ
基底関数によるベイズ線形回帰モデル 先ほどの例では尤度の平均を 𝑤0 + 𝑤1 𝑥 と与えたが,これを 𝒘⊤𝝓(𝑥) = 𝐿
∑ 𝑙=0 𝑤𝑙 𝜙𝑙 (𝑥) = 𝑤0 𝜙0 (𝑥) + 𝑤1 𝜙1 (𝑥) + ⋯ + 𝑤𝐿 𝜙𝐿 (𝑥) と一般化してみる1. ∠ たとえば 𝜙𝑙 (𝑥) = 𝑥𝑙 とおくと,𝐿 次の多項式回帰に すなわち { 𝑝(𝑦𝑖 |𝑥𝑖 , 𝒘) = N(𝑦𝑖 |𝒘⊤𝝓(𝑥𝑖 ), 𝜎2) (尤度) , 𝑝(𝒘) = N(𝒘|𝟎, 𝑠2𝑰) (事前分布) なる回帰モデルを設定する. 1ガウス過程の世界では 𝝓 は特徴写像と呼ばれる. 11
ベイズ線形回帰モデルの周辺化 { 𝑝(𝑦𝑖 |𝑥𝑖 , 𝒘) = N(𝑦𝑖 |𝒘⊤𝝓(𝑥𝑖 ),
𝜎2), 𝑝(𝒘) = N(𝒘|𝟎, 𝑠2𝑰) ここでパラメータ 𝒘 を同時分布 𝑝(𝒚, 𝒘|𝒙) = 𝑝(𝒚|𝒙, 𝒘)𝑝(𝒘) から 積分消去(周辺化)してしまうと,𝒚 の条件付き分布 𝑝(𝒚|𝒙) = N(𝒚|𝟎, 𝑠2𝜱𝜱⊤ + 𝜎2𝑰) が得られる.ここで 𝑁 × (𝐿 + 1) 行列 𝜱 の (𝑖, 𝑙) 成分は 𝜙𝑙 (𝑥𝑖 ). また 𝜱𝜱⊤ は 𝑁 × 𝑁 行列で,(𝑖, 𝑗) 成分は 𝝓(𝑥𝑖 )⊤𝝓(𝑥𝑗 ). ∠ 𝝓(𝑥𝑖 ) と 𝝓(𝑥𝑗 ) の内積 12
ベイズ線形回帰からガウス過程回帰へ 𝑝(𝒚|𝒙) = N(𝒚|𝟎, 𝑠2𝜱𝜱⊤ + 𝜎2𝑰) ガウス過程回帰では,𝝓(𝑥) の具体的な形式は直接与えずに,その 内積だけを指定する.
つまりカーネル関数と呼ばれる 2 変数関数 𝑘(𝑥, 𝑥′) をあらかじめ 決めておき,𝝓(𝑥𝑖 )⊤𝝓(𝑥𝑗 ) = 𝑘(𝑥𝑖 , 𝑥𝑗 ) と置き換えてしまう. すなわち 𝑘(𝑥𝑖 , 𝑥𝑗 ) を (𝑖, 𝑗) 成分にもつ 𝑁 × 𝑁 行列 𝑲 で, 𝜱𝜱 = 𝑲 と置き換える2: 𝑝(𝒚|𝒙) = N(𝒚|𝟎, 𝑲 + 𝜎2𝑰) 2ここでは簡単のため 𝑠2 も 𝑲 内に押し込めた. 13
ガウス過程回帰 ガウス過程回帰の尤度 𝑝(𝒚|𝑿) = N(𝒚|𝟎, 𝑲 + 𝜎2𝑰) ここでグラム行列 𝑲
は 𝑲 = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑘(𝒙1 , 𝒙1 ) 𝑘(𝒙1 , 𝒙2 ) ⋯ 𝑘(𝒙1 , 𝒙𝑁 ) 𝑘(𝒙2 , 𝒙1 ) 𝑘(𝒙2 , 𝒙2 ) ⋯ 𝑘(𝒙2 , 𝒙𝑁 ) ⋮ ⋮ ⋱ ⋮ 𝑘(𝒙𝑁 , 𝒙1 ) 𝑘(𝒙𝑁 , 𝒙2 ) ⋯ 𝑘(𝒙𝑁 , 𝒙𝑁 ) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ なる 𝑁 × 𝑁 の(半正定値対称)行列. カーネル関数 𝑘(𝑥, 𝑥′) は通常正定値性と呼ばれる性質を満たす ように設計するが,今回は割愛 14
ガウス過程回帰による予測 未知の入力点 𝒙∗ に対する出力 𝑦∗ の予測分布もガウス分布に関す る計算から求まる: ガウス過程回帰の予測分布 データ集合を D
= {(𝑦𝑖 , 𝒙𝑖 )𝑁 𝑖=1 } とする.ガウス過程回帰の 予測分布は 𝑝(𝒚∗|𝒙∗, D) = N(𝒌⊤ ∗ (𝑲 + 𝜎2𝑰)−1𝒚, 𝑘∗∗ − 𝒌⊤ ∗ (𝑲 + 𝜎2𝑰)−1𝒌∗ ). ここで 𝑘∗∗ = 𝑘(𝒙∗, 𝒙∗), 𝒌∗ = (𝑘(𝒙1 , 𝒙∗), 𝑘(𝒙2 , 𝒙∗), … , 𝑘(𝒙𝑁 , 𝒙∗))⊤. ∠ 尤度や予測分布が閉形式で書ける! 15
代表的なカーネル関数 • ガウスカーネル ∠ 𝑘(𝒙, 𝒙′) = exp(− 1 2𝜎2
‖𝒙 − 𝒙′‖2) • ラプラスカーネル ∠ 𝑘(𝒙, 𝒙′) = exp(−𝛼‖𝒙 − 𝒙′‖2 1 ) • Matérn 3/2 カーネル ∠ 𝑘(𝒙, 𝒙′) = (1 + √ 3 𝜌 ‖𝒙 − 𝒙′‖) exp(− √ 3 𝜌 ‖𝒙 − 𝒙′‖) ガウスカーネル ラプラスカーネル Matérn 3/2 カーネル 16
ガウス過程の特徴 ガウス過程の利点と欠点 解が閉形式で求まる ∠ カーネル関数のハイパーパラメータはうまく決定する必要 データ点ペアでの内積(≈ 類似度)さえ定義できれば使える ∠
画像・文字列・グラフなど,構造的なデータへの適用が可能 回帰以外のタスクへの拡張性(後述) 大きいデータセットへのスケールの難しさ(後述) 深層学習ほどの高い表現力は期待しにくい ∠ 良くも悪くもカーネル関数にモデルが大きく支配される 17
ガウス過程回帰の例 Boston Housing : ボストン内の地区で住宅価格の中央値と 13 変 数との関係を調べたデータ (𝑁 =
506) 住宅価格の中央値 (medv) と低所得者層割合 (lstat) を用いてガウ ス過程回帰を行ってみる -2 -1 0 1 2 3 -1 0 1 2 3 lstat medv 18
ガウス過程回帰の例 -2 -1 0 1 2 3 -2 0 2
4 lstat medv ガウスカーネルによる回帰 -2 -1 0 1 2 3 -2 0 2 4 lstat medv Matérn 3/2 カーネルによる回帰 ガウスカーネルは滑らかな,Matérn カーネルは比較的ギザギザ した回帰を行う傾向 19
ガウス過程の発展
ガウス過程の別解釈 先ほどはガウス過程回帰を線形回帰モデルから導出した. 一方,次のような確率モデルもガウス過程回帰と等価になる. ガウス過程回帰の補助変数表現 𝑝(𝒚|𝒇) = N(𝒚|𝒇, 𝜎2𝑰) 𝑝(𝒇|𝑿) =
N(𝒇|𝟎, 𝑲) 𝑝(𝒚, 𝒇|𝒙) = 𝑝(𝒚|𝒇)𝑝(𝒇|𝒙) から 𝒇 を積分消去すれば,ガウス過程 回帰の尤度と同じ形に. 入力 𝒙1 , … , 𝒙𝑁 の値が変わると,𝒇 の分布が変わる ∠ 𝒇 をある関数 𝑓(⋅) の関数値𝒇 = (𝑓(𝒙1 ), … , 𝑓(𝒙𝑁 ))⊤と解釈 20
ガウス過程の拡張 通常のガウス過程回帰は 𝑝(𝒚|𝒇) = N(𝒚|𝒇, 𝜎2𝑰) に対応するが, この条件付き分布を付け替えることでモデルを拡張できる コーシー分布(外れ値に頑健) ロジスティック関数(二値分類)
∠ ベイズ推論のための一般的なツールで推定(MCMC など) 21
ガウス過程の計算問題 ガウス過程の各種計算を正確に行うには O(𝑁3) の計算量が必要 ∠ 主にグラム行列の逆行列 𝑲−1 の計算による ∠
大規模な問題にスケールしない ガウス過程の計算量削減に用いられる代表的なアプローチが 補助入力点によるもの. ∠ 入力空間上の少数の点にデータを “代表” させる 今回は比較的メジャーなスパース変分近似を紹介 22
スパース変分近似 ガウス過程回帰の尤度 𝑝(𝒚|𝑿) = N(𝟎, 𝑲ff + 𝜎2𝑰) は,入力空間 上に
𝑀 個の誘導点 𝒛1 , … , 𝒛𝑀 を導入することで, 𝑝(𝒚|𝒇) = N(𝒇, 𝜎2𝑰) 𝑝(𝒇|𝒖) = N(𝑲fu 𝑲−1 uu 𝒖, 𝑲ff − 𝑲fu 𝑲−1 uu 𝑲⊤ fu ) 𝑝(𝒖) = N(𝟎, 𝑲uu ) とさらに分解できる(𝒇, 𝒖 の積分消去でもとに戻る) . • 𝑲ff :(𝑖, 𝑗) 成分が 𝑘(𝒙𝑖 , 𝒙𝑗 ) の 𝑁 × 𝑁 行列 • 𝑲fu :(𝑖, 𝑚) 成分が 𝑘(𝒙𝑖 , 𝒛𝑚 ) の 𝑁 × 𝑀 行列 • 𝑲uu :(𝑙, 𝑚) 成分が 𝑘(𝒛𝑙 , 𝒛𝑚 ) の 𝑀 × 𝑀 行列 23
スパース変分近似 スパース変分近似では,𝒇, 𝒖 の事後分布を 𝑞(𝒇, 𝒖) = 𝑝(𝒇|𝒖)𝑞(𝒖) 𝑞(𝒖) =
N(𝒎, 𝜮) なる形に制限したときに,最も真の事後分布への近似が良くなる ように 𝒎, 𝜮 を決定する. 近似の良さは KL ダイバージェンスを用いて測る: 𝐷KL (𝑞‖𝑝) = ∫ 𝑞(𝒙) log 𝑞(𝒙) 𝑝(𝒙) 𝑑𝒙. ∠ 確率分布間の乖離度を示す代表的な指標 24
スパース変分近似 KL ダイバージェンス最小化により,𝑞(𝒎, 𝜮) の最適パラメータが 𝜮 = [𝑲−1 uu +
𝜎−2𝑲−1 uu 𝑲uf 𝑲fu 𝑲−1 uu ]−1, 𝒎 = 𝜎−2𝜮𝑲uf 𝒚 と求まる. ∠ 𝑁 × 𝑁 行列の逆行列が現れなくなった! 予測分布も同様に 𝑁 × 𝑁 の逆行列計算を回避して近似計算可能 各種計算量はO(𝑁3)からO(𝑁𝑀2)へ ∠ データ数 10k–100k オーダーでの学習が現実的に 25
スパース変分近似 𝑁 = 200, 𝑀 = 15 でのスパース変分近似の適用例.赤線が正しい予測分 布,青線が近似による予測分布.Titsias (2009)
より引用 26
むすび
むすびに ガウス過程回帰について,ベイズ推論の基礎から概観. 今回触れられなかったトピックも多数: • ガウス過程を用いた次元削減や実験計画などの発展的タスク • カーネル関数やハイパーパラメータ選択の実際 • さらなる計算量削減のための手法 •
理論的側面 ガウス過程は理論・方法論・応用いずれも日進月歩でアツい! 27