機械学習プロフェッショナルシリーズ ベイズ深層学習 読書メモ
機械学習プロフェッショナルシリーズ 「ベイズ深層学習 」より読書メモを記述する
前書き
ベイズ深層学習の目指すところ
深層学習の課題
大量のデータを学習できるスケールなモデルの開発やや速精度の改善が重視
予測結果の根拠に対する解釈性や信頼度に関する評価が後回し
ベイズ統計の課題
解釈性の高い解析が行える代わりに、大量・高次元のデータに対してスケールする手法の実用化が遅れる
目指すところ
モデルの関連性
第1章 はじめに
1.1 ベイズ統計とニューラルネットワークの変遷
1.1.1 ニューラルネットワーク
1958
パーセプトロン
脳機能に基づいた学習モデル
1969
マービンミンスキーによるパーセプトロンの理論的限界の指摘
1980年代
複雑系の研究でのネットワークが持つ複数のユニットの間の相互作用がもたらす全体的な挙動
1986
誤差逆伝搬法
1.1.2 ベイズ統計
1970
メトロポリタンヘイスティングス法
計算機を用いることで幅広いクラスの確率モデルに対する近似的な推論を可能にする
1990年代
ハミルトニアンモンテカルロ法等の高効率な計算アルゴリズムの提案
1980年代
ベイジアンネットワーク
有向非循環グラフによるグラフィカルモデル
1.1.3 ベイズニューラルネットワークの誕生
1987
ニューラルネットワークの重みパラメータに対して事前分布を設定し、 学習データを与えることで予測に有用な情報を抽出させる
1980年後半
ニューラルネットワークの統計モデルとしての枠組みの整備
1991
ラプラス近似を用いたニューラルネットワークの予測のアルゴリズム(畳み込みニューラルネットワーク(CNN)の発明者による)
w
ベイズ統計におけるモデル選択の枠組みをニューラルネットワークに導入
モデルの定量的評価指標の一つであるエビデンスとテストデータに対する予測指標を評価する汎化誤差の関係性を示す
1993
変分推論法あるいは変分ベイズ法によるニューラルネットワークの学習アルゴリズムの開発
1990年代
ベイズニューラルネットワークは計算コストが高く、少ないデータでないと性能が出ない
グラフィカルモデルにおけるベイズ推論の有用性が見出される
状態空間モデル
トピックモデル
2000年代
カーネル法やガウス過程等の、関数空間を直接取り扱って回帰を行う手法の台頭
1.1.4 深層学習の隆盛
ベイズ推論の機械学習の関心
大規模データにスケールする解析手法の構築を目的としたノンパラメトリックベイズあるいはベイジアンノンパラメトリクス
推論のために膨大な計算コストを要する
理論を十分に理解して使いこなす敷居が高い
2006
深層信念ネットワーク
層別事前学習の技術
従来は勾配消失問題などの理由で学習が難しかった複数層を持つ深いネットワークに対して効率的に学習が行える
より自由なネットワーク構造や、不快ネットワークに対する理論的解析や予測精度の向上を行う
2012
パラメータ数が60000000を超える巨大な畳み込みニューラルネットワークの使用
大量の学習用データと深層学習技術を使って従来の認識エラーを大幅に改善する結果を出す
w
過剰適合を防ぐためのドロップアウトと呼ばれる技術
大規模データを効率的に学習するための確率的勾配降下法
GPUによる高速な畳み込み演算
1.2 ベイズ深層学習
はじめに
2000年代以降はベイズ推論に基づく機械学習とニューラルネットワークは独立に進化
1.2.1 深層学習の限界点
膨大なパラメータを持つモデルを学習するには大量のデータが必要
ニューラルネットワークでは不確実性がうまく取り扱えない
予測アルゴリズムが何を知らないのかを知ることが重要(深層学習ではできていない)
モデルの解釈性に乏しい
ブラックボックスでどうしてそのような予測を行なったのかを出しにくい
調整しなければいけないハイパーパラメータの数が膨大で、性能改善のために多くの闇雲な試行錯誤が必要
1.2.2 ベイズ統計との融合
ベイズ学習と深層学習の融合の3つの方向性
深層学習モデルのベイズ化
深層学習のモデルを確率モデルとして定義し直す
生成モデルではデータに対してモデルをフィットすることはしない
ベイズでは、ハイパーパラメータの調整やモデル選択を周辺尤度を評価することで行う
深層生成モデルではモデルのデータ生成能力を定量的に評価する指針になる
他の確率モデルと組み合わせれるようになる
欠損値の補完も確率計算を通じて行える
マルチタスク学習や”転移学習の概要とアルゴリズムおよび実装例について“でも述べている転移学習にも適用できる
既存手法のベイズ解釈
いくつかの深層学習における計算技術はベイズ推論におけるものと等価
過剰適合を防ぐための正則化やドロップアウトは、ベイズ推論の変分推論のある種の利用形態として捉えれる
深層学習技術のベイズ推論への応用
線形関数とよばれる膨大な数の確率変数に対する事後分布の計算を、ニューラルネット穂ワークを用いて大量の変数の傾向を予測しながら推論する
1.2.3 用語・表記に関する注意点
推論の呼称の違い
第2章 ニューラルネットワークの基礎
2.1 線形回帰モデル
はじめに
線形回帰の誤差関数に基づく学習
2.1.1 最小二乗法による学習
出力関数
特徴量関数
ε:モデルによる予測wTΦ(s)とラベルyの間の誤差
誤差関数
誤差関数E(w)のパラメータwに対する勾配
∇WE(w)=0となるWLSは
最適化問題
最適解を得たときの新規の値に対する予測は
2.1.2 基底関数の選択
1次関数による回帰は学習データの細かな入出力関係をうまく捉えられない
上下に変動する学習でーたの特徴をうまく表すような特徴関数Φ(x)の設計を行う
例
線形回帰とは「基底関数のパラメータによる線形結合によって予測を行う」
線形回帰モデル
2.1.3 過剰適合と正則化
はじめに
次数が大きいと過剰適合しやすい
2.1.3.1 正則化項
過剰適合をふせぐために導入
ペナルティの項
新たなコスト関数
パラメータwによる最小化
∇wJ(w)=0となる停留点
L1正則化はスパースになる
2.1.3.2 正則化による学習の問題点
特徴関数を固定する必要がある
対応策
基底関数Φmの内部に新しくパラメータを導入して、基底関数自体もデータから同時に学習する
ガウス過程を用いる
基底関数を無限個用意した上でベイズ推定を行う
どの特徴量関数Φの選択がデータの傾向をよく表しているのか判断が難しい
対応策
データの一部を取り除いて、学習後に取り除いたデータで定量的に調べる
周辺尤度あるいはエビデンスと呼ばれる指標を用いた、汎用性の高いモデルの定量評価を行う
正則化項の設定指針が不明瞭
対応策
ベイズ理論とカーネル法を組み合わせた手法の一つであるガウス過程
ニューラルネットワークのように解釈のしにくいパラメータの空間において関数を制限するのではなく
関数に滑らかさや周期性といった性質を直接与えることで直感的なモデリングを行う
誤差最小化や正則化による学習では予測の不確実性を表現できない
2.2 ニューラルネットワーク
はじめに
線形回帰モデルでは基底関数があらかじめ固定されているために、 データに合わせた柔軟な特徴量抽出が行えない
ニューラルネットワークでは基底関数の中にパラメータを置くことにより、 データから基底関数自体も学習する
2.2.1 順伝播型ニューラルネットワーク
2.2.1.1 2層の順伝搬型ニューラルネットワーク
最も基本的なニューラルネットワークモデルである 順伝搬型ニューラルネットワーク(feedforwrd neural network)について解説する
多次元の入力xn∈ℝH0から多次元のラベルyn∈ℝDを予測するニューラルネットワークを構築する
線形回帰で利用した特徴量関数Φの内部に、 さらに線形回帰を構築するモデルを考える
w(1)h1,h0∈ℝおよびw(2)d,h∈ℝはネットワークの重みパラメーター(weight parameter)
行列を使った簡素な表記は上式となる
w(1)∈ℝH1xH0,
W(2)∈ℝDxH,
εn∈ℝD
Φ.は要素ごとに非線形関数Φを適用する演算を意味する
詳細に分割した表現
Zn,h1∈ℝ
a(2)n,d∈ℝやa(1)n,h1∈ℝのように、 隠れユニットや入力値にたいして重み付き和をとったもの
モデルの模式図
層数がL=2の順伝搬型ニューラルネットワークと呼ばれる
2.2.1.2 さまざまな活性化関数
ニューラルネットワークで用いられる基底関数Φ
よく利用される活性化関数
シグモイド関数と双曲線正接関数の関係
シグモイド関数 (sigmoid function)
関数形
双曲線正接関数 (hyperbolic tangent function)
関数形
標準正規分布の累積分布関数とガウスの誤差関数の関係
標準正規分布の累積分布関数 (cumulative distribution function)
関数形
ガウスの誤差関数 (Gauss error function)
関数形
x
正規化線形関数(rectified linear unit, ReLU) あるいはランプ関数(ramp function)
関数形
正規化線形関数を改良した指数線形関数 (exponential linear unit, ELU)
関数形
2.2.1.3 ニューラルネットワークで表現される関数の例
適当な重みパラメータW(1)およびW(2)を与え、 隠れユニットの数をH1=1,2,4とした場合のニューラルネットの例
活性化関数には双曲線正接関数を利用
H1=1の場合はパラメータの総数が2個であり、双曲線正接関数の入力と出力の軸を単純にスケールしただけのもの
H1を大きくしていくとパラメータ数が増加し複数の基底関数を組み合わせた複雑な関数を表現
層数がL=2の順伝搬型ニューラルネットワークにおいて、H1の数を増やすことで任意の連続関数を近似できる
2.2.1.4 複数層を持つ順伝搬型ニューラルネットワーク
さらに多層な表現
入力次元がH0、出力次元がD=HLのように対応
活性と隠れユニットを使って式を分解
層数がL>2となるような深いネットワーク構造を持つモデル
層数がL=2の場合に、パラメータをw(2)d,h1=1と固定したモデル
リンク関数(link function)は活性化関数の逆数に該当する
深層学習の多層構造を持つニューラルネットワークモデルは、 一般化線形モデルにおける非線形な変換を繰り返し適用したもの
2.2.2 勾配降下法とニュートン・ラフソン法
はじめに
順伝搬型ニューラルネットワークも線形回帰モデルと同様に、 誤差関数をパラメータに関して最小化することにより学習させることができる
2.2.2.1 勾配降下法
線形回帰との大きな違い
順伝搬型ニューラルネットワークの場合は 非線形な活性化関数の中みに学習対象となるパラメータが導入されているため、 解析的計算が困難
最もよく使われている手法
M次元のパラメータを持つモデルに対する誤差関数をE(W)とし、
勾配を上式とする
誤差関数がユークリッド距離の近傍で最も急に増加する方向性を表す
勾配降下法では、まず最適化したいパラメータに対して初期値を与える
前式の勾配と逆向きの方向にパラメータを少しだけ動かすことを繰り返す
α>0は学習率(learning rate)と呼ばれる
実験で適切なものを探す
2.2.2.2 ニュートン・ラフソン法
パラメータ数Nが多くない場合は、誤差関数の2回微分を利用して最適化を効率化する
まず最小化したい誤差関数を あるw周りのテイラー展開により2次近似する
∇2Eは誤差関数Eに対するヘッセ行列 (Hessian matrix)
誤差関数を2次で近侍すれば、近侍した関数E(W)の最小値は解析的に求められる
E(W)の勾配は上式となる
∇wE(W)=0とおいてwに関して解くと上式となる
最終的な条件式は上式となる
勾配降下方における学習率αがヘッセ行列の逆行列になる
ニュートン・ラフソン法は2次収束(quadratic convergence)するために、単純な勾配降下法よりも効率的に回に収束する
パラメータMが多い場合は、ヘッセ行列やその逆行列の計算に膨大な時間がかかる
改善版
準ニュートン法(quasi-Newton method)
ヘッセ行列の近似的計算
2.2.3 誤差逆伝播法
勾配降下法を利用した順伝搬型ニューラルネットワークの学習法
解析的に誤差最小となるパラメータを求められないので
勾配を使った計算機による最適化を行う
L層のモデルに対して、重みパラメータ全体の集合をWとおき、 学習データ数がN個の場合の誤差関数を上式のように設計する
データ全体の誤差関数E(W)は、 単純に各データ点に対する誤差En(W)の話になっているので、 特定のEn(W)の微分に関してのみ注目して計算する
En(W)の最上位の層の重さw(L)d,h∈W(L)に関する偏微分は上式となる
ただし
目標とするラベルデータynとニューラルネットワークの出力a(L)n,dとの間の差分を表す
一つ前のL-1番目の層における重みw(L-1)i,j∈W(L-1)の偏微分
Φ’をΦの導関数とすると
および
従って
ただし
各重みパラメータに関する偏微分計算は、続くL-2, L-3..でも同様に行う
実質的にはδ(l)n,jを各層に対して計算すれば良い
各パラメータの勾配は上式となる
最終的に後さ逆伝播法のアルゴリズム
ニューラルネットの勾配計算は、実際は微分の連鎖律(chain rule)を適用しているだけ
実装城では、多くのプログラム言語で自動微分(automatic differentiation)による購買計算ができる
プログラムで実装された関数の偏導関数を自動的に導出する技術
多くの場合、実際にて計算したり、勾配計算の式を直接プロマラムする必要はない
実用上はリッジ回帰と同様に上式のような正則化項Ω12(W)を付け加えるなどしてコスト関数J(W)を最小化する
2.2.4 ヘッセ行列を利用した学習
ニューラルネットワークの学習では一次微分を使った勾配法が主流
2次微分を使う最適化法も適用できる
ニュートン・ラフソン法等
ヘッセ行列を計算する必要がある
単純に計算すると時間がかかるので、簡略化するために
各入力xnに対する出力an(L)の勾配を使って上式のように近似する
2.2.5 分類モデルの学習
順伝搬型ニューラルネットワークは、主に実数連続値を予測する回帰問題に適用される
出力が有限のD個のうち1つの値をとる場合は識別(discrimination)あるいは分類(classification)と呼ばれる
D=2(2値分類)の場合、 上式のようなシグモイド関数の活性化関数を用いて、 入力xnに対する出力a(L)n∈ℝをμn∈(0,1)の範囲に変換する
ラベルデータyn∈{0,1}に対する誤差を、 上式のような交差エントロピー誤差関数 (cross-entropy error function)を使って評価する
各ラベルynとネットワークの出力μnのとる値が一致しているほど (ネットワークの出力が正しくラベルを分類できているほど) 誤差関数E(W)の値は小さくなる
D(>2)の多値分類に関しても同様
ラベルをyn∈{0,1}Dかつ∑d=1Dyn,d=1を満たすようなベクトルで表現する
ニューラルネットワークによるD次元の連続値の出力をan(L)∈ℝDとし、 ソフトマックス関数(softmax function)(上式)により、 D次元ベクトルπ(an(L))=(π1(an(L)),…,πD(an(L)))Tを得る
多値版の交差エントロピー誤差関数(上式)を使って誤差を定義できる
回帰の場合と同様に 誤差関数を誤差逆伝播法などを用いて 最小化すればネットワークを構築できる
多値分類の場合の出力層の偏微分は上式となる
ソフトマックス関数のa(L)n,d∈an(L)に関する偏微分が上式であることを利用
ネットワークが出力する分類結果πd(an(L))に対する正解のラベルyn,dとの差分を表す
2.3 効率的な学習法
はじめに
勾配降下法に基づく順伝播型ニューラルネットワークの学習は、 非常にシンプルで汎用性の高いアルゴリズム
大規模データに対する処理速度に問題がある
パラメータが多いモデルに対して過剰適合を起こす
2.3.1 確率的勾配降下法
前述の単純な勾配降下法に基づくニューラルネットワークの学習は 与えられたN個の学習データD={zn,yn}n=1Nの全てを一度に投入して 勾配を計算する方法
1回の更新のたびに学習データ全てを使って勾配の計算を行う
実用上は各更新でN個全ての入出力データの組Dを一度に処理せずに M<N個となる小規模な部分集合Ds={xn,yn}n∈Sを取り出して使う
Sはランダムに選択されたM個のインデックスの集合
Sによって選択された部分集合Ds
上式のような誤差関数を設定し、 誤差逆伝播法にほひパラメータを更新する
ミニバッチによる誤差関数は、期待値としては全学習データDに対する誤差関数E(W)と等価になる
qD(S)をSに関する一様分布であるとすると上式となる
確率的(stochastic)という言葉は、 乱数を用いて学習データからランダムに ミニバッチをとってくることに由来する
学習率をαiとおき、上記の条件でα1,α2のとる値をスケジューリングすれば
ミニバッチによる更新が確率1でE(W)の停留点に収束する
最もシンプルなスケジューリング方法としては上式がある
期待値の中身∇wEs(W)を使って確率的に∇WE(W)=0の解を探索する
確率的勾配降下法による最適化を効率化するために、 モメンタム法(momentum method)と呼ばれる手法もよく使われる
上式のような更新したいパラメータwと同じ次元の 速度ベクトルpを介した最適化を行う
Β∈[0,1)は、過去の勾配の影響をどれだけ受けるかを調整する
適切なβを与えることにより、モメンタム方による最適化は単純な勾配降下法よりも性能が良くなることが知られている
2.3.2 ドロップアウト
はじめに
大規模な順伝搬型ニューラルネットワークをはじめとする 多くの深層学習モデルの予測精度を大幅に向上させて技術
モデルの学習時に少数のノイズをデータや隠れユニットなどに加えることによって、 過剰適合を抑制しテストデータに対する予測精度の工場を目指すもの
2012年にヒントンが提案した技術
深層学習の分野で最もよく使われる確率的正則化手法の一つ
ドロップアウトを用いた順伝搬型ネットワークの学習法について解説する
通常、ドロップアウトは確率的勾配降下法の枠組みで使用される
ミニバッチDs={xn,yn}n∈Sが与えせれた後
各データ点{xn,yx}に対する勾配計算時に各ユニットをある独立な確率r∈(0,1)で無効にする
確率rは学習前にあらかじめ決めておく値
通常はr=0.5
データ点[xn,yn]が与えられるごとに、 ドロップアウトによってサブネット(subnet) と呼ばれる部分グラフが構成される
ミニバッチ内の各点に対する勾配を計算した後は、 単純にそれらを平均化することによって 最終的にパラメータを更新するための勾配を得る
ドロップアウトでは、 学習後のモデルを使ったテスト入力x*に対するy*の予測には
ユニットを欠落させていない元々のネットワークを用いる
各ユニットの出力を1-r倍にスケーリングしたものを代わりに用いると、予測性能が上がる
ドロップアウトが過剰適合を防ぐ説明
サブネットを組み合わせることによるアンサンブル効果(ensenble)
機械学習でのバギング(bagging)と呼ばれる方法では、
通常k個の異なるニューラルネットワークを K個の分割されたデータセットを用いてそれぞれ独立に学習させる
最終的にK個の予測結果を統合する
ドロップアウトでは
単一のネットワークを用いてバギングと似た効果を実現させる
ユニット数をUとすれば、 2U個の異なるニューラルネットワーク(サブネット)を 近似的に組み合わせて学習する
単なるバギングによるアンサンブルよりも実質的に遥かに多くのネットワークを効率的にアンサンブルする
遺伝的な交配のプロセスを模倣することにより、予測を行う関数をロバストに進化させる
ドロップアウトに類似した確率的正則化法
ユニットを無効化する代わりに、ユニットの出力に対して平均1、分散1のガウス分布m〜N(1,1)によるノイズmを掛け合わせる
ノイズの期待値が𝔼[n]=1になるので、 ドロップアウトと異なり予測値のスケーリングが不要
ドロップコネクト(DropConnect)
ドロップアウトの特別な場合で、各スカラーの重みwと隠れユニットzの間の接続をランダムに欠落させる
2.3.3 バッチ正規化
ドロップアウトと並んで頻繁に使われるもう一つの確率的正則化
学習時に加法的なノイズと情報的なノイズを隠れユニットに与える
学習時における最適化の効率化と、ノイズの予科による正則化の効果を同時に実現する
多層構造を持ちニューラルネットワークの学習の難しさ
一つ前の層のパラメータの変化によって、 次の層に対する入力の分布が大幅に変化してしまうことが要因の一つ
上記をふせくためには、学習率αを小さくすれば良い
更新量を小さくするので計算効率が著しく低下する
バッチ正則化のアイデア
ミニバッチが与えられるごとに、 上式にあるように隔離ユニット{zn}n∈Sの各値を 平均0、分散1になるように修正する
ただし
Cは数値計算を安定化させるために追加する正の定数
単純に入力を正規化させると、 各層における表現能力が単純なものに制限される
活性化関数としてシグモイド関数を利用した場合
入力を正規化し0付近の領域に写像することになり
関数が実質的に線形変換に近いものになる
これらを解決するために、
正規化された出力źnに対してさらに上式のようなパラメータγ∈ℝ, β∈ℝを持つ線形変換を行うユニットを追加する
バッチ正則化を用いたネットワークを使って予測を行う場合
ミニバッチの代わりに学習データ全体を使って正則化の計算を行う
バッチ正則化に関してもドロップアウトと同様に、ある種の変分推論法を暗黙的に実行しているとみなされる
2.4 ニューラルネットワークの拡張モデル
はじめに
ニューラルネットワークモデルの実用上重要な特徴
対象とするデータや目的に合わせて簡単にカスタマイズできる
2.4.1 畳み込みニューラルネットワーク
数多くあるニューラルネットワークの拡張モデルの中で最も成功した例
通常の重みパラメータによる行列積の代わりに畳み込み(convolution)と呼ばれる変換を取り入れたモデル
時系列データや画像認識のタスクで高い性能を発揮する
畳み込み計算の例
左の列が行列で表される1枚の2次元の画像X
右がフジゲンのフィルターと呼ばれる重みパラメータ
下は畳み込み後のデータ(式は上式)
特徴マップ(feature map)
実際の画像データに対してサイズが3×3の各種フィルターを適用した例
一般的な順伝搬型ニューラルネットワーク
畳み込みニューラルネットワーク
上手に示すように、 ある出力Si,jが入力Xの局所的な領域にのみ依存する
全結合の場合と比べて変換に必要なパラメータが劇的に少なくなる
画像中の特徴的な箇所の移動に対して不変な特徴抽出が行える
フィルターと入力画像を適切に変換することにより、 通常の行列積として書き直せる
逆誤差伝搬法による重みの学習を用いれば、 フィルターWをデータから学習させることができる
計算された特徴マップは、 通常の順伝搬型ニューラルネットワークと同様に 正規化関数などの活性化関数によって変換される
その後プーリング関数(pooling function)と 呼ばれる非線形変換がよく適用される
代表的なものは最大プーリング(max pooling)と呼ばれるもの
プーリングされる値は入力のわずかな変化に対しても変化しにくい
プーリング関数自体は学習せずに、固定したままで使う
最終的にデータの分類などを行う際には、 階層的に処理をした特徴を入力とした 全結合のニューラルネットワークを 最上位の層に追加する
2.4.2 再帰型ニューラルネットワーク
順伝搬型ニューラルネットワークや畳み込みニューラルネットワークは、 各データ点が統計的に独立であると言う仮説をおく
入力データやラベルの次元数が固定
課題
統計的に独立でない(時系列で相関を持つ)データは多々ある
音声データ
同画像データ
文字列データ
長さの異なるデータ扱いにくい
時系列データを表現するために考案されたニューラルネットワーク
典型的な再帰型ニューラルネットワークの例
連続値を持つ入力データx1,x2,…,xnに対するカテゴリのラベルデータy1,y2,…,ynが与えられている
時刻nの各隠れユニットznが時系列的な依存関係を持つ
前の時刻の隠れユニットzn-1と時刻nにおける入力データxn に基づいて上式のように計算される
Wzx,Wzzおよびbzは全時刻にわたって共有されるネットワークのモデルパラメータ
Φは要素ごとに適用する非線形変換
各時刻の隠れユニットznからは、 上式のようにソフトマックス関数πによって出力が決定される
Wyzおよびbyは出力を決定するためのパラメータ
誤差関数は、 各時刻におけるネットワークの出力と ラベルの間の誤差によって定義される
時刻nにおける誤差は上式となる
時系列全体の誤差は上式となる
誤差関数のパラメータΘに関する最小化は、 通常の順伝搬型ニューラルネットワークと同様に、 誤差逆伝搬法で得られる勾配を利用する
様々な応用課題における 再帰型ニューラルネットワークの構造
入力データ系列から単一の出力を回帰するモデル
自然言語や動画データの分類に使われる
入力データから系列データの出力を生成するモデル
単一の画像からキャプションを付与する
畳み込みニューラルネットワークによって中間層から画像の特徴を抽出し、 それを再帰方ニューラルネットワークの入力として文字生成を行う
入力も出力も系列データ
自動翻訳等で使われる
2.4.3 自己符号化器
教師なし学習(unsupervised learning)への適用
深層学習の分野で最もよく使われている方法の一つ
入力X=[x1,…,xN]のみを学習データとして使う
Xを低次元の空間Z=[z1,…,zN]に圧縮
Xの持つ特徴的な構造を抽出することなどに使われる
自己符号化器の目標
2つのニューラルネットワークfおよびgを用いて、 観測データX=[x1,…,xN]を別の変数列Z=[z1,…,zN]に写像する
各znは符号(code)あるいは 一般的に潜在変数(latent variable)
関数fは符号化器(encoder)と呼ばれるニューラルネット
関数gは複合化器(decoder)と呼ばれるニューラルネット
自己符号化器では、 これらの関数を上式のような一つの損失関数Lの 最小化問題を解くことにより学習する
符号化器fによってxnの情報を低次元のznに変換し
さらに複合化器gがznを元の入力xnに近づけるように学習
高次元のxnが持つノイズ以外の本質的な情報のみをznとして抽出することが目的
Znはそのままデータ圧縮に利用
後段で空に別の教師ありアルゴリズムの特徴りょう入力として使う
通常fやgには順伝搬型ニューラルネットワークなどが用いられる
表現力が高すぎると、 元のデータxnを復元するための情報を ノイズも含めて全て保持してしまう
何らかの方法を使って潜在変数znが獲得する表現を抑える必要がある
よく使われる方法は、 上式のようにznに対して正則化項Ω(zn)を加えて 目的関数を構成する
各znを制限することにより、自己符号化の学習が恒等写像に収束することを避ける
自己符号化は2つのニューラルネットワークを 単純に組み合わせるだけで簡単に教師なし学習ができる
課題
有用な特徴量を獲得するための符号化器fや復号化器g、 さらに誤差関数fや正則化項Ωの設計が明確でない
過剰適合を起こさないように調整するのも困難
自動微分
計算機で微分を行う方法
最も基本となる第1の方法
最適化したい未来的関数に関する導関数をて計算で求めた後にプログラムに落とし込む
第2の方法
数値微分(numerical differentiation)
微分の定義に従い、実際に小さい入力の変化hを与えた上で関数の変化f(x+h)-f(x)を計算する
第3の方法
数式微分(symbolic differentiation)
与えられた数式を記号処理を用いて解析することにより微分の表現を得る手法
第4の方法
自動微分(automatic differentiation)
プログラムで記述された関数に対して微分の連鎖律を適用することで、関数の微分値を自動的に計算する
手法の分類
入力変数から計算を行う方法
関数値から計算を行う方法
誤差伝搬法の一般化
複雑な微分計算は、自動微分のツールに任せて、アルゴリズム開発者はモデルと最適化方針の設計に集中するべき
第3章 ベイズ推論の基礎
3.1 確率推論
はじめに
ベイズ推論は学習や予測、モデル選択などを全て確率分布上の計算問題として取り扱う
3.1.1 確率密度関数と確率質量関数
M次元ベクトルx=(x1,…,xM)T∈ℝMの実数関数p(x)が 上式の2つの条件を満たすとき、 p(x)を確率密度関数(probability density function)
各要素が離散値であるような M次元ベクトルx=(x1,…,xM)Tに対する関数p(x)が 上式の2つの条件を満たすとき、 p(x)を確率質量関数(probability mass function)と呼ぶ
確率密度関数や確率質量関数で決められるxの分布
3.1.2 条件付き分布と周辺分布
ある2つの変数xとyに対する確率分布p(x,y)
上式のように一方の変数xを積分により除去する操作を 「周辺化(matginalization)」
同時分布p(x,y)において、yに対して特定の値が決められた時のxの確率分布
式
p(x|y)はxの確率分布
Yはこの分布の特性を決めるパラメータのようなもの
以上を合わせると上式になる
条件付き分布は確率分布の条件を満たす
上式を満たすときxとyは独立(independence)であると言う
3.1.3 期待値
期待値は確率分布の特徴量を定量的に表すことに使われる
xをベクトルとしたとき、確率分布p(x)に対して、 ある関数f(x)の期待値𝔼p(x)|f(x)|は上記のように計算される
2つの確率分布p(x)およびq(x)に対して、 上式のような期待値を KLダイバージェンス(kullback-Leibler divergence)と呼ぶ
KLダイバージェンスは2つの確率分布の「距離」を表す
数学的な距離の公理は満たしていない
3.1.4 変数変換
確率密度関数に対して変数変換を行うことによって 新たな確率密度関数を導出する方法
再パラメータ化勾配(reparameterization gradient)や正則化流(normalizing flow)といった近似推論のための計算技術を理解するために必要
全単射の関数f:ℝM→ℝMによって、 変数をy=f(x)のように一対一に変換する操作を考える
既知の確率密度関数をpx(x)とすれば、 変換によって得られるyの確率密度関数は上式となる
Jはfの逆関数gのヤコビ行列(Jacobean matrix)
det(Jg)はJgの行列式
例: ガウス分布に従う確率変数を 双曲線正接関数により変換し、 新しい確率密度関数を作る
1次元のガウス分布は上式のように定義される
ガウス分布に従う変数xに対して、 双曲線正接関数によって変換された 新しい変数y=Tanh(x)を考える
双曲線正接の微分は上式となる
Yの確率密度は上式となる
ガウス分布に対して変換y=Tanh(x)によって得られる確率密度
分布から得られるヒストグラム
3.1.5 グラフィカルモデル
確率モデルに存在する複数の変数の関係性をノードと矢印を使って表現する記法
ループ構造を持たない有向グラフ
例1
3つの変数x,y,zからなる確率モデル
グラフィカルモデル
例2
式
グラフィカルモデル
別の表現
3.2 指数型分布族
はじめに
ベイズ推定で用いられる多くの実用的な確率分布は、指数型分布族(exponential family)と呼ばれるある形式を持つクラスに属する
指数型分布族はいくつかの利点がある
3.2.1 確率分布の例
ガウス分布
1次元のガウス分布または正規分布は 上式のようなx∈ℝの確率密度関数を持つ分布
μ∈ℝは平均パラメータ
σ2>0は分散パラメータ
ガウス分布は上式のようにM次元の多変量に拡張される
μ∈ℝMはM次元の平均パラメータ
ΣはサイズがMxMの共分散行列(covariance matrix)
共分散行列は正定値行列(positive definite matrix)である必要がある
離散値系
ベルヌーイ分布
コイン投げの分布(2値をとる変数)
単一のパラメータによって分布の性質が決まる
確率質量関数は上式となる
カテゴリ分布
ベルヌーイ分布を任意のD値をとるように拡張したもの
確率変数sを生成する分布は上式となる
πは分布を決めるD次元のパラメータ
x
ガンマ分布
正の実数λ>0を生成してくれる確率分布
分布の式
パラメータaおよびbは共に正の実数値として与える必要がある
Γ(・)はガンマ関数
ガンマ関数に関する性質
3.2.2 ガウス分布の計算例
最も使用頻度の高いガウス分布に関して周辺分布の計算例を示す
多次元の分布(上式)
前提条件
変数x∈ℝDを、D=D1+D2とした 2つの縦ベクトルx1∈ℝD,x2∈ℝDに分けて考える
平均パラメータμ∈ℝDも同様に μ1∈ℝD1, μ2∈ℝD2と分割する
共分散行列は上式のように分割する
Σは対称行列なのでΣ12=Σ21Tとなる
精度行列(precision matrix)をΛ=Σ-1とおくと同様に
共分散行列の要素とは上式の関係が成り立つ
このとき周辺分布p(x1)は上式となる
条件付き分布p(x1|x2)は上式となる
ただし
3.2.3 指数型分布族
はじめに
具体的に指数型分布族の霊や性質を見ていく
3.2.3.1 定義
指数型分布族(exponential family)は上式のような形式で書ける確率分布の族
η:自然パラメータ(natural parameter)
t(x):十分統計量(sufficient statics)
h(x):基底測度(base measure)
a(η):対数分配関数(log partition function)
確率分布が積分して1になることを保証するためのもの
3.2.3.2 分布の例
ガウス分布、ポアソン分布、多項分布、ベルヌーイ分布など多くの分布が指数型分布続として表せる
例
ベルヌーイ分布の確率質量関数
変形すると
指数型での表現での対応
ポアソン分布の場合の確率質量関数
変形すると
指数型での表現での対応
3.2.3.3 対数分配関数と十分統計量の関係
指数型分布族の重要な性質
対数分配関数a(η)のηに関する勾配は十分統計量t(x)の期待値になる
対数分配関数a(η)の2階の偏微分は十分統計量の共分散になる
3.2.4 分布の共役性
はじめに
指数型分布族に対する解析的な推論計算の例
指数型分布関数に対して上式のような 共役事前分布(conjugate prior)が存在する
3.2.4.1 事後分布の解析的計算
共役事前分布の重要な性質は、 指数型分布族による尤度関数に対して、 事後分布も事前分布と同じ形式になる
N個のデータX=[x1,…,xN]を観測したとすると、事後分布は上式となる
ηに着目すると同じ形式となる
事後分布のパラメータをλ1,λ2とすると
指数型分布による尤度関数に対して、適切な事前分布をとると、事後分布は解析的に求められる
3.2.4.2 予測分布の解析的計算
共役性を用いれば、 事後分布を使って未観測のデータx*の予測分布を 上式のように解析的に求められる
結果の確率分布は指数関数型分布族にはならない
3.2.4.3 例:ベルヌーイ分布のパラメータの推論
例として ベルヌーイ分布の自然パラメータによる表現を使って、 パラメータの学習と予測を分布の導出を行う
ベルヌーイ分布の共役事前分布は上式のようなベータ分布となる
式を直すと
指数関数型の表現に変換すると
ベルヌーイ分布に従う確率分布xn∈[0,1]がN個観測されたとすると
元のパラメータ表現でのそれぞれの分布は
および
ただし
3.2.4.4 例:ガウス分布の精度パラメータの推論
1次元のガウス分布の平均値パラメータμを固定した場合
精度(precision)やパラメータガンマ=σ-2の共役事前分布はガンマぶんぷで与えられる
1次元のガウス分布は
指数型分布族の定義と対応つけると、上式のような自然パラメータによる表現となる
ガンマ関数は上式で表される
上式となる
事後分布はガンマ分布を用いて上式で表される
精度パラメータγを周辺除去した結果となる
上式のようなスチューデントのt分布(Student’s t-distribution)
ただし
平均および分散は上式となる
3.3 ベイズ線形回帰
はじめに
線形回帰モデルを使ってベイズ推論によるモデルの学習とテストデータの予測を行う
3.3.1 モデル
入力X={x1,…,xN}から連続値のラベルY={y1,…,yN}を 予測するためのベイズ線形モデルの同時分布を上式とする
ラベルynは上式のように 固定の分散σ2yを持つガウス分布に従って出力されるとする
ガウス分布の平均値は特徴量関数Φ:ℝH0→ℝH1によって決定されているとする
各特徴量に対する重みパラメータw∈ℝH1のみを学習することとする
上式のような平均0、共分散σw2Iのガウス事前分布を与える
グラフィカルモデルは上図となる
例:特徴量関数を3次元関数Φ(x)=(x3,x2,x,1)T、 パラメータのノイズをσw2=1とした場合の モデルからの関数f(x;w)wTΦ(x)のサンプル
ベイズ統計における回帰モデルでは、 データを観測する以前に候補となる関数を 事前分布からサンプリングすることで
3.3.2 学習と予測
はじめに
ベイズ線形回帰モデルの学習と予測を解析的に行う
3.3.2.1 事後分布の解析的計算
事後分布を上式とする
対数をとってwに関して整理する
結果として上式のようなガウス分布となる
ただし
3.2.2.2 予測分布の解析的計算
学習後にさらにテストの入力値x*が与えられた時の 予測値y*の分布p(y*|x*,Y,X)は上式となる
こちらも上式のようなガウス分布となる
ただし
いくつかデータ点を与えた後の予測分布の様子
赤の波線が予測の平均値
青の領域が予測の標準偏差σ*の2倍となる区間
緑の複数の線は、予測分布からサンプルを5本抽出したもの
3.3.2.3 最尤推定との比較
学習データに対して1時間数のモデルで最尤推定(maximum likelihood estimation)を行った場合との比較
ベイズ推定では予測の不確実性の現象が起きている
ベイズ推定では学習に使ったデータ量の情報を反映する
最尤推定ではデータ量の情報は消えてしまう
3.3.3 周辺尤度
学習データとして 入力集合X={x1,…,xN}とラベル集合Y={y1,…,yN}が得られた元で、 パラメータwを同時分布から積分除去した値
ベイズ線形回帰の周辺尤度(marginal likelihood)あるいはエビデンスと呼ぶ
モデルが与えられた元でのデータの出現するもっともらしさを表す量
3.3.4 逐次学習
ベイズ推論によるモデルの学習では、 事後分布による学習結果を保存することにより、 新規に入っくる学習データに適応的に学習を進められる
共役事前分布を使った解析的な学習では、 データの生成過程に順序の磯先生を仮定しない場合、 データを一時てはに与えたものと、 一度に全て与えた場合で最終的に事後分布が一致する
ベイズ線形回帰の例で、 最初の学習データD1={X1,Y1}が入ってきた後の パラメータの事後分布は上式となる
さらに次間学習データ集合D2={X2,Y2}を与えれば上式となる
最初のデータセットD1で学習させた事後分布p(w|Y1,X1)を事前分布として使って次の事後分布を計算する
3.3.5 能動学習への応用
線形回帰モデルの予測分布を計算すれば、予測大衆の値に対する不確実性を分散の指標によって定量的に計れる
ベイズ線形回帰をはじめとした確率推論に基づく予測手法を、 効率的に学習用のラベルデータを収集する
ラベルの付いていない入力Xpoolから適切な入力データを選び出し、 人間などのあのθにラベルyqを質問する
ラベルを知りたい入力データ点xqを選択する方法
新しい入力x*を与えた時の予測y*の不確かさが大きいものを選ぶ
予測分布のエントロピーが最大になるxqを選ぶ
線形モデルでの予測式
能動学習の例
能動学習と同様の枠組みは、未知の関数f(x)の最大値の探索にも使える
ガウス過程を使うのが一般的
3.3.6 ガウス過程との関係
線形回帰モデルでの予測分布の平均および分散は上記となる
ウッドベリーの公式を使って書き換えると上式となる
ただし
特徴量関数Φはある2つの入力データ点xおよびx’に対して常に上式のような形に集約される
k(xox’):カーネル関数(kernel function)または共分散関数(covariance function)
特徴量抽出を行う関数Φを設計するのではなく、 共分散関数k(x,x’)を直接設計することで回帰が行える
異なるデータ間の類似度や近さのようなものを設計する
3.4 最尤推定,MAP推定との関係
はじめに
最尤推定(maximum likelihood estimation)およびMAP推定について解説する
3.4.1 最尤推定と誤差最小化
回帰モデルのパラメータを最尤推定を用いて学習する方法を導出
ラベルynはパラメータwを持つ関数f(xn;w)に ノイズεを加えた上で観測されていると仮定する
観測ノイズは上式のような固定の分散σ2を持つガウス分布に従う
まとめるとynは上式のような平均と分散を持つガウス分布となる
学習データD=[X,Y]が与えられたとするとモデルの尤度は上式となる
最尤推定では、 データYの出現のもっともらしさが 最大になるようにパラメータwを最適化する
最尤推定解は上式となる
対数尤度を具体的に書くと上式となる
線形回帰の場合は、パラメータwに関する対数尤度関数の最大化と誤差関数の最小化が一致する
勾配の式は上式となる
学習率をαとすると更新式は上式となる
ノイズパラメータσ-2を学習率に吸収させると勾配降下法の式と等価になる
3.4.2 MAP推定と正則化
最尤推定に類似した方法として、最大事後確率推定(maximum z posteriori estimation)またはMAP推定(maximum a posteriori estimation)と呼ばれる方法が存在する
MAP推定が正則化項付きのコスト関数の最小化と等価になることを示す
MAP推定は、 パラメータの事後分布をwの関数と見た時、 その関数の最大値をとるようなwを探索する
パラメータの事前分布はガウス分布で与えられているとする
対数事後確率は上式になる
正則化の強さを調整するパラメータを上式であると解釈する
前式の最大化はL2正則化項を導入した式のコスト関数を最小化するものと等価になる
最尤推定やMAP推定は、パラメータや予測値y*を分布ではなく1点で行う
条件先分布や周辺分布といった確率計算のみを使うベイズ推定とは明確に区別される
3.4.3 分類モデルに対する誤差関数
はじめに
確率モデルの枠組みに基づいて、 実数値を予測する回帰モデルから有限個のカテゴリーの拡張を考え、 交差エントロピー誤差関数との対応を考える
3.4.2.1 2値分類の場合
まずラベルが2値yn∈{0,1}を撮る場合を考える
確率モデルとして解釈すると 上式のベルヌーイ分布から生成されていると考えられる
パラメータμn∈(0,1)は上式のように回帰モデルの連続出力をηn∈ℝとし、 シグモイド関数を適用することにより得られると仮定する
f(xn;w)wTΦ(xn)の場合のモデル
上式のようなベルヌーイ分布の自然パラメータ表現を考えると
シグモイド関数の役割はベルヌーイ分布のパラメータμを自然パラメータηに変換する役割を持つ
ベルヌーイ分布に基づく対数尤度は上式となる
3.4.2.2 多値分類の場合
多値分布に対しても同様に考えられる
カテゴリ分布を使って
D次元のヘイキンパラメータπnは上式のようなソフトマックス関数により変換される
たちモデルによる対数尤度は上式となる
交差エントロピー誤差関数の最小化と等価になる
第4章 近似ベイズ推論
4.1 サンプリングに基づく推論手法
はじめに
ベイズ推論を用いた統計解析では、 観測データをX、 パラメータや潜在変数などの非観測の変数をまとめた集合をZとした時
まず最初に確率モデルp(X,Z)を設計する
多くのモデルではp(Z|X)は解析的に求められない
サンプリングアルゴリズムは、 p(Z|X)を明治的に求める代わりに、 p(Z|X)から複数のサンプルを得ることで分布の特性を調べる方法
4.1.1 単純モンテカルロ法
分布p(z)に関してある関数f(z)の期待値∫f(z)p(z)dzを求めることを考える
期待値の解析的な積分計算は困難だが、 分布p(z)からのサンプリングは容易であると仮定
最も基本的な方法は、 上式のようにp(z)から 十分大きなT個のサンプルを抽出して近似する方法
単純モンテカルロ法(simple monte Carlo method)
N個の各速データX=[x1,…,xN]に対して、 パラメータθを持つモデルp(X,θ)p(θ)の周辺尤度p(X)を評価する
単純モンテカルロを使った周辺尤度の近似
4.1.2 棄却サンプリング
密度の計算が困難な確率分布p(z)からのサンプルを得るための最もシンプルな方法
上式のような目標分布からサンプルをとる方法を考える
p(z)が計算できない代わりに、正規化されていない関数p(z)のみが計算可能であるとする
提案分布(proposal distribution)と呼ばれる サンプリングが簡単に行えるような仮の分布q(z)を設定する
提案分布からのサンプルz(f)〜q(z)を得る
一様分布Unit(0,kq(z(f))からの サンプルū〜Unit(u|0,kq(z(f))を取得する
ū>ṗ(z(f))であればサンプルz(t)は棄却(reject)される
Ũ≤p(z(f))であればサンプルz(t)は受容(accept)される
上記の手続きだとサンプルが受容する確率は上式となる
複雑なモデルにおいて 高次元のサンプリングが必要とされる場合、 サンプルの受容率が非常に低くなる
4.1.3 自己正規化重点サンプリング
期待値をとりたい確率分布p(z)からのサンプルが容易に取得可能である
棄却サンプリングのようにp(z)から直接サンプルを得られない状況において利用できる手法
廃棄サンプリング法と異なる点
p(z)からのサンプルz(1),z(2),…自体を取得する代わりに、 期待値そのものを効率的に計算することを目標としている点
期待値の計算式
4.1.4 マルコフ連鎖モンテカルロ法
廃棄サンプリングは直感的で実装も容易だが、 実際は1次元程度の簡単な積分にしか適用できない
高次元の空間で効率的にサンプリングを行うための手段
確率変数の系列z(1),z(2),…に対して常識が成り立つ時、 系列を一次マルコフ連鎖と呼ぶ
上式が成り立つ時、分布p*(x)は定常分布(stationary distribution)であるとする
遷移確率8transition probability)を上式とする
定常分布p*(z)がサンプルを取り出したい事後分布であるとする
p*(z)に分布収束するような遷移確率を 設計するのがマルコフ連鎖モンテカルロ法のアイデア
p(z)が定常分布となるための十分条件として 詳細釣り合い条件(detailed balance condition)がある
詳細つり足条件に加えて、 サンプルサイズをt→∞とした時、 遷移確率Tによって任意の初期状態p(z0)から 定常分布p*(z)に収束する
マルコフ連鎖において任意の状態から任意の状態へ有限回数で遷移できること
全ての状態が固定の周期性を持たないこと
同じ状態に有限回で戻ることができること
4.1.5 メトロポリス・ヘイスティングス法
最も基本的なマルコフ連鎖モンテカルロ法
アルゴリズム
遷移確率は上式
詳細釣り合い条件を満たすことを証明
定常分布に収束するめたの遷移確率T(z’,z)が必要
直接設計するのが難しい場合は 代わりに遷移の提案分布q(z|z’)を使うことができる
提案分布の一例
一つ前のサンプルz(t)を平均としたガウス分布z*〜N(z(t),I)がよく使われる
2次元ガウス分布p(z)=N(0,Σ)を サンプルを得体目標分布とした時の メトロポリス・ヘイティングス法の動作を示す
提案分布にガウス分布N(z(t),1)を用いているため、 挙動が”ランダムウォークの概要とアルゴリズム及び実装例“でも述べているランダムウォークになる
4.1.6 ハミルトニアンモンテカルロ法
はじめに
ハミルトニアンモンテカルロ法(Hamiltonian Monte Carlo method, HMC) またはハイブリッドモンテカルロ(hybrid Monte Carlo method, HMC)は 解析力学的な物体の軌道のシミュレーションと メトロポリス・ヘイスティングス法を組み合わせたサンプリング法
事後分布の微分情報を利用することで、 ガウス分布を適用したメトロポリス・ヘイスティングス法と比べて ランダムウォーク的な挙動を避けて、より効率的に事後分布を探索できる
4.1.6.1 ハミルトニアンのシミュレーション
サンプリングアルゴリズムの話に入る前に、 ハミルトニアンを利用した解析力学的な数値シミュレーションを解説する
物体の位置ベクトルをつ∈ℝD, 運動ベクトルをp∈ℝDとする
起伏のある表面上での物体の運動は、 摩擦によるエネルギーの現象がないとすれば ハミルトニアン(上式)を保ったまま運動をする
U(k):位置によって決まるポテンシャルエネルギー
K(p):運動エネルギー
仮定
質量は1とする
K(p)=1/2pTpとする
Zとqの時間τに関する挙動は 上式のようなハミルトニアンの偏微分によって決定される
式を統合すると上式となる
解析的には解けないので数値シミュレーションにて計算する
最も単純な方法はオイラー(Euler’s method)で上式のように時刻ε>0先の挙動を近似する
離散化による数値誤差が大きい
リープフロッグ法(leapfrog method)を利用する
時刻εL先の物体の位置z*と運動量p*を計算できる
ハミルトニアンのシミュレーションの特徴
ハミルトニアンは時間的に不変
可逆性(reversibility)を持つ
開始地点(z,p)から到達地点(z*,p*)への遷移は一対一
ハミルトニアン・モンテカルロ法の効率性は体積保存(volume preservation)の性質により特徴づけられる
4.1.6.2 サンプリングアルゴリズムへの適用
リープフロッグ法を使ったシミュレーションをサンプリングアルゴリズムに適用する
サンプルを得たい確率分布p(z)∝Ṗ(z)に対して 補助変数pを導入し上式のように拡張する
2つの分布は独立なので、 同時分布p(z)p(p)から得られるzのサンプルは 周辺分布p(z)から得られたものと同一と見れる
p(p)=N(p|0,1)とし、 さらにlnṖ(z)=-U(z)とおいて同時分布を計算すると
ハミルトニアンが得られる
運動量pをガウス分布に従ってサンプリングした後、 ハミルトニアンのシミュレーションを行えば 新しいサンプル点の候補(z*,p*)が得られる
ハミルトニアンHをほぼ一定に保ったまま軌道を描くため、 メトロポリス法でひりつγ(上式)は常に1に近い値を取る
正確には1にならないが ランダムウォーク的な挙動を持つ メトロポリス・ヘイスティングス法などの手法と比較すると、 ハミルトニアンモンテカルロでは非常に高い受容率を実現できる
ハミルトニアンモンテカルロ法のアルゴリズム
動作を決定する設定値は主にステップサイズεとステップ数L
Lが固定の場合はεが小さいほどシミュレーションの誤差が少なくなり受容率が向上する
Εを小さい値に固定したままLを大きくすれば受容率を高く保ちながら移動量も大きくできる
ハミルトニアンモンテカルロ法は非常に汎用的
離散潜在変数などの微分できない変数をそのままでは扱うことはできないという制限も持つ
ニューラルネットワークモデルでは 連続的な潜在変数で成り立っていることが多いため、 ニューラルネットワークのベイズ学習に使われてきた
ハミルトニアンモンテカルロ法の例
目標分布の微分値を利用しているため、 積極的に目標分布の中心部に向かう
4.1.6.3 ランジュバン動力学法
L=1とした場合は ランジュバンモンテカルロ法(Langevin Monte Carlo method) あるいはランジュバン動力学(Langevin dynamics method)と呼ばれる
式は上式になる
実装はかなりシンプルになる
ランダムウォーク的な挙動が強くなる
4.1.7 ギブスサンプリング
確率分布p(z)から直接Z全体をサンプリングすることが難しい場合
Z=[Z1,Z2,…,Zm]のように変数をM個の部分集合に 分けることによって逐次サンプリングを行える
ギブスサンプリング(Gibbs sampling)と呼ぶ
各条件付き分布が右図のように解析的に計算できるように 共役事前分布をうまく用いてモデルを構築できれば、効率的に計算できる
以下のような場合に有効
サンプルを得たい変数の数が膨大である場合
複数の確率分布が組み合わさった巨大な確率モデルからサンプルを得たい場合
2次元ガウス分布をサンプルを得たい目標分布とした ギブスサンプリングの適用例
それぞれの変数に対する 条件付き分布p(z1|z2)およびp(z2|z1)を利用して サンプリングしているため、 得られる軌跡は軸にそった垂直なものになる
必ず受容するため赤い点は存在しない
サンプリングしたい確率変数をZ=[Z1,Z2]のように分割し、 Z2を条件つけした元でのZ1のサンプリングを考える
提案分布はq(Z*|Z)=p(Z1*|Z2)であり、 Z2に関しては固定したままZ2*=Z2であることに 注意すると上式になる
ギブスサンプリングによって得られる 新しいサンプルZ1*は常に受容される
4.2 最適化に基づく推論手法
はじめに
マルコフ連鎖モンテカルロ法は、無限に計算し続ければ得られるサンプルが真の値と同一視できる
事後分布を最適化によって近似することで収束する方法について説明する
4.2.1 変分推論法
最適化による近似推論アルゴリズムの中で最も広く用いられている手法
事後分布を計算する際に登場する解析不能な積分を、 最適化の問題に置き換えることで近似的に計算する
周辺尤度p(x)の計算には潜在変数Zの積分法p(X)=∫p(X,Z)dZが必要になる
変分推論法では、 エビデンス下界(evidence lower bound , ELBO)と呼ばれる 対数周辺尤度lnp(x)の下界L(𝝃)を考える
変分推論における近似分布の平均や分散を指す
ELBOを負にしたF=-L(𝝃)は 変分エネルギー(variable energy)と呼ばれる
勾配降下法などの一般的な最適化によりL(𝝃)を𝝃によって最大化すれば、 対数尤度lnp(X)の近似解が得られる
ELBOの設計の仕方は複数あり、 モデルや目的に応じて使い分ける
最もよく使われる方法
事後分布p(Z|X)を パラメータ𝝃で定められるある分布q(Z;𝛏)により近似する方法
近似の良さを図る指標
KLダイバージェンスを使って、 変分パラメータ𝛏に関して再消化することで近似分布q(Z;𝛏)を得る
対数尤度lnP(X)は上式のようにELBOと前式のKLダイバージェンスに分解できる
ただし
対数尤度inp(X)自体は𝛏の値に関わらず一定なので KLダイバージェンスを𝛏に関して最小化する問題は L(𝝃)を最大化する問題と等価になる
近似分布qの置き方には様々な選択がある
複雑なモデルは、 上式のように事後分布に独立性を近似する方法がよく使われる
潜在変数の集合ZがZ=[Z1,…,ZM]のようにM個に分割できるとする
平均場近似(mean field approximation)と呼ばれる
各近似分布q(Z1),…q(ZM)を交互に更新していくため、 アルゴリズムの特性はギブスサンプリングと非常に似てものとなる
変分推論法の最大の利点は計算効率の良さ
変分推論では変分パラメータに関して KLダイバージェンスを最小化するため、 計算の過程で近似精度が必ず良くなる
欠点は、真の事後分布が複雑になると近似精度に限界が出てくる
サンプリングアルゴリズムとは対照的
4.2.2 例:平均場近似による潜在変数モデルの学習
はじめに
変分推論法の典型的な利用例
主に高次元の観測データX=[x1,…,xN]を低次元の潜在的な集合=[z1,…,zN]で表現する
データの圧縮
特徴の抽出
確率モデルでの解釈
主成分分析(principal component analysis)
独立成分分析(independent component analysis)
K平均ほう(k-means method)
線形次元削減(linear dimensionality reduction)のモデルを構築
事後分布を平均場近似により近似
最尤推定のEMアルゴリズム(expectation maximization algorithm)との類似から
変分EMアルゴリズムは以下の技術の基礎になる
非線形版の変分自己符号化器(variational auto encoder, VAE)
ノンパラメトリックベイズ版のがガウス過程潜在モデル(Gaussian process latent variable model, GPLVM)
4.2.2.1 線形次元削減への適用
教師ありの線形回帰モデルと同様に、 観測データX=[x2,…,xN]は 入力変数Z=[z1,..,zn]の線形結合 および固定のノイズσx2で決まると仮定する(上式)
入力変数Zは観測値の集合ではなく、未観測の潜在変数(latent variableョの集合であるとする
各潜在変数は上式のようなガウス分布で生成されているとする
パラメータは上式のようなガウス分布に従うとする
真の事後分布を上式のようにqで分解近似する
周辺尤度p(X)=∫p(X,Z,W)dZdWの対数の下界は上式となる
変分推論法では、 マルコフ連鎖モンテカルロ法と同様に、 まずはじめに近似分布を適当に初期化し、 その後近似分布の更新ステップを繰り返す ことで下界Lを最大化する
あるステップi+1において、 一つ前のステップの近似分布がqi(Z),qi(W)であるとする
続くqi+1(W)の計算は、 q(W)を固定した上で前式の下界をqi+1(W)に関して最大化して求める
ただし
また
前式の最大化は KLダイバージェンスの最小化と等価であるため 最適解は上式となる
右辺のパラメータの近似事後分布の更新
qi+1(W)を固定した上で最適なqi+1(Z)を求めることができる
ここで
また
右辺のような潜在変数の近似事後分布の更新
線形次元削減モデルでは、 各ステップにおけるri(W)およびri(Z)が解析的に求められる(ガウス分布になる)
4.2.2.2 混合ガウス分布への適用
連続的な潜在変数Zの代わりに、 離散の潜在変数を用いた場合は クラスタリング(clustering)のアルゴリズムが導出できる
観測データX=[x1,…,xN]をK個のグループに分ける手法
例として、混合ガウス分布(Gaussian mixture distribution)を考える
各データ点がK個の異なるガウス分布の集まりから生成されていると仮定する確率モデル
観測分布の尤度関数を上式とする
σx2は固定のノイズ
各潜在変数は、上式のようなカテゴリ分布に従うとする
各グループk=1,…,Kのパラメータは、ガウス分布に従うとする
平均場近似を使って上式のように分解すれば、 線形次元削減と同じ方法で変分EMアルゴリズムが得られる
4.2.3 ラプラス近似
ラプラス近似(Laplace approximation)も変分推論と同様に、 事後分布をより簡単な分布を使って近似的に表現する推論手法
事後分布p(Z|X)のとる値が最大となる点をZMAPとしたとき、 ラプラス近似では事後分布を上式のようなガウス分布で近似する
ガウス分布の精度行列Λ(Z)は 対数事後分布のヘッセ行列を負にしたものになる
ラプラス近似の手順としては、
まず最初に 勾配降下法やニュートン・ラフソン法などの最適化アルゴリズムを使って 対数事後分布の最大値ZMAPを計算しておき
次にその点における上式を評価して精度行列𝝠(ZMAP)を求める
事後分布をガウス分布として近似表現することで、 後で予測分布や周辺尤度などの計算に必要な積分が評価しやすくなる
ラプラス近似は対数事後分布の形状を ZMAP回りのテイラー展開で2次近似することに対応する
ZMAPが∇zlnp(Z|X)=0の回であることを利用
前式の指数をとるとZの分布は上式と近似される
右辺を正規化することでガウス分布による表示が得られる
ラプラス近似はアイデアがシンプルであり、既存の正則化やMAP推定に基づくパラメータの学習に容易に拡張できる
課題
ヘッセ関数の計算に時間がかかる
近似にガウス分布を用いているため、 離散や非負の実数上で定義される確率分布には直接は適用できない
4.2.4 モーメントマッチングによる近似
はじめに
仮定密度フィルタリング(assumed density filtering)や 期待値伝搬法(expectation propagation method)といった 近似推論手法の基礎となる モーメントマッチング(moment matching)と呼ばれる確率分布の近似手法を紹介する
4.2.4.1 モーメントマッチング
変分推論法やラプラス近似と同様、 ある複雑な確率分布p(z)を より簡単な分布q(z)を用いて近似する手法を考える
近似分布は上式のような指数型分布で表せるとする
近似したい目標分布p(z)と 前式の近似分布の間の KLダイバージェンスを上式のように定義する
前式を自然パラメータηに関して最小化する
ηに対する勾配を計算しゼロとおけば上式となる
指数型分布族を用いて最適に近似するためには
単純にp(z)の十分統計量の期待値𝔼p[t(z)]、 すなわちp(z)のモーメントを計算し、 その結果を使って指数分布族パラメータを決定すれば良い
4.2.4.2 仮定密度フィルタリング
モーメントマッチングを利用した近似推論は、 逐次学習が解析的に行えないようなケースで使用できる
最もシンプルな近似逐次学習手法である 仮定密度フィルタリング(assumed density filtering)を解説する
データ集合D1を観察した後のパラメータθの事後分布は上式となる
尤度関数p(D1|θ)と事前分布p(θ)の間に共役性がなりたてば、 p(θ|D1)やそれに続くp(θ|D1,D2),p(θ|D1,D2,D3),..も 事前分布と同じ形式を用いて解析的に事後分布に取り込むことができる
共役性が成り立たないモデルでは上記のアプローチは使えない
p(θ|D1)に対する近似分布q1(θ)を設定し、 上式のような近似を行う
ここで、Z1=∫p(D1|θ)p(θ)dθ
近似分布q1(θ)は事前分布p(θ)と同じ分布を選ぶ
右辺のモーメントを計算し、それと一致するようなモーメントを持つようにq(θ)を決定する
続いて、逐次的にデータセットD2,D3..が入ってきた後も上式のように近似を行う
q(θ)と同じ分布の形式を保ったまま近似事後分布を更新できる
実際の計算例として、 パラメータθ∈ℝに関する分布q(θ)が ガウス分布あるいはガンマ分布として2つの場合を考える
新たに追加する尤度の項をfi+1(θ)=p(Di+1|θ)とおくと
上式のようにqi+1(θ)のモーメントをri+1(θ)のモーメントに合わせることにより、 近似分布をqi(θ)からqi+1(θ)に更新することが行いたい
4.2.4.3 ガウス分布の例
一次元のガウス分布による近似分布(上式)を考える
正規化定数Zi+1は上式となる
右式の対数をμiで偏微分すると上式になる
よって分布ri+1(θ)の1次モーメントは上式となる
右式の対数をパラメータviで偏微分すると上式となる
よって2次のモーメントは上式となる
よってモーメントマッチングによって得られる 新しい分布qi+1のパラメータは上式となる
続き
4.2.4.4 ガンマ分布の例
同様にガンマ分布の場合を考える
正規化定数を上式とする
ガンマ分布の密度関数の定義を用いて、 近似したい1次と2次のモーメントは上式となる
ガンマ分布の平均および分散はそれぞれa/bおよびa/b2であることから
モーメントマッチによって得られる新しい分布qi+1(θ)の パラメーai+1,bi+1に対して常識が成立する
これをai+1およびbi+1で書き直すと上式となる
4.2.5 例:モーメントマッチングによるプロビット回帰モデルの学習
プロビット回帰(profit regression)と呼ばれる 2値yn{-1,1}を予測するための分類モデルを例に
モーメントマッチングを利用した 仮定密度フィルタリングによる近似推論を導く
プロビット回帰の尤度関数は上式となる
非線形関数Φは標準正規分布の累積分布関数
パラメータの事前分布は、 固定の分散v0を持つガウス分布(上式)を仮定する
このモデルの周辺尤度は上式となる
解析的に計算できない
代わりに、 モーメントマッチングによる近似的な事後分布の更新により、 尤度の項fi(w)=p(yi|xi,w)を一つ一つ追加していくことを考える
パラメータの事後分布の近時にガウス分布を使用する
最初の更新は事前分布に対して 最初の尤度の項fi(w)を追加して 上式のように最初の近似q1(w)を得る
以降は上式で更新
最終的には上式となる
ただし
4.2.6 期待値伝播法
仮定密度フィルタリングでは、 一度学習したデータは捨ててしまい再び学習に使うことはない
逐次的に入ってくる学習データの順序に強く依存する問題がある
仮定密度フィルタリングをバッチ学習モテせ切るように一般化した手法
最適化の過程で同じデータを何度も訪問することで、 過程密度フィネタリングよりも精度の高い近似事後分布を得る
パラメータθの事前分布p(θ)および 尤度関数p(x|θ)で構成される確率モデルを考える
fnは因子(factor)と呼ばれ、 上式のように対応づけられている
因子を使った場合のこのモデルの事後分布は上式となる
この事後分布に対する近似分布を、 上式のような近似因子ḟの積で表現する
例えば、 近似因子としてḟn(θ)=N(θ|μn,Σn)のように ガウス分布の確率密度を選んだとする
N+1個の近似因子の積を正則化することにより 得られるq(θ)もガウス分布になる
あるi番目の因子fiを与えることにより、 近似式を逐次的に更新する手段を考える
近似分布q(θ)のパラメータを適当に初期化する
更新途中における現在の近似分布をqold(θ)とする
近似分布から、まずi番目の現在の近似因子を取り除く
I番目の近似因子を取り除いたq\i(θ)に対して、 モデルの因子fi(θ)を追加し、正規化したものを上式とする
Ziは正規化定数
分布r(θ)のモーメントを計算し、 これを新しい近似分布qnew(θ)のモーメントにする
仮定密度フィルタリングと同じ手続きでできる
qnew(θ)をガウス分布とした場合、①と②を使えばできる
新しく更新した近似分布qnew(θ)を使って 上式のように近似因子ḟi(θ)を更新する
全てのi=0,..,Nに関して何度も繰り返し適用して近似分布を改善させる
直感的には
期待値伝搬法は近似逐次学習法である仮定密度フィルタリングを、 バッチ学習版に拡張したものとみなせる
学習に使用した因子を捨てずに 再び近似事後分布の更新に使うのが期待値伝搬法のアイデア
仮定密度フィルタリングと同じ手続きで因子を再現なく追加すると、 学習データの量が水増しされてしまう(同じデータを使い回す)
各近似因子モデルḟiをモデルの因子に置き換え、
更新したい因子fiを近似分布から抜き出す処理を挟む
期待値伝搬法は特定の目的関数を減少させるということは行わない
ニューラルネットやガウス過程の学習に使うとうまくいくことが実験的にわかっている
第5章 ニューラルネットワークのベイズ推論
はじめに
前節のアルゴリズムをニューラルネットワークのモデルの学習と予測に適用する
大規模データ向けに近似推論計算を効率化するためのミニバッチを使った学習法を解説する
応用事例を紹介する
5.1 ベイズニューラルネットワークモデルの近似推論法
はじめに
近似推論手法は、 順伝搬型ニューラルネットワークをはじめとした 深層学習のモデルに直接適用できる
まずバッチ学習によるニューラルネットワークの基本的な学習手法を解説する
5.1.1 ベイズニューラルネットワークモデル
順伝搬型ニューラルネットワークをベイズ化する方法
ネットワークの挙動を支配するパラメータに 事前分布を設定することによって 確率的な学習や予測が行われる
最もシンプルな順伝搬型ネットワークのベイズモデルを題材に、 事後分布の様々な近似推論アルゴリズムを導出する
簡単のために対象を回帰モデルに絞る
出力層にベルヌーイ分布やカテゴリ分布を 設定した分類モデルでも議論の本筋は同じ
入力データX=[x1,…,xN]が与えられたもとでの、 観測データY=[y1,…,yN]およびパラメータの同時分布を上式とする
xn∈ℝH0からyn∈ℝDを予測する回帰問題であるとする
観測モデルには上式のようなガウス分布を使うことにする
Σy2は固定のノイズパラメータ
f(xn;W)は出力次元がDであるニューラルネットワーク
例えばL=2の場合は、各d次元目の出力は上式となる
ベイズ推論の枠組みでは、 学習データが与えられた後のパラメータの事後分布を計算する
ニューラルネットワークのパラメータには 事前分布を明示的に設定する必要がある
各重みパラメータをw∈Wとし、 上式のような独立なガウス分布を与える
活性化関数に双曲線正接関数、入力ベクトルを(x,1)Tとし、 隠れ層の数H1および重みパラメータに仮定する ノイズσw2を変えた場合のサンプル例を示す
H1が大きくなるほど事前分布によって生成される関数が複雑化する
σw2が大きくなるほど急峻な変化を持つ関数が生成される
5.1.2 ラプラス近似による学習
はじめに
まず、ベイズニューラルネットワークモデルに対する ラプラス近似による学習と予測を導出する
5.1.2.1 事後分布の近似
まずはじめにモデルの事後分布の MAP推定値を最適化により求めた後、 その周辺をガウス分布によって近似する
事後分布は上式となる
分母のp(X|Y)には重みパラメータWが含まれていないので、 W最適化の過程では無視できる
局所最適解WMAPは、対数事後分布の勾配を利用して上式のように更新する
対数事後分布は上式のように書けるので
あるパラメータw∈Wの偏微分を計算すると上式となる
正則化項Ω12(W)は パラメータwに関するガウス事前分布p(w)に由来する
E(W)はニューラルネットワークの誤差関数
ラプラス近似で計算される近似ガウス事後分布を上式のようにおける
精度行列𝝠は上式のように求められる
Hはニューラルネットワークの誤差関数に対するヘッセ行列
5.1.2.2 予測分布の近似
パラメータの事後分布の近似を得た後は、 テストの入力に対する出力y*の予測分布を上式のように近似する
非線形なニューラルネットワークが 含まれるため解析的に計算できない
予測分布を計算するため、 ニューラルネットワークの関数の線形近似を行う
以下の仮定をおく
パラメータの事後分布の密度がMAP推定値の周辺に集中しており
かつその小さな範囲においては ニューラルネットワークの関数値f(x;W)が Wの整形関数でよく近似できる
テイラー展開でWの関数f(x;W)を WMAP周りで1次近似すれば上式となる
gは上式のように関数の勾配をWMAPで評価したもの
この近似を用いると ニューラルネットワーク特有の非線形関数がなくなる
求めたい予測分布の近似は上式となる
ただし
ラプラス近似によって得られた予測分布の例
赤の波線が予測平均f(x;WMAP)を表す
水色の領域は予測の不確実性(標準偏差の2倍)
5.1.3 ハミルトニアンモンテカルロ法による学習
はじめに
ハミルトニアンモンテカルロ法を用いた ベイズニューラルネットワークの 事後分布からのサンプリングを考える
ハミルトニアンモンテカルロ法は、 対数分布がサンプリングしたい変数に関して 微分可能であれば適用できる
事後分布に強制的にガウス分布による当てはめを仮定するラプラス近似や変分法と比べて
5.1.3.1 重みパラメータの推論
ベイズニューラルネットワークへの ハミルトニアン・モンテカルロ法の適用は
ロジスティック回帰をはじめとした通常の一般化線形モデルへの適用と同じ
正規化されていない事後分布を用いれば、 対応するポテンシャルエネルギーは上式となる
リプブロック法を使うためにはポテンシャルエネルギーの微分が必要
入力次元をH0=1、出力次元をD=1とした実験結果
ラプラス近似の場合と異なり、 複数の関数のサンプリングによって予測の不確実性が実現される
5.1.3.2 ハイパーパラメータの推論
重みパラメータWの事前分布を支配するσw2や 観測モデルのノイズパラメータσγ2はハイパーパラメータとして扱われる
通常は学習をする前に適切なものを固定値として与えておく
データの大まかなスケール感を反映している
ハイパーパラメータに対しても事前分布を設定して、 サンプリングの枠組みで重みパラメータと同時に推論できる
ハイパーパラメータへの事前分布設定
パラメータWは分散σw2を持つガウス分布に従って決定される
精度パラメータγw=σw-2を導入して、 上式のようなガンマ分布を考える
aw>0およびbw>0は固定値とする
観測ノイズに対する精度パラメータ γy=σy-2も同様に上式とする
ay>0およびby>0とする
これらの精度パラメータの事前分布を 導入した場合のモデルは上式となる
事後分布全体は上式となる
ギブスサンプリングを用いて 各確率変数のサンプルを得る
各確率変数W,γw,γyを条件付き確率を用いてサンプリングする
γwおよびγyがサンプリングされた値で 条件つけされた元でのWの分布は上式となる
パラメータの事後分布そのもの
ハミルトニアンモンテカルロ法を 実行することによってWのサンプルを得られる
Wおよびγyが与えられた元でのγwの分布は、 γwに関わらない部分を無視すると上式となる
p(W|γw)がガウス分布
精度γwの事前分布p(γw)には 共役事前分布であるガンマ関数を用いているので
この条件付き分布もガンマ分布として解析的に求められる
以上よりγwのサンプルとして上式が得られる
ガンマ分布の事後分布(3.60)
Kwは重みパラメータの総数
Wおよびγwが与えられた元でのγyの分布も同様に
Γyのサンプルとして上式が得られる
上式の直感的解釈
Γyはニューラルネットワークの関数f(x;W)で表現できない誤差を計算している
ガンマ分布の平均はãw/ḃwのため、 ḃwが大きいほど関数f(x:W)によるyの精度は低く、 観測に対する分散が大きくなるように学習される
上述は、簡単のために全ての重みパラメータに関して 共通なハイパーパラメータγwが与えられていると仮定した
ハイパーパラメータをいくつかのグループに分割して与えることもできる
別々のパラメータで層別に考える
5.2 近似ベイズ推論の効率化
はじめに
ベイズニューラルネットワークはパラメータの周辺化に伴う計算量が膨大になる
巨大なネットワークや膨大なデータ量に対しても 近似的なベイズ推論ができるような発展的手法を解説する
ミニバッチを使った効率的な学習のサンプリングや変分推論
5.2.1 確率的勾配ランジュバン動力学法による学習
確率的勾配降下法は、 大規模なニューラルネットワークモデルの 効率学習の実現に最も貢献した手法の一つ
正則化項を追加した最適化やMAP推定などの手法では
パラメータの不確実性を取り扱うことはできない
過剰適合する
不確実性に基づく予測やモデルの評価が行えない
ベイズ推論の分野では
事後分布が微分可能である場合は、 ハミルトニアンモンテカルロ法などの 勾配を利用したサンプリングが最もよく利用される
標準的なマルコフ連鎖モンテカルロ法は大規模なデータに対して計算効率が良くない
計算効率の高い確率的勾配降下法と 不確実性の推定が可能な藍綬版動力学法を 組み合わせることでお高いの弱点を補い合う手法
ミニバッチに基づく学習手法とマルコフ連鎖モンテカルロ法を組み合わせた手法
確率的勾配降下法のアルゴリズムを用いて、 ニューラルネットワークの正則化項付きのコスト関数を最適化する
正則化のMAP推定による解釈を踏まえて、 パラメータの更新をWnew=Wold+∆Wと書くと、 更新幅は上式になる
学習率αiは上式を満たすように設定されている
バッチ学習アルゴリズムであるランジュバン動力学法の サンプル候補を得るためのステップは上式となる
ポテンシャルエネルギーをU=-lip(W|Y,X)
ステップサイズをε=√αi
運動量ベクトルはp〜N(0,1)
ランジュバン動力学法では離散化による誤差を修正するために
メトロポス・ヘイスティングス法による候補点の受容の可否を決める必要がある
学習率αiを小さくすれば受容率を限りなく1までに近づける
最終的にランジュバン動力学法のミニバチ版は上式となる
ここで
アルゴリズムの開始時は確率的勾配降下法の利点を生かして事後分布の空間を効率的に探索する
Tが大きくなるとランジュバン動力学法による真の事後分布からの近似的なサンプルが得られる
5.2.2 確率的変分推論法による学習
変分推定はパラメータの事後分布の近似に利用できるてめ、
ニューラルネットワークに適用される適用事例も多くある
大量のデータを取り扱う深層学習モデルの場合は、従来のバッチ学習では効率的に計算できない
変分推論法と 確率的勾配降下法によるミニバッチを使った スケーラブルな学習法を組み合わせる
ベイズニューラルネットワークの学習を格段に向上させる
𝛏を変分パラメータの集合とし、 ニューラルネットワークのパラメータWの事後分布q(W;𝛏)を近似する
ELBOは上式となる
勾配降下法を利用して 変分パラメータ𝛏={μi,j(l),σi,j(l)}i.j.lに関して最大化する場合
ステップごとの勾配評価のために 一度学習データセットを全て読み込んで計算をする必要がある
深層学習では大量のデータがあるため効率的でない
近似分布は、 簡単のため上式のような独立なガウス分布を仮定する
変分推論法の枠組みでも 確率的勾配法のような ミニバッチを使った 最適化を適用することが望まれる
データセットDから データ数MのミニバッチDs={xn,yn}n∈Sを取り出し、 部分的なELBOを評価することを考える
式
このようなデータセットのサンプリングによって計算されたLsは、 全データを使った場合のLに対する不偏推定量になる
確率的変分推定法では、データ全体の下界L(𝛏)を直接最大化する代わりに
ミニバッチによる下界Ls(𝛏)の最大化することによって
大規模データに対しても効率よくパラメータの事後分布を近似できる
5.2.3 勾配のモンテカルロ近似
はじめに
一般にELBOを最大化するには
パラメータを近似分布q(W)によって完全に積分除去した上で
ELBOを𝛏に関して最大化するのが簡単
ニューラルネットワークの場合は、 ELBOにおけるパラメータWは ガウス分布で解析的に積分除去できない
上式に対して勾配降下法を適用するには、 変分パラメータ𝛏による勾配を計算する必要がある
右式のKLダイバージェンスの項DKL[q(W;𝛏)||p(W)]は、 どちらの分布もガウス分布なので解析的に計算できる
右辺の対数尤度の項∫q(W;𝛏)lnpy(yn|f(xn;W))dWは 解析的に積分を実行できない
モンテカルロ法を使って積分を近似し、勾配の推定を得る
パラメータw∈ℝに関してある関数f(W)と分布q(w;𝛏)を考え、 上式の勾配を評価することが目標となる
以下はI(𝛏)を計算する方法を解説する
5.2.3.1 スコア関数推定
スコア関数推定(score function estimation)と呼ばれる シンプルな勾配の評価式は、上式の関係式を使い 前式を評価する
従って
すなわち上式であることから
分布q(W;𝛏)からwを複数サンプリングしてから 微分を評価することによりI(𝛏)の不偏推定量が得られる
スコア関数推定は、
サンプルを取得する分布の対数inq(w;𝛏)の微分が計算可能であれば利用できる
実用上は非常に高い分散を生じてしまう
効率的なELBOの最大化を行うには 制御変量法(control variates method)といった 分散を減少させるテクニックが必要となる
5.2.3.2 再パラメータ化勾配
次に再パラメータ化勾配(reparametrization gradient)と呼ばれる手法を解説する
基本的なアイデア
Wを変分パラメータ𝛏に依存した分布q(w;𝛏)から直接サンプリングする代わりに
変分パラメータのない分布p(ε)からεをまずサンプリングし
さらにそれを変換w=g(𝛏;ε)を適用することでwのサンプルを得る
従って上式のような勾配の不偏推定量が得られる
具体的に 変分パラメータを𝛏={μ,σ2}とした ガウス分布q(w;𝛏)=N(w|μ,σ2)の例を考える
上式のように定義することで、 平均μ、分散σ2のガウス分布にしたがうwをサンプリングできる
変分パラメータ𝛏=[μ,σ]に関する勾配の微分は上式となる
最終的に上式のような各変分パラメータに対する勾配のふーん推定量が得られる
5.2.3.3 再パラメータ化勾配の一般化
再パラメータ化勾配を使った勾配の推定は、 スコア関数と比べて勾配の分散を小さく抑えられる
利用するには変分パラメータ𝛏に依存しないような変換gが必要になる
このようなケースは多くない
ガンマ分布やベータ分布ではガウス分布のように再パラメータ化を適用できない
改善の手法
変換gに関する制約を緩めることにより 勾配推定をより多くの種類の分布に対して適用できるようにしたもの
変換gによって得られるεの分布に対して q(ε;𝛏)のように𝛏の依存が残ることを許す
陰関数微分(implicit differentiation)を用いることで、 様々な連続値の分布に対して再パラメータ化勾配を適用できるようにしたもの
直接gを求めることが困難
陰関数微分を用いることで ガンマ分布やディリクレ分布、 円周上の確率分布であるフォン・ミューゼス分布8von Mises distribution)といった様々な連続関数に適用できる
再パラメータ化勾配を離散の確率変数に対して適用できるような手法
分布の温度パラメータ(temperature parameter)を0に設定することで 離散分布であるカテゴリ分布と一致させられる
カテゴリ分布を ガンベルソフトマックス分布によって 連続緩和させることで
逆誤差伝搬法をはじめとした勾配ベースの最適化手法が適用できるようになる
5.2.4 勾配近似による変分推論法
再パラメータ化勾配を使ってベイズニューラルネットワークのELBOを最大化する
変分推論においてELBOを最大化することは事後分布の近似精度を上げることに対応する
パラメータの集合Wをεの積分に置き換えると上式になる
ミニバッチ[xn,yn]n∈Sに関するELBOをLs(𝛏)とおき
1回のサンプル値ε〜N(ε|0,I)によって近似すると上式となる
ランダムなミニバッチの抽出と、 ノイズεのサンプリングより右辺はELBOの不偏推定になる
右辺の勾配は上式となる
アルゴリズムは上式となる
5.2.5 期待値伝播法による学習
はじめに
期待値伝搬法を用いたネットワークの学習法
通常のニューラルネットワークの逆伝搬法と 似たようなアイデアで構成される
順伝搬計算ではネットワークを通した確率の伝搬により周辺尤度の評価を行う
逆伝搬ではパラメータを学習するために周辺尤度の勾配計算を行う
確率的逆伝搬法はデータを逐次的に処理できるので、 大量のデータを用いた学習にスケールさせることができる
観測データのばらつきを決める精度パラメータや、 重みの事前分布を支配する精度パラメータなどにこの枠組みで近似推論できる
5.2.5.1 モデル
1次元のラベルyn∈ℝの予測を考え、 尤度関数を上式のように定義する
ニューラルネットワークf(xn;W)の活性化関数には 正規化線形関数を用いる
観測の精度パラメータγyは 上式のようなガンマ事前分布により生成されるとする
パラメータWは独立なガウス分布(上式)に従っているとする
重みの精度パラメータγwにもガンマ事前分布を仮定する
このモデルの学習の目的は事後分布(上式)を近似推論することになる
5.2.5.2 近似分布
確率的逆伝搬法のアイデアは 期待値伝搬法の一種である仮定密度フィルタリングに基づいている
パラメータの近似分布を上式のようにおく
計算効率化のために、事前分布と同じ種類の分布を近似分布として選択する
仮定密度フィルタリングにおけるモーメントマッチングを使って逐次的に更新される
5.2.5.3 初期化と事前分布因子の導入
学習の初期ステップでは
前式の分布が無情報となるように初期化する
Mi,j=0
vij=∞
αγy=1
βγy=0
αγw=0
βγw=0
上式の事後分布の因子を1つ1つ追加することにより近似分布を更新する
更新後の近似分布のパラメータは上式になる
ここで
q(γw)のガンマ分布の更新もモーメントマッチングの結果を用いて上式となる
Z(αγw,βγw)は厳格に求めることができないので近似を行う
5.2.5.4 尤度因子の導入
事前分布の各因子が追加された後は、 上式の尤度の因子を1つずつ追加していく
重みの近似分布q(W)および 観測の精度パラメータの近似分布q(ガンマy)を 更新していく
ガウス分布およびガウス分布を利用したモーメントマッチングの更新式を利用する
xxx
5.2.5.5 活性の分布
続いて活性a(l)の分布を計算する
中心極限定理(central limit theorem)から、
各層における隠れユニットが大きい場合、a(l)は近似的にガウス分布に従う
a(l)の分布をガウス分布と仮定する
一般にガウス分布に従うとした変数が世紀か線形関数を通った後は、 上図のような2つの分布の混合分布になる
xxx
5.2.5.6 勾配に基づく学習
最後に、最下層の出力z(0)は平均xj,分散0として扱う
前述の結果を再帰的に用いて、最終的なz(l)の分布をガウス分布で近似する
正規化定数Zの近似表現が得られた後は、 通常の誤差伝搬法と同様に、 パラメータによる微分部勾配が計算できる
5.2.5.7 関連手法
確率的逆伝搬法と似た手法
ELBOの最大化に基づく決定的変分推論法(deterministic variational inference method)がある
期待値の近侍計算を決定的に行う
5.3 ベイズ推論と確率的正則化
はじめに
ニューラルネットワークの学習には様々な正則か手法が使われる
ニューラルネットワークの大規模学習に 劇的な性能向上をもたらしたドロップアウトやバッチ正則化手法
変分ベイズ学習の一例として解釈できる
5.3.1 “モンテカルロドロップアウトの概要とアルゴリズム及び実装例について“で述べているモンテカルロドロップアウト
はじめに
ドロップアウト(dropout)はニューラルネットワークの過剰適合を防ぐテクニックとして使われている
まず、例として2層のネットワークで説明する
5.3.1.1 ドロップアウトと変分推定法の関係
深層学習のモデルで頻繁に使用されているドロップアウトの多定式化を行う
入力xn∈ℝH0および中間層zn∈ℝH1に対する2層のマスクのベクトルを それぞれṁ(1)∈{0,1}H0およびṁ(2)∈{0,1}H1とする
各マスクの要素ṁi(l)は、 ネットワークの順伝搬時に ベルヌーイ分布に従って決定される
γ1∈(0,1)は1層目のマスクの値が0になる確率を決める設定値
最下層では、まず入力xnを上式とすることで入力の一部が0にされる
⦿はベクトルの要素ごとの積の演算
ドロップアウトされた入力xnを用いれば、次の中間層は上式となる
Φ.は要素ごとに計算される任意の活性化関数
znに対してドロップアウトを適用すると上式となる
最後はドロップアウトされたźnを使って上式のように決定される
出力ãnは上式となる
diagm(x)はベクトルxの各要素を対角成分にもつ行列を返す演算
ドロップアウトを使った場合のデータ数Mのミニバッチのコスト関数は、 正則化項も考慮すれば上式となる
コスト関数は上式となる
誤差関数の代わりに精度γをもつ尤度関数(上式)を導入
変数変換gを上式として導入
パラメータWに関する勾配は上式となる
xxx
ドロップアウトまとめ
変分推論法においてパラメータの近似事後分布をq(Wm;W)とし
(5.74)によるノイズのサンプリングと、(5.84)による変数変換を使った再パラメータ化勾配を行い
5.74
5.84
(5.85)におけるミニバッチの変分エネルギーの最小化(あるいはELBOの最大化)を行っている
5.3.1.2 ドロップアウトを使った予測分布の近似
ドロップアウトが変分ベイズの一例である事実を利用することによって
ドロップアウトを使っている深層ニューラルネットワークの 実装は全てベイズ的な予測も行える
近似予測分布を上式とする
この予測分布の平均値は上式となる
予測分布の共分散も同様に上式となる
5.3.2 その他の確率的正則化手法との関係
はじめに
バッチ正則化や確率勾配降下法などの統計的正則化法と、近似ベイズ推論との関係性を紹介する
5.3.2.1 バッチ正則化のベイズ的解釈
バッチ正則化に関しても変分推論法とのつながりが指摘されている
バッチ正則化が暗に事後分布の近似を行っていると解釈すると
バッチ正則化が実装されたニューラルモデルに対して 簡単な修正を行うだけで不確実性を伴った予測を実行させることができる
バッチ正則化ではミニバッチをランダムに選択することによって学習にノイズがせ混入される
5.3.2.2 統計的勾配降下法のベイズ的解釈
確率的勾配降下法 (stochastic gradient descent method)
大規模なデータを効率的に学習するための必須の技術
近似ベイズ推論との関連性も指摘されている
ランダム性を加えることにより過剰適合するようなパラメータに収束することを回避する
サンプリングアルゴリズムとしての確率的マルコフ連鎖モンテカルロ法と、 最適化手法としての確率的勾配降下法には類似性がある
学習率を一定とした確率的勾配降下法は、 探索の初期段階では目的関数の局所最適解に向かう
一度到達するとその近傍を跳ね回るようにして動く
確率微分方程式 (stochastic differential equation)
5.4 不確実性の推定を使った応用
5.4.1 画像認識
畳み込みニューラルネットワークに モンテカルロドロップアウトを用いることにより 不確実性の伴った予測を可能にする
画像データの深度推定
画像データのセグメンテーション
不確実性を、 観測データのノイズに由来するものと、 学習データの不足に由来するものの2つにわける
ノイズに由来する不確実性はデータを増やしても変わらない
観測分布の分散パラメータ
学習データの不足に由来する不確実性
パラメータの事後分布の広がり
学習データに含まれないオブジェクトが画像中に存在すると不確実性が大きくなる
尤度関数にガウス分布を選び、畳み込みニューラルネットワークf xn;W)によって、各ピクセルに対する深度の予測値ynとそれに伴う分散vnを同時に決定する
モデル
モンテカルロドロップアウトを使った予測分布の分散は、サンプルサイズをTとすると
5.4.2 系列データ
再帰型ニューラルネットもデータに対して過剰に適合してしまう傾向がある
ドロップアウトによる確率的正規化が行われる
隠れユニットをランダムに無効にすると、 再起的な処理の過程で伝達されるべき情報が消えてしまう
モンテカルロドロップアウトにより過剰適合を防ぎつつ、 再帰的な処理の中で情報を消さずに学習が可能になる
再帰型ニューラルネットに近似ベイズ推論を適用することによって
自然言語処理における言語モデルを構築する
確率的勾配ランジュバン動力学法やモンテカルロドロップアウトを使うことで、過剰適合を防げる
画像データに対する説明文付与
学習過程で得られたパラメータのサンプルを使って説明文を生成している
サンプルされたパラメータごとに異なる画像の解釈を与えることができる
ある画像データがモデルによって複数通りに解釈が可能
パラメータの事後分布がそれらの違いを多峰な分布として表現敷いてる
5.4.3 能動学習
画像学習の世界では、学習のために大量のラベル付きデータを用意する必要がある
ベイズニューラルネットワークモデルは能動学習(active learning)にも利用される
転移学習(transfer learning)
半教師あり学習(semi-supervised learning)
畳み込みニューラルネットワークと 近似ベイズ推論を組み合わせた 能動学習を行うことにより
画像などの高次元データに対して効率的に学習を行う
得られた少数の学習データを元に、 入力データのサンプルから予測の不確実性が大きくなるものを選択し、 アノテーターに対して正解ラベルをリクエストする
MNISTデータせっとの手書き文字認識や、皮膚がん画像のデータセットに対する分類課題において
5.4.4 強化学習
不確実性を伴った予測は強化学習(reinforcement learning)への応用においても重要
非常にシンプルな強化学習の課題の一つ
ベイズ推論で得られる予測の不確実性の応用方法
バンディッド問題の難しい点
単純に現在の報酬の期待値が大きくなるような行動を選択し続けると、 より大きな褒賞が得られる可能性のある行動を見過ごす
探索(exploration)と活用(exploitation)のトレードオフ
予測の不確実性を利用した探索アルゴリズム
学習の状態に応じて探索と活用の選択をうまく調整する
重み付きパラメータWを持つ順伝搬ニューラルネットワークなどの予測モデルを p(r|x,a,W)とするとトンプソンサンプリングを使ったアルゴリズムは上式になる
探索の初期では学習データが少ないので、 近似分布q(W)は事前分布p(W)に近い形となる
行動の選択は事前分布に基づく広範囲なものとなる
データが収集されていくにつれ、 近似事後分布q(W)はある値Wに集中していく
期待報酬の高い行動を優先的にとるようになる
学習の状況に応じて探索から活用に自然にシフトする
バンディッド問題は通常は、リグレット(regret)と呼ばれる、 理想的な行動をした場合との得られる報酬の差分によって定量評価される
予測の不確実性を利用したトンプソンサンプリングの方が、貪慾法(greedy method)をベースとして手法に比べて、より小さなリグレットの積算値を得る
第6章 深層生成モデル
はじめに
教師なし学習の設定においてニューラルネットワークのような非線形の構造を持ったモデルの学習を行う
観測データに対する低次元の 部分空間による表現を獲得することによって、
データの圧縮や特徴量の抽出、欠損値の補間などが行える
教師なし学習に用いられるモデル
ニューラルネットワークのように 複数の非線形な層を重ねて構築されたモデル
潜在変数(latent variable)または 局所パラメータ(local parameter) と呼ばれる大量の非観測の変数が存在する
近似推論を効率化させるための償却推論(amortized inference)や変分モデル(variable model)といった計算テクにっマモ能わせて紹介
潜在変数の推論だけではなく、 ネットワークの構造自体を学習するような ノンパラメトリックベイズ(nonparametrics Bayes ) あるいはベイジアンノンパラメトリクスについて解説する
6.1 変分自己符号化器
はじめに
変分自己符号化器(variable auto encoder, VAE)は、 線形次元削減モデルに、 ニョーラルネットワークによる非線形変換を導入した教師なしモデル
画像データなどに適用
6.1.1 生成ネットワークと推論ネットワーク
はじめに
変分自己符号化器の基本的な構成と学習方法に関して解説する
6.1.1.1 モデルと近似分布
観測データX=[x1,…,xN]は上式のような ベイズニューラルネットワークの出力 によって生成されると仮定する
f(zn;W)は順伝搬型ニューラルネットワーク
Zn:ニューラルネットワークの入力ベクトル。 ガウス分布に従って生成されると 仮定した未観測の潜在変数として扱う
W:ニューラルネットワークの重みパラメータ
独立なガウス分布で生成
データの潜在表現znから観測データxnを生成する
線形次元削減モデルと同様に、 学習の目的は 上式の潜在変数とパラメータの事後分布を求めること
変分推論で事後分布を求める
近似分布q(Z,W)を設計し、 KLダイバージェンス(上式)を最小化することが学習の目的
近似分布q(Z,W)の設計は?
シンプルな方法は 平均場近似を用いてZおよびWの近似分布を分割する(上式)
Ψおよび𝛏は変分パラメータの集合
パラメータWの近似分布は計算のしやすいガウス分布を選択
対応する変分パラメータ(平均および分散)の集合を𝛏={mi,j(l),vi,j(l)}とする
潜在変数Zの近似分布に対してもガウス分布を用いた平均場近似を用いる
自己符号化器ではmnおよびvnをxnを入力としたニューラルネットワークの出力として捉える
近似分布の変分パラメータを回帰するようなニューラルネットワーク
推論ネットワークを使った近似分布q(Z;Z,Ψ)では
最適化の対象は変分パラメータmnやvnではない
最適化のパラメータは推論ネットワークのΨとなる
推論ネットワークは各観測データxnからデータの潜在表現znへのマッピングを学習する
なぜ潜在変数の推論計算に回帰モデルを使うのか?
ニューラルネットワークによる非線形変換のために、変分EステップでZに対する解析的な更新式を得られない
一つの潜在変数の近似分布の更新だけでも変分パラメータによる勾配降下法を使った最適化が必要
各近似分布q(z1),…q(zN)の変分パラメータを個別に更新するのではなく、 複数の近似分布q(z1;x1,Ψ),…,q(zN;xN,Ψ)の間で共有されている 変分パラメータΨによってまとめて更新することで計算効率を改善
言い換えると
あるデータ点xjを受け取ってq(zj;zj,Ψ)を更新することが
他の∏j≠iq(zj;xj,Ψ)に対して影響を及ぼす
ニューラルネットワークのような回帰モデルによって データXから潜在変数Zの事後分布を”予測しながら"推論していく手法
変分自己符号化器以前にもヘルもホルツマシン(Helmholtz machine)と呼ばれる生成モデルに利用されている
6.1.1.2 変分推論による学習
最小化したいKLダイバージェンスの変形
対数周辺尤度と事後分布のKLダイバージェンスの差分を上式とおくと
L(φ,𝛏)は対数周辺尤度inp(X)の下界となる
上式の最小化と下界L(Φ,𝛏)の最大化は等価
学習データが大量に存在すると想定
確率的勾配降下法を用いる
N個のデータを含むDからM個のランダムにインデックスSを取り出してミニバッチを構成する
ミニバッチのELBOは上式となる
パラメータWの近似事後分布q(W;𝛏)の 確率的勾配降下法による更新を考える
生成ネットワークf(zn;W)の学習に対応
𝛏に対する勾配は
期待値をq(zn;xn,Ψ)およびq(W;𝛏)の両方に関して取る必要がある
前者に対する期待値はq(zn;zn,Ψ)から単純モンテカルロ法でサンプルを取ることで近似する
再パラメータ化勾配を使ってパラメータ近似分布q(W;𝛏)を最適化
潜在変数Zの近似事後分布q(Z;X,Ψ)の 確率的勾配降下法による更新を考える
推論ネットワークf(xn;Ψ)の学習に対応する
変分パラメータΨによる勾配は
単純にWをq(W;𝛏)からサンプリングすることでq(W;𝛏)に関する期待値を計算する
再パラメータ化勾配を使って各znをサンプリング
変分パラメータΨに関する勾配を求めればΨを更新できる
変分自己符号化器のアルゴリズム
変分自己符号化器にMNISTの手書き画像データを与えて、潜在空間を学習させた者
各文字xは、 座標ごとの潜在変数の値(z1,z2)Tを 学習済みの生成モデルに与えて生成したもの
6.1.2 半教師あり学習モデル
はじめに
生成モデルを活用すれば、 入力データのうち一部ラベルが存在していないような 半教師あり学習(semiーsupervised learning)のモデルを自然に得られる
前提条件
入力データ(画像など)の集合をXとする
対応するカテゴリデータ画像のデータなど)の集合をYとする
ラベル付きのデータのインデックスをAとし、DA={XA,YA}とおく
ラベルなしのデータのインデックスをUとし、Du=XUとおく
Xuに対するラベル集合は、学習データとして保有していないとする
6.1.2.1 M1モデル
変分自己符号化器を使った最も単純な半教師あり学習は、 以下のステップで実現できる
全入力データ{XA,XU}を用いて 変分自己符号化器のエンコーダおよびデコーダを学習させる
ラベルのある入力データXAに対する潜在変数の期待値𝔼[ZA]を特徴量入力とし
何らかの教師あり学習の手法を用いてラベルYAを予測するパラメータを学習する
通常の変分自己符号化器の解析結果をそのまま利用した半教師あり学習
ラベルの存在するXAだけでなく、大量のラベルなしのXUを用いることで
データの特徴的な性質がZの空間で得られることを期待する手法
6.1.2.2 M2モデル
M1モデルの欠点
変分自己符号化器で教師なし学習を行う過程でラベルデータYAを活用できていない
特徴量抽出の段階でラベルデータYAの情報が与えられていないと、本来予測に必要な特徴が元の入力データXから失われてしまう可能性がある
全てのパラメータを入れたグラフィカルモデル
このモデルの同時分布(生成ネットワーク)は上式となる
上式による半教師あり学習の枠組み
変分推論で用いる近似事後分布を上式と設計する
π(xn;φ)はYUの分布を近似するために新しく用意した推論ネットワーク
変分パラメータは全てΦでまとめて表示する
パラメータの事前分布p(W)および近似事後分布q(W;𝛏)はガウス分布とする
以上の設計のもとで、真の事後分布と近似分布のKLダイバージェンスを計算する
ただし
xxx
M2モデルによって得られる潜在変数の学習結果を図示したもの
一番左の列はテストに与えられた画像
以降は生成モデルによって生成された画像
テスト画像から推定された潜在変数が、 各ラベルの文字の書体を表現として持つ
6.1.3 応用と拡張
はじめに
変分自己符号化器は確率的な生成モデルに基づいている
他の確率モデルやドメイン知識の活用分野と組み合わせやすい
応用良識は、画像だでなく、推薦園児な、イキスト解析、対話応答システム、分子構造の探索などにも使われる
6.1.3.1 モデルの拡張
変分自己符号化器に対して 再帰型ニューラルネットワークの構造と アテンション(attention)の機能を導入した画像生成モデル
再帰型ニューラルネットワークを使って空間的な注視領域の遷移を行う
DRAWでは部分的に画像を書き換えていくことで再構成
変分自己符号化器では画像の良識全体を一度に再構成
変分自己符号化器と 畳み込みニューラルネットワークを 組み合わせたモデルの提案
畳み込み層を推論ネットワークに、逆畳み込み層を生成ネットワークに取り入れる
63
さらに再帰ニューラルネットワークを導入して潜在空間を共有
94
半教師あり学習の枠組みを利用して
6.1.3.2 重要度重み付け自己符号化器
変分自己符号化器の理論的拡張
変分自己符号化器の構造自体は同じものを使う
ELBOよりも厳密に大きな下界を最大化する
推論ネットワークから T個のサンプリングされた潜在変数り値を使うことによって、 上式のような新しい下界を最大化する
変分自己符号化器では、 推論ネットワークを用いることで 効率的に潜在変数の事後分布を近似的に求める
事後分布の近似能力は非常に制限されたものになる
6.2 変分モデル
はじめに
変分推論では、 事後分布qに対してどのような分布のクラスを設計するかが アルゴリズムの性能を左右する
以下の点が重要になる
①qを使った期待値計算やサンプリングが行いやすくなっていること
②qがKLダイバージェンスなどの指標のもとで最適化しやすくなっていること
③qが複雑な真の事後分布を精度よく近似できるような柔軟さを持っていること
平均場近似では指数型分布属などの特製のよく知られた分布を近似として用いる
要件①と②は満たす
要件③の観点では近似能力が低くなる
自己符号化器においても
要件③の観点では近似能力が低くなる
変分推論法の近似分布qに使用する確率モデル
要件③を満たす変分モデル
正規化流(normalizing flow)を用いた手法
階層変分モデル(hierarchical variational model)
変分推論法をより自由度の高いモデルや近似分布が取り扱えるように拡張したモデル
6.2.1 正規化流
はじめに
平均場近似に基づく変分自己符号化器の問題点
近似分布に対角ガウス分布などの単純な分布を仮定していること
潜在変数の真の事後分布は単純なガウス分布では表現できないような複雑なものになる
正規化流(normalizing flow)
ガウス分布などの簡単な確率分布からのサンプルz0に対して、 複数回の可逆かつ微分可能な関数f1,…,fxによる交換を適用することで、 より複雑な分布からのサンプルを得る方法
6.2.1.1 可逆な関数による変換
正規化流は確率密度関数の変換に基づく
可逆で連続な関数f:ℝD→ℝDを考える
この変換ź=f(z)を用いて、 確率密度関数q(z)に関してq(ź)は上式となる
上式はヤコビ行列
det(*)は行列式
このような変換をz0からK回適用する
最終的な確率変数zkの確率密度は上式となる
6.2.1.2 変換の例
具体的な関数fの例
平面流(planer flow)
h:微分可能な非線形関数
λ:変換を決めるパラメータ
ELBOを最大化するように決定される
平面流によって得られる分布の密度計算に必要なヤコビ行列は上式となる
上式をz0に関して適用すると
超平面wTz+b=0に垂直な方向に収縮と拡大を繰り返す
平面流によるサンプルの例
放射状流(radial flow)
放射状流のヤコビ行列
放射状流によるサンプルの例
6.2.1.3 変分推論への適用
正則化流は変分推論法と組み合わせることで、 単純な平均場近似による推論よりも はるかに精度の高い事後分布の近似を得られる
あるデーに対するELBOは
正規化流を自己符号化器などに元いられている 推論ネットワークに適用するには
初期分布として上記とした上で正規化流による変換を適用する
6.2.1.4 スタイン変分勾配降下法
正規化流の他の逐次的な変数変換を利用した変分推論ほ
再正核ヒルベルト空間(reproducing kernel Hilbert space)場での汎関数びぶんを利用した購買降下法を適用する
真の自己分布に対するKLダイバージェンスを最小化する
行列式や逆行列の計算が不要
6.2.2 階層変分モデル
はじめに
近似分布を階層化することで、複雑な近似分布を表現する
6.2.2.1 近似分布のモデル
通常の平均場近似を用いた潜在変数Z={z1,…,zM}の近似分布qMFは、 λを変分パラメータの集合とすれば上式で表せる
M個の潜在変数z1,…,zMには独立性が仮定されている
階層分布モデルによる近似分布qHVCは上式により、 近似分布を階層化する
変分パラメータλに対して変分事前分布(variable prior)と呼ばれる分布q(λ;𝛏)が与えられている
q(zm|λm)は変分尤度(variable likelihood)と呼べる
Λに関して周辺化することで、近似分布はある種の混合分布になる
変分事前分布に2次元のガウス分布、 変分尤度ににポアソン分布を使った場合の変分モデルの例
(A.1)では独立なガウス分布を使うことによりλ1,λ2が生成される
結果として(a.2)の潜在変数z1,z2も独立になる
(B.1)は強い相関を持つガウス分布によってλ1,λ2を生成
(B.2)の潜在変数は複雑な関係性を持つ
従来の変分パラメータの生成に独立でない分布を仮定することで、複雑な潜在変数の相関を捉える
階層変分モデルは、新しく導入された変分ハイパーパラメータ(variable hyperparameter)𝛏に関してELBOを最大化する
6.2.2.2 変分事前分布の例
有用な変分モデルを紹介
Kを混合要素数、πをK次元のカテゴリ分布のパラメータ、 𝛏={μk,Σk}k=1KをM次元ガウス分布のパラメータの集合とすると
混合モデルを変分事前分布として利用すると、λ1とλ2の間で2つの異なる相関(性の相関とと負の相関)を表せる
事前分布に正規化流を使うこともできる
変分モデルとしてガウス過程を使うこともできる
式
モデルの設計に依存したアルゴリズム導出を必要としない手法
6.2.3 非明示的モデルと尤度なし変分推論法
はじめに
指数型分布族をはじめとした確率分布は、 組み合わせて使用することで多彩なデータの生成過程をモデリングできる
密度を計算することはできないものの、出たーの生成は行えるモデル
近似ベイズ計算(approximate Bayesian computation, ABC)
データ生成のシミュレーション
生成モデルや近似分布が非明示的モデルとして構成されている場合の手法
“GANの概要と様々な応用および実装例について“で述べている敵対的生成ネットワーク(generative adversarial network, GAN)でも利用される
コイン投げの例でのベイズ推論を用いた例
コインの面を決定する確率としてベルヌーイ分布を用いる
ベルヌーイ分布のパラメータに関しては、今日やくじぜんぶんぷであるベータ分布を用いる
事後分布は事前分布と同じベルヌーイ分布となる
実際のコイン投げの現象では
投げる前のコインの初期状態(投げ出される角度や速さなど)から 決定される物理的な過程を通じて決まる
初期状態に対する不確実性、 あるいは情報の不足により、 最終的な見積もりに不確実性が伴う
現実に近い物理モデルをシミュレータとして記述できれば、 極端に単純化されたベータ・ベルヌーイモデルよりも 優れたデータの生成過程になる
6.2.3.1 非明示的モデル
潜在変数Zと、 全てのデータで共有されるパラメータの集合θで 構成されるような観測データXの階層的な生成モデルを考える
密度関数p(xn|zDP,θ)は明治的に定義されていない
潜在変数znおよびパラメータθが与えられた元での データxnの生成手段だけを持っている
ある関数gとノイズε〜p(ε)によって上手のようにznが生成されているとする
尤度は上式となる
6.2.3.2 尤度なし変分推論法
前式の非明示モデルの事後分布は上式となる
解析的に計算できないため、変分法の枠組みで事後分布を近似する
過程する近似分布も表現力の高いものが望まれる
尤度なし変分推論法では、 近似分布に過程する制約を緩め、 より広いクラスの近似分布を設定できるようにする
潜在変数の近似分布に対しても変分パラメータをφとした非明示的な分布を過程する
各潜在変数znは、変 分パラメータΦを持つ分布から 上式のようにサンプルは簡単に得ることができる
変分尤度(上式)の値は必ずしも計算できなくても良いとする
明示的な密度関数をもたず、 サンプルznを得られることだけを利用して変分推定を実行できるようにする
非明示的な変分尤度と、 変分パラメータ𝛏を持つθの近似分布q𝛏(θ)を用いて、 近似分布全体を上式とする
変分事前分布q𝛏(θ)は、θのサンプリングも密度計算も容易に実行できるガウス分布とする
前式より対数周辺尤度の下界は上式となる
p(xn,zn|θ)およびqΦ(zn|zn,θ)が元に密度の計算ができない非明治的な分布になる
解決するために、データの経験分布qD(xn)を利用する
前式の下界に-lnqD(xn)を加えると常識になる
尤度なし変分推論では、前式に現れる密度比(density ratio)の対数(上式)を直接推定することにより下界の計算を行う
密度比推定器r(xn,zn,θ;η)の選択としては、 例えばηをパラメータとした 微分可能なニューラルネットワークなどの回帰モデルを利用する
密度比推定器rの学習には様々な方法が考えられる
例として
適性スコア規則(proper scoring rule)に基づいた損失関数を使う(上式)
シグモイド関数Sig(r(xn,zn,θ;η))が分布pからのサンプルに対して1を返し
かつ分布q空のサンプルに対して0を返すとき
前式は最小値まゅηょ| をとる
密度比推定器r(xn,zn,θ;η)の学習は、xnおよびznのサンプルのみを使い、前式のηに関するフッチボール料を得ることにより行える
以上より最大化する目的関数は上式となる
密度比が微分可能な関数r(xn,zn,θ;η)に置き換わっている
再パラメータ化勾配を使ってznおよびθをサンプリングし、 変分パラメータφおよびηに関する勾配の近似ちが求められる
以上より尤度なし変分推定アルゴリズムは上式となる
6.3 生成ネットワークの構造学習
はじめに
深層学習モデルの学習の困難性の一つ
多くのモデルではネットワークの構造をあらかじめ決める必要がある
性能の良い構造を発見するには膨大な試行錯誤を要する
無限の列数を持つバイナリ行列を生成する確率モデル
データから有効グラフの構造を推定する
ネットワークの重みやバイアス、 潜在変数だけでなく、 ネットワークの幅や深さもベイズ推論の枠組みで同時学習できる
6.3.1 インド料理過程
はじめに
インド料理点過程を用いれば、列数に上限が存在しないような行列の生成モデルが構築できる
これを利用して主成分分析や因子分解といった次元削減モデルの潜在変数の次元などの自動決定もできる
6.3.1.1 無限行列の生成
サイズがNxHのバイナリ行列Mを考える
H→∞となる場合のMの生成過程を構築する
前提条件
各要素mn,h∈{0,1}はベルヌーイ分布Bern(πh)から生成されているとする
α>0およびβ>0をハイパーパラメータとする
パラメータπhが ベータ分布Beta(α β/H,β)から生成されているとする
行列Mの分布は上式となる
ただし
列数をH→∞とすると、 p(M)→0となる(全てのバイナリ行列の生成確率は0)
Mの値を並び替えることにより同じになるような行列の同値類を[M]とおく
p([M])に関してH→∞とおくと行列Mの分布は上式となる
HiはZ中のあるバイナリ列iの個数
h+はNh>0となるような列hの個数
上式はH+の期待値
右式はMの行を交換しても確率が変わらない
上式で表されるような無限列を持つバイナリ行列の生成は、 次のようなインド料理生成過程(Indian buffet process)と呼ばれる手続きで行える
最初に料理店に来客した客は、 上式で定義されるポアソン分布Poi(アルファ)に従って料理をとる
N番目に来た客は、 確率Nh/(n+β-1)に従って各料理hをとり、 最後にPoi(αβ/(n+β-1)に従って新しい料理をとる
生成されるバイナリ行列M∈{0,1}Nx∞は次のような特性がある
客一人当たりの料理の数はPoi(α)に従う
取られる料理の総数の期待値はNα
客にとられる料理の総数の種類は上式
Limβ→0H+=α(客全員が同じ料理を選ぶ)
limβ→∞H+=Nα(客同士が同じ料理を選ばなくなる)
ハイパーパラメータαおよびβを飼うた場合のN=20のバイナリ行列のサンプル例
6.3.1.2 ギブスサンプリング
インド料理点過程を使って無限の潜在変数を持つように生成モデルを構築する
例
データXを 無限次元のパラメータθと バイナリ行列Mによって 上式のようにモデル化したとする
Θがp(X|M)=∫p(X|M,θ)p(θ)dθ)のように 解析的に積分除去できると仮定する
ギブスサンプリングを使って事後分布p(M|X)から各mn,hを上式のようにサンプリングできる
6.3.2 無限のニューラルネットワークモデル
はじめに
非線形ガウス信念ネットワークと呼ばれる生成モデルを使って多層の深層ネットワークを構成する
さらにインド料理過程を繰り返して、無限のネットワークを構成する
6.3.2.1 非線形ガウス信念ネットワーク
まず、有限個のL層を持つネットワークを考える
前提条件
各I層のユニット数をHIとする
レイヤーl上のh番目のユニットをzh(l)とおく
M(I)はサイズがHl-1xHIのバイナリ行列
I層目の活性を上式とする
活性αh(l)には常識のようにガウス分布からのノイズが加わっているものとする
zh(l)の分布は上式となる
隠れユニットzh(l)は、双曲線正接関数Φ(*)=Tanh(*)によって上式と変換されているとする
非線形変換のサンプル
精度が低いと2値的(a)
精度が高いと決定的(c)
モデル全体の同時分布
6.3.2.2 直列インド料理過程
前述のネットワークモデルの無限版をインド料理過程を使って構築する
各層のユニット数に上限がなく深さにも上限がないネットワークの生成
生成されたバイナリ列とネットワーク構造
直列インド料理過程で構成されるネットワークも マルコフ連鎖モンテカルロ法で近似的に推論できる
以下の3つのブロックに分けて ギブズサンプリングによる交互サンプリングを行う
隠れユニットの集合Z
バイナリ行列の集合M
パラメータの集合[W,b,γ]
6.4 その他の深層生成モデル
はじめに
確率論と関わりのあるモデルを紹介
6.4.1 深層指数型分布族
はじめに
指数型分布族を階層的に組み合わせねことによって構成される潜在変数モデル
従来の潜在変数モデルを何層も重ねることにより 複雑なデータに対する解釈性や予測性能を工場させる
ジグモイド信念ネットワーク(sigmoid believe network)や”非負値行列因子分解(NMF)の概要とアルゴリズム及び実装例について“で述べている非負値行列因子分解(nonnegative matrix factorization)、変分自己符号化器の一般化になっている
6.4.1.1 モデル
深層指数型分布族では、 上記のような指数型分布族pEFが 各層の基本パーツになっている
入力データ集合をX、潜在変数集合をZ、重みパラメータ集合をW={W(1),…,W(L)とすれば、 L層の深層指数型分布族は上記のような同時分布になる
グラフィカルモデル
最上位の層では、HL次元ベクトルの潜在変数zn(L)は上式のような事前分布から生成される
自然パラメータηはモデルのハイパーパラメータになる
以降の層では、一つ上の層の潜在変数zn(l+1)と重みパラメータテュリれぬょ、非線形変換g(l)(/ )を用いて常識のzn(l)が生成される
6.4.1.2 具体的な例
深層指数型分布族を構成する各確率分布を具体的に選ぶことで、様々なモデルを定義できる
シグモイド信念ネットワーク
深層指数型分布族では、このモデルはベルヌーイ分布に従う潜在ユニットと、ガウス分布に従う重みによって身構成される
深層指数型分布族を複数組み合わせることにより、 線形次元削減などの行列分解モデルも深層化できる
例えば観測データxnに対して、尤度関数を常識のように定義する
行列分解の手法は商品の推薦アルゴリズムなどに用いられるが
深層化された行列分解モデルによって
購買者と商品のそれぞれの特徴に対して階層的な表現を得られる
6.4.1.3 事後分布の推論
深層指数型分布族は、事後分布の算出に解析的な計算を行えないため
平均場近似による事後分布の近似
潜在変数の近似分布は生成モデルで設定した分布と同じ指数型分布族を用いる
より複雑なモデルには変分モデルの適用
またデータ数が多いときは、ミニバッチを用いた確率的変分推論によりELBOを最適化する
6.4.2 ボルツマンマシン
ボルツマンマシン(Boltzman machine)は D次元の2値のベクトルx∈[0,1]D上の 任意の確率分布を学習させるために提案された手法
標準的なボルツマンマシンでは 上式のようなエネルギー関数(energy function)を使ったデータの同時分布を考える
Zは確率分布が1に正規化されるための定数
ボルツマンマシンではエネルギー関数は上式となる
U,bはそれぞれ重みとバイアスのパラメータ
エネルギー関数上式に変形される
通常、確率変数xは可視ユニット(visible unit)vと隠れユニット(hidden unit)に分解される
制約付きボルツマンマシン(restricted Boltzman machine)は、深層学習でよく使われる確率モデル
エネルギー関数は上式となる
対応するグラフィカルモデルは 上図のような二部グラフ(biparate graph)になる
制約付きボルツマンマシンでは同じユニット間の接続が存在しない
制約付きボルツマンマシンの隔離ユニットの層を複数重ねたもの
グラフィカルモデル
2層の隠れ層を持つ深層ボルツマンマシンのエネルギー関数は上式となる
平均場近似を使うと上式に近似できる
学習はKLダイバージェンスを最小化することで行える
6.4.3 敵対的生成ネットワーク
微分可能なネットワークを利用した生成モデルの学習法の一つ
生成ネットワークgと識別ネットワークdを 互いに競わせながら学習する
生成ネットワークgはノイズzとパラメータθgにより仮想的なデータx=g(z;θγ)を生成する
識別ネットワークdはデータxに対してそれが本物である確率d(x;θd)を出力する
代表的な学習手段では常識のようなゼロサムゲームに基づいてgおよびdを最適化させる
qD(x)はデータの経験分布
直感的には
識別ネットワークdは上式の第一項の最大化により 学習データからのデータが本物であると判定する確率を 最大化するように学習する
さらに第二項により 生成ネットワークgからの生成されたデータを 偽物であると判定する確率1-d((g(z))も同時に最大化する
学習が収束する頃には、 生成ネットワークgの生成したデータが 識別ネットワークdにとって見分けがつかない(確率が0.5になる)
敵対的生成ネットワークの利点
最適化の過程で変分自己符号化器のような潜在変数の近似推論が必要ない
尤度関数が定義されていなくても利用できる
敵対的生成ネットワークの欠点
安定性が低い
生成ネット区が特定のデータしか生成せず、多様性を失う
第7章 深層学習とガウス過程
はじめに
ノンパラメトリックベイズモデルであるガウス過程を紹介
さらに無限数の隠れユニットを持つ多層の順伝搬型ニューラルネットワークが ガウス過程と等価になることを示す
深層学習モデルをがうす家庭として解釈することで
数学的により単純な解釈が可能になる
深層学習の問題点とされた過剰適合の防止や、 予測に対する不確実性の評価も行えるようになる
ガウス過程を利用する際の最大の問題点
計算コスト
変分推論などの近似アルゴリズムを使って、 深層学習と同様に大規模データを効率的に学習する方法を紹介する
ガウス過程を使った教師なし学習モデル
さらにそれらを階層的に組み合わせた
7.1 ガウス過程の基礎
はじめに
ベイズ線形回帰モデルのカーネル表現を用いることでガウス過程を扱う動機付けを行う
ガウス過程を設計する上で最も重要となる共分散関数の構築方法や、 周辺尤度を用いたモデル選択やパラメータの最適化手法について解説する
7.1.1 関数空間上での確率分布
ベイズ線形回帰モデルでは
パラメータwに事前分布を与え
基底関数の重み付き和によって表現される関数を確率的に生成する
ガウス過程では
関数空間上の事前分布を直接定義し
データを観測した後の事後分布や予測分布などの 推論計算も関数空間上で直接行われる
機械学習の文脈でのガウス過程の定義
ある確率変数の集合をFとする
任意の自然数Nに対して、Fから選んだN個の確率変数{f(x1),…,f(xN)}がガウス分布に従うとき
Fをガウス過程と呼ぶ
ガウス分布に従う変数は
平均パラメータと共分散パラメータを与えることにより決定される
ガウス過程では
平均関数(mean function)m(x)と 共分散関数(covariance function) またはカーネル関数(kernel function)k(x,x’)によって 生成される関数fの性質が決定される
上記のように表記する
具体例
線形回帰モデルがガウス過程として滋養式のような共分散関数を持つ
線形回帰では
パラメータwをサンプリングすることにより関数を描画する
ガウス過程では
明示的なパラメータは存在しない
上式から直接サンプリングされる関数を可視化するためには
具体的な入力値の集合X={x1,…,xN}を用意する
これらの入力値と前式を用いて 共分散行列(covariance matrix)(上式)を計算する
N次元の多次元ガウス分布N(0,K)から N次元ベクトルをサンプリングして曲線としてプロットする
ガウス過程の利点
特徴量変換Φの内積計算を直接行わなくても、 共分散関数自体を直接定義することで 関数に与える事前分布を決められる
7.1.2 ノイズを付加した回帰モデル
ガウス過程では共分散関数を定義することによって生成される関数の特性が決定される
実際にN組の学習データD={X,Y}を利用して回帰などを行う際には、 上記のように各関数の出力fn=f(xn)に対して独立なノイズが付与される
Fn:潜在関数(latent function)
上式のように尤度関数を定義していることと等価
各潜在関数fnを積分除去すれば、 観測データも上式のような共分散関数をを持つガウス過程となる
ガウス過程モデルでは、 データを与えた後の新規テスト入力に対する予測分布は、 単純な多次元ガウス分布における 条件付き分布の計算を用いることで得られる
学習データをD={X,Y}、 新規の入力値の集合をX*とし、 対応する予測値の集合をY*とすると、 出力値の同時分布は上記のガウス分布になる
共分散行列の添字は共分散関数を計算する際の入力値を表す
例えば
共分散行列Kx*xは各要素がk(x*,x)で得られることを示す
ガウス分布の計算式(A.7)および 逆行列の計算式(A.3)から予測分布は上式となる
ただし
ガウス仮定の最大の問題点としては計算量になる
近似推論によるアプローチ
7.1.3 共分散関数
はじめに
ガウス過程を使った予測は共分散関数の設計により特性が決まる
共分散関数k(x,x’)は、2つの入力xおよびx’をとる関数
利用可能な条件
任意の実数列[x1,..,xN]に関して、 共分散行列が半正定値である必要がある
7.1.3.1 指数二次共分散関数
よく使われる共分散関数として 上式のような指数二次共分散関数 (exponential quadratic covariance function)がある
呼び名
RBFカーネル(radial basis function kernel)
二乗指数カーネル(squared exponential kernel)
2つの入力ベクトルxおよびx’に対する特徴量変換Φの内積として書き直せる
Φは無次元のベクトル
前式から関数fを10回サンプリングしたものを示す
指数二次の共分散関数は、入力データ点xおよびx’が近いほど強い相関を持つ
生成される関数は変化の緩やかなものになる
前式のσやIなどの共分散関数のパラメータによってコントロールできる
指数二次の共分散関数に対して N=10個のデータの組{xn,yn}n=1Nを学習させた結果
指数二次共分散関数に対して 次元ごとの重みwi>0を設定した 共分散関数(上式)もよく利用される
自動関連度決定(automatic relevance determination, ARD)と呼ばれる入力次元削減のテクニックに用いられる共分散関数
かくハイパーパラメータwiを周辺尤度の最大化などに基づいて最適化すると、 予測に貢献しない入力次元の重みwiは0に食対していく
7.1.3.2 共分散関数の設計
便利な応用として、 既存の共分散関数を組み合わせることにより 新しい共分散関数を作り出せる
例えば
2つの共分散関数k1,k2から 上式のような操作を行うことで 新しい共分散関数を作り出せる
ある関数Φで入力を変換した後で 別の共分散関数を適用することにより、 入力に対する新しい共分散関数を作ることもできる
具体例
データに現れる周期的な傾向をモデリングしたい場合
1次元の入力x∈ℝに対して、Φ(x)=(sin(x),cos(x))Tのような2次元の円への写像を適用した上で
指数二次共分散関数に代入すると周期共分散関数を作れる(上記)
前記の周期共分散関数によって生成される関数の例
それらを使ったデータの予測
具体例
上式のような新しい共分散関数を定義する
2つの共分散関数の特性を併せ持つ
粗い周期性を持つ
関数の例
データの予測
その他の共分散関数の組み合わせの例
畳み込みガウス過程(convolutional Gaussian process)
7.1.4 周辺尤度
ガウス過程においても、 データD=[X,Y]が与えられた元での周辺尤度は重要な意味を持つ
ガウス過程の対数周辺尤度は 多次元ガウス分布の定義から簡単に計算できる(上式)
Θはハイパーパラメータの集合
ハイパーパラメータθに関して最適化
関数の変化率や周期性等を自動調整
右式を使ってデータに対するモデルの当てはまり具合を評価できる
前式をハイパーパラメータθで偏微分すると上式になる
α=K-1θY
ハイパーパラメータの数が多いとデータに過剰適合する
ハイパーパラメータに対して事前分布を設定して、 事後分布を確率的に推論することで防ぐ
7.2 ガウス過程による分類
はじめに
ガウス過程は分類問題に適用できる
回帰モデルにおける尤度関数を変更することにより 分類モデルが実現できる
推論に関しては事後分布が複雑になるため解析的計算が実行できない
ラプラス近似や期待値伝搬法による近似手法で解決する
7.2.1 ベルヌーイ分布による分類モデル
ベルヌーイ分布とガウス分布を組み合わせた分類モデルを構築する
回帰モデルでは尤度関数にガウス分布を使った
分類では
シグモイド関数を通して関数の値をμ(xn)∈(0,1)に制限した上で
ベルヌーイ分布により2価のラベルyn∈[0,1]を生成するモデルを考える
つまり
尤度関数を上式とし
ベルヌーイ分布のパラメータμ(xn)を上式とする
潜在関数fは共分散関数kβ(xj,xi)=k(xi,xj)+δi,jβ-1を持つ ガウス過程による事前分布に従ってサンプリングされると仮定する
各fn=f(xn)の生成に対して精度β-1を入れ込むことによって、 データ点ごとに独立に起こるラベル付けミスなどをモデルに加味する
前述のモデルからサンプリングされた潜在関数f(xn) およびシグモイド関数により変換された後の平均値μ(xn)と、 そのμ(xn)から生成された2価のデータ点を示す
ロジスティック回帰では取り扱えない複雑な分類ができる
このモデルを使った予測は次のようになる
学習データD=[X,Y]を観測した後の テスト入力x*における潜在変数の予測f*~f(x*)を計算する
ただし、F={f1,…,fN}
前式を使って尤度関数からf*を周辺化することにより、 y*の予測分布を得る
多クラス分類への拡張は、シグモイド関数とベルヌーイ分布の代わりにソボール関数とカテゴリ分布を支える
予測分布の計算は変分推論を適用することで求められる
7.2.2 ラプラス近似
はじめに
ガウス過程による分類の困難な点は、前述の計算が解析的に行えないこと
ラプラス近似を使ってこの問題に対する近似解を与える
7.2.2.1 事後分布の近似
ラプラス近似では、 潜在関数Fの近似事後分布qとして 上式のようなガウス分布を設定する
Fは上式のような対数事後分布の最大値をとるような値(MAP推定)
目的関数をΨ(F)とおくと
Kβ=Kxx+β-1I
Fに関する勾配をとることにより上式となる
ベルヌーイ分布による尤度関数の場合は、上式に必要な微分は
および
行列𝝠は点Fにおける負の対数事後分布のヘッセ行列
7.2.2.2 予測分布の近似
勾配降下法やニュートン・ラフソン法を使った 最適化を行うことによってMAP推定値Fを得た後は、
近似事後分布を利用することにより予測分布の近似を得る
潜在関数f*の予測分布は上式となる
2つのガウス分布による積分計算となるので、解析的に計算できる
平均μ*と分散σ*2はそれぞれ上式となる
k*=(kβ(x*,x1),…,kβ(x*,xN))T
この結果を用いると予測分布は上式から近似的に求められる
入力を2次元とした場合の分類の結果
左は、いくつかの観測データ点と、 データを生成する真の分布の平均値を等高線で示す
右はラプラス近似によってガウス過程分類モデルを学習し 予測平均を等高線として描いた結果
7.2.3 期待値伝播法
ガウス過程分類モデルの近似推論の手法として、 ラプラス近似の他にも期待値伝搬法がよく使われる
出力ラベルをyn∈[-1,1]とした分類問題を考える
プロビット回帰モデルで用いた累積密度関数Φを利用して 上式のように尤度関数を構成する
各関数値fnは、共分散関数kβを持つガウス過程に従って生成されるとする
このモデルの潜在関数は上式となる
右辺の正規化計算が困難であることから、解析的に事後分布は得られない
期待値伝搬法の枠組みで上式のように近似する
t(fn|μn,σ2n)は近似因子
上式のようにガウス密度関数を定義する
近似因子のパラメータμnおよびσn2は アルゴリズムを実行する前にあらかじめランダムに初期化する
その他の近似分布は上式のようなガウス分布になる
μ=(μ1,…,μN)T
Σは対角成分にσ12,…,σN2をもち、 非線形化が全てゼロであるようなNxNの行列
I番目の近似因子t(fi|μi,σi2)を更新する手続きについて
近似分布q(F)におけるi番目の潜在関数の周辺分布は、 一般的なガウス分布の周辺化の結果から上式となる
μiおよびσi2は、それぞれμのi番目の要素およびΣの(i,j)番目の要素
ここからまず、現在の近似因子t(fi|μi,σi2)を 取り除いて正規化し直したものをq\i(fi)とおくと
尤度の因子p(yi|fi)を追加して正規化したものを上式とおける
(4.65)および(4.66)のガウス分布を使った モーメントマッチングの一般的な結果から r(fi)の平均および分散は上式になる
ただし
最終的な更新式は上式となる
期待値伝搬法の大量データに対する代表的なアルゴリズム
7.3 ガウス過程のスパース近似
はじめに
ガウス過程の最大の課題はその計算量にある
深層学習モデルが確率的勾配降下法などの手法を用いて大量のデータを学習できたのと同様に
7.3.1 誘導点を用いた変分推論法
はじめに
変分推論法と誘導点(inducing points)あるいは擬似入力(pseudo input)に基づいたガウス仮定のスパース近似(sparse approximation)の手法を紹介する
誘導点を用いたスパース近似では、 逆行列の計算が困難なNxNサイズの共分散行列Kを、 M(<N)となるようなMxMサイズのより小さな行列を使って 低ランク近似する
Kzzは、M個の誘導点z1,…,zMによって計算される共分散行列
KzzはNxMの行列
各誘導点は変分パラメータの役割を果たす
7.3.1.1 変分推論法による事後分布の近似
ガウス過程のための誘導点を用いた変分推論法を導くために
簡単のために、有限個の入力点集合Xallを考える
xxx
7.3.1.2 予測分布の近似
ある新規のテスト入力が得られた元でのy*∈ℝの予測分布は、 近似分布を使うと上式になる
ただし
とおく
誘導点を用いたガウス回帰モデルの予測分布の例を示す
誘導点zはxと同じ空間から適当にランダムに選ぶ
誘導点の個数が増えるに従って、厳密解に近いものに近づく
近似を行った際のELBOも誘導点の個数を増やすと、厳格に計算された対数周辺尤度に近づく
7.3.1.3 ハイパーパラメータの最適化
共分散関数の持つハイパーパラメーターを最適化し、 ガウス過程のデータに対する当てはまりをよくしたい場合は、 対数尤度の代わりに(7.66)を偏微分することによる勾配降下法を適用する
これはシュルドルーも変化させてしまう
7.3.2 確率的変分推論法
確率的変分推論(stochastic variable method)は、 対数周辺尤度の下界の最大化に基づく変分推論法に対して、 学習データをミニバッチに分けることで学習の効率化を行う 確率的勾配降下法(stochastic gradient descent method)を組み合わせた手法
ガウス過程でも適用可能
7.4 深層学習のガウス過程解釈
はじめに
教師あり学習の枠組みでは、 ガウス過程は(順伝搬型ニューラルネットワークなどと同じく) 入力変数から出力変数への非線形な写像を学習するモデルとして広く用いられる
両者の関係性を明らかにする
全結合の順伝搬型ニューラルネットワーク における各層の重みパラメータの数を無限大にすると
深層学習のモデルの ガウス過程を用いた表現の利点
推論が解析的に行えるため、 モデルからの厳密な予測が得られる
周辺尤度の計算が厳密に行えるため、 ハイパーパラメータの最適化や 総数の設定を含むモデルの選択が容易に行える
パラメータの空間ではなく、 カーネル(共分散関数)によって関数の空間を直接設計できるため 回帰を行う関数の選択の幅が広がり、設計も直感的になる
主に多層に結合された多層のニューラルネットワークを考える
最初の層l=1では上式とする
以下は活性化関数Φによる 非線形な変換を用いて上式のように計算する
重みとバイアスはそれぞれゼロ平均のガウス事前分布に従うとする
7.4.4節では畳み込みネットワークで使われるような疎な結合を持った構造を持つ ガウス過程の共分散関数に入れ込む手段に関して説明する
7.4.1 隠れ層が1つの場合
隠れ層が一つのニューラルネットワークの極限を考える
前提条件
順伝搬型ニューラルネットワークでL=2とし、
ai(2)(x)が出力になるようなネットワーク構造を考える
隠れユニットの数H1→∞とする
重みパラメータとバイアスパラメータはそれぞれ要素ごとに独立な事前分布に従う
単一の入力データxに対する出力の振る舞いを考える
具体的にai(2)(x)の平均値と分散を調べる
パラメータの事前分布から平均値は
各パラメータの独立性を考えれば、分散は
zj(1)(x)は各jで共通の有限の分散を仮定している
右式でH1→∞とすると分散ki(2)(x,x)が無限大に発散する
これを防ぐために、 重みパラメータの事前分布に固有値を与え、 隠れユニット数H1に応じてスケールさせる
従って上式となる
7.4.2 多層の場合
前述の議論を繰り返し適用して 構築した深層モデルに対して 各層の隠れユニット数H1を無限にすることを考える
I番目層で各出力ai(l)が次のようなモーメントを持つガウス分布に従っていると仮定
隠れ層の数をHl→∞とすると、各層の出力は上式のようなモーメントを持つ
ただし
7.4.3 深層カーネル
はじめに
具体的な非線形関数Φを利用した深層構造を持つ共分散関数を導出する
前述の関係式を用いて深層構造を持つ共分散関数を構成するためには 非線形変換Φに対して2次元ガウス分布N(a|0,Σ)による期待値(上式) を計算する必要がある
7.4.3.1 ガウスの誤差関数による共分散関数
まず、非線形関数としてガウスの誤差関数(Gauss error function)を選んだ場合の再帰式を導出する
ガウスの誤差関数は上式のように定義される
ガウスの誤差関数と双曲正接関数
ガウスの誤差関数と双曲正接関数は似ている
この非基底に対するガウス分布による期待値は上式のように解析的に計算できる
前式を適用することにより上式のような共分散関数の再帰的な定義が得られる
7.4.3.2 正規化線形関数による共分散関数
深層学習のモデルでよく用いられる正規化線形関数に関しても再帰的な構造を持つ共分散関数を得られる
一般的な形式で、自然数mをパラメータとして非線形変換を考える
Φm(a)=Θ(a)amによる非線形変換
ガウス分布による期待値計算は上式のように解析的に求められる
ただし
関数𝑱m(θ)は上式のようになる
最終的に再帰的な共分散関数は上式になる
7.4.3.3 予測と周辺尤度
深層構造を持つ共分散関数を用いたガウス過程の例
7.4.4 畳み込みガウス過程
はじめに
ガウス過程の利点として、 共分散関数を設計することにより生成される関数に 特定の性質が与えられることが挙げられる
画層認識で用いられる畳み込み構造を、ガウス過程の共分散関数に導入する
既存のガウス過程ではモデル化のしにくかった多次元かつ 位置的な構造を持った画像などのデータを効率よく学習できる
既存の畳み込みニューラルネットワークと比べて、 ベイズ推論に基づく不確実性の推定や、 モデル構造やハイパーパラメータの自動選択などが行える
変分推論に基づくスパース近似の適用で、 過剰適合を抑制しつつ、効率的な計算が可能になる
7.4.4.1 モデル
7.4.4.2 ドメイン間近似による学習
7.4.4.3 共分散関数の改良
7.5 ガウス過程による生成モデル
はじめに
ガウス過程は 主に入力変数と出力変数の間の関数を学習するような 教師あり学習の枠組みの中で使われる
入力変数を未観測の潜在変数と取り扱うことで、 ノンパラメトリックな学習モデルを構築することができる
線形次元削減モデルの非線形版
主成分分析や因子分析等の線形モデルでは 抽出できなかった複雑な低次元部分空間を抽出できる
ガウス過程潜在モデルは、 変分自己符号化器の生成ネットワークの隠れユニット数を 最大にした場合のノンパラメトリックモデルであるといえる
7.5.1 ガウス過程潜在変数モデル
はじめに
ガウス過程の入力Xを潜在変数として扱うことにより、 ガウス過程を教師なし学習のモデルにすることができる
誘導点にもとづく変分推論法を使うことにより、降下的な近似推論を行える
7.5.1.1 モデル
7.5.1.2 変分推論による近似
7.5.2 深層ガウス過程
はじめに
ガウス過程潜在変数モデルを階層的に組み合わせる
より表現力の高いモデルを表せる
7.5.2.1 モデル
7.5.2.2 変分推論による近似
7.5.2.3 さらにる推論の効率化
ガウス過程とサポートベクトルマシン
式は似ている
サポートベクタマシンの目的関数
ラプラス近侍で用いたガウス過程モデルのMAP推定の目的関数
実際は大きく異なる
付録 A
A.1 ガウス分布の計算
A.1.1 準備
A.1.2 条件付き分布と周辺分布
A.1.3 ガウス分布の線形変換
A.2 誘導点を用いた変分推論法のELBO最大化
A.3 正規分布の累積分布関数の積分計算
A.4 共分散関数の計算
A.4.1 ガウスの誤差関数に対する共分散関数
A.4.2 正規化線形関数に対する共分散関数
コメント
[…] 「機械学習プロフェッショナルシリーズ ベイズ深層学習 」読書メモ […]
[…] 「機械学習プロフェッショナルシリーズ ベイズ深層学習 」読書メモ […]
[…] により、パラメータの不確実性を考慮した予測や推定が可能になる。ベイズ線形回帰に関しては”機械学習プロフェッショナルシリーズ ベイズ深層学習 読書メモ“を参照のこと。 […]
[…] 変分RBM(Variational Restricted Boltzmann Machine)は、変分推論と”機械学習プロフェッショナルシリーズ ベイズ深層学習 読書メモ“等で述べている制約付きボルツマンマシン(Restricted Boltzmann […]