Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ニューラルネットワークのベイズ推論 / Bayesian inference of neural networks

Atom
October 09, 2020

ニューラルネットワークのベイズ推論 / Bayesian inference of neural networks

研究室内のGNN勉強会の資料
NNの基礎からということで,この資料はGNNでなくベイズ深層学習とドロップアウトの関係の話です.

Atom

October 09, 2020
Tweet

More Decks by Atom

Other Decks in Technology

Transcript

  1. 確率的勾配降下法 用語 1.1 (バッチ学習;batch learning) N個の学習データD = {xn , yn

    }N n=1 のすべてを一度にモデルに投入して学習す る方法をバッチ学習という. 目的関数の勾配を用いて学習する場合,特に勾配降下法とも呼ばれる. しかし,1回のパラメータの更新のたびに学習データをすべてを使って勾配 の計算を行なわなければならないため,大量のデータを処理する際に計算効 率がよくない. 実用上では,M(< N)個となる小規模な部分集合DS = {xn , yn }n∈S を取り出 して学習するミニバッチ学習が用いられる(Sはランダムに選択されたM個の インデックスの集合). 4 / 35
  2. パラメータ集合Wをもつモデルがあり,Dに対する目的関数の値をED (W), DS に対する目的関数の値をES (W),n ∈ Sに対する目的関数の値をEn (W)と する. ミニバッチ学習におけるES

    (W)を次のように設定する. ES (W) = N M n∈S En (W) (1.1.1) ミニバッチがランダム(一様分布)に従って取ってくるとき, ES (W)とED (W)の期待値は等しくなる( N M はそのための係数である) . ES (W)の勾配を用いて学習するとき,確率的勾配降下法(stochastic gradient descent method)と呼ぶ. 5 / 35
  3. ドロップアウト ドロップアウト(dropout)は確率的正則化(stochastic regularization)の一 つであり,アンサンブル効果による過剰適合の抑制を促すものである. DS = {xn , yn }n∈S

    が与えられたあと,各データ点{xn , yn }に対する勾配計算 時に各ユニットを独立な確率r ∈ (0, 1)で無効にする(rはハイパーパラメータ で通常r = 0.5などで与えられる) . Figure: 引用[1] 6 / 35
  4. データ点{xn , yn }ごとに構成される部分グラフ(サブネット;subnet)の勾 配を計算し,パラメータを更新する際はそれらを平均した勾配を用いる. テストデータを入力する際は,ユニットを欠落させていない元々のネット ワークを用いて,予測する(このとき出力を1 − r倍する) .

    アンサンブル(ensemble)の一種であるバギング(bagging;Bootstrap aggregating)と同様の効果が期待される. ユニットではなく,辺を欠落させるドロップコネクト(DropConnect)も ある.また欠落させるのではなく,平均1のガウス分布をかけることで,スケ ーリングを不要とする手法もある. 7 / 35
  5. しかし,0付近の値をとりやすくすることによって活性化関数φによる非線 形変換が実質的に線形変換になってしまう場合があり,表現力が制限される 場合がある. そこで非線形変換を行うまえに,次のようなパラメータγ ∈ R, β ∈ Rをもつ 線形変換を行うユニットを追加する.

    ˜ zn = γ˜ z + β (1.3.5) γ, β は学習可能なパラメータであり,ミニバッチが入力するたびに更新さ れる. µS , σ2 S をγ, βに置き換えることで,ミニバッチに依存するような平均,分散 をもつのではなく,学習データ全体を考慮した平均,分散を明示的に学習す る. 9 / 35
  6. モンテカルロドロップアウト ここではモンテカルロドロップアウトの変分ベイズ学習法での解釈を示す. 簡単のため2層(次元数H0 ,H1 )のネットワークを考えるが,同様の議論が 一般のL層でも成り立つ. ドロップアウトについてマスクベクトルを用いて定式化する. 入力xn ∈ RH0

    および中間層zn ∈ RH1 に対する2値のマスクベクトルをそれぞ れ ˜ m(1) ∈ {0, 1}H0 および ˜ m(2) ∈ {0, 1}H1 とする.各マスクの要素 ˜ m(l) i は次のよう なベルヌーイ分布に従ってサンプリングされる. ˜ m(l) i ∼ Bern(1 − rl ) (2.1.1) ここでrl はl層目のマスクの値が0になる確率(ハイパーパラメータ)である. 11 / 35
  7. マスクベクトルとのアダマール積 を取ることでドロップアウトができる. l層における重み行列をW(l),中間層の活性化関数をφ,モデルの出力を˜ an とす ると ˜ xn = ˜

    m(1) xn (2.1.2) zn = φ(W(1)˜ xn ) (2.1.3) ˜ zn = ˜ m(2) zn (2.1.4) ˜ an = W(2)˜ zn (2.1.5) diagm(x)をxの各要素を対角成分にもつ行列を返す演算とすると, ˜ an = W(2)diagm( ˜ m(2))φ(W(1)diagm( ˜ m(1))xn ) (2.1.6) = ˜ W(2) m φ( ˜ W(1) m xn ) (2.1.7) 12 / 35
  8. 用語 2.1 (再パラメータ化;reparameterization) パラメータWをパラメータξに依存する確率分布q(W; ξ)から直接サンプリン グするのではなく,ξに依存しない分布p( )から からサンプリングし,変数変 換W =

    g(ξ; )を適用してWのサンプルを得ることを再パラメータ化という. パラメータWのサイズ大きくてサンプリングコストが高いときや,変分 オートエンコーダ(VAE)において誤差逆伝播の関係で直接サンプリングしたく ないときに用いられる. ˜ W(l) m を考えることでドロップアウトは再パラメータ化とみなすことができ る. ˜ W(l) m = g(W(l), ˜ m(l)) = W(l)diagm( ˜ m(l)) (2.1.8) 13 / 35
  9. 正則化項を考慮したミニバッチSの目的関数J(S) DO (W)を次のようにする. J(S) DO (W) = N M n∈S

    En ( ˜ Wm ) + 2 l=1 λl W(l) (2.1.9) En ( ˜ Wm )を平均関数f(xn ; ˜ Wm )と分散σ2 y Iからなるガウス分布で表される 事後分布p(yn |xn , ˜ Wm )を最大化するように設定する. En ( ˜ Wm ) = − ln p(yn |xn , ˜ Wm ) (2.1.10) = − ln N(yn |f(xn ; ˜ Wm ), σ2 y I) (2.1.11) = −σ2 y ln N(yn |f(xn ; ˜ Wm ), I) + ln σ2 y (2.1.12) = −σ2 y ln p(yn |f(xn ; g(W, ˜ m)) + const. (2.1.13) 14 / 35
  10. したがって J(S) DO (W) = − σ2 y N M

    n∈S p(yn |f(xn ; g(W, ˜ m)) − 2 l=1 λl W(l) + const. (2.1.14) パラメータWに関する勾配は ∇W J(S) DO (W) = − σ2 y N M n∈S ∇W p(yn |f(xn ; g(W, ˜ m)) − 2 l=1 ∇W λl W(l) (2.1.15) 15 / 35
  11. 用語 2.2 (変分ベイズ法の復習) 変分ベイズ法では変分下限(evidence lower bound;ELBO) L(ξ)を最大化する. p(W|y, x) =

    p(y|x, W)p(W) p(y|x) (2.1.16) ln p(y|x) = L(ξ) + DKL [q(W; ξ) p(W)] (2.1.17) ln p(y|x) ≥ L(ξ) (2.1.18) 変分パラメータξは分布の平均,分散,ハイパーパラメータなどが多い ξに関してエビデンスln p(y|x)は定数なので,変分下限最大化とKL情報量 最小化は等価である. ギブスの変分原理,自己無矛盾条件の導出において変分法が使われる. 16 / 35
  12. 前半の資料より,変分推論法において変分パラメータξを˜で再パラメータ 化を行った変分下限(ELBO)の勾配∇ξ LS,˜ (ξ)は ∇ξ LS,˜ (ξ) = N M

    n∈S ∇ξ ln p(yn |f(xn ; g(ξ, ˜)) − ∇ξ DKL [q(W; ξ) p(W)] (2.1.19) ξ = Wの変分自由エネルギーF(ξ) = −LS,˜ (ξ)をサブネットに対して考える と(つまりEq.(2.1.19)においてW = Wm ) ,Eq.(2.1.20)が成立するとき, Eq.(2.1.21) の関係式が導出される. ∇W DKL [q(Wm ; W) p(Wm )] = 1 σ2 y 2 l=1 ∇W λl W(l) (2.1.20) ∇W J(S) DO (W) = σ2 y ∇W F(W) (2.1.21) 17 / 35
  13. Eq.(2.1.21)を用いたパラメータ更新においてσ2 y のスケールの差は学習率に反 映されることを考えれば,ドロップアウトを施した確率的勾配降下法と変分 ベイズによる確率的勾配降下法は,事前分布p(Wm )と近似事後分 布q(Wm ; W)の選択によって等価とみなすことができる. ドロップアウトの変分ベイズでの解釈

    ドロップアウトは 変分推論法においてパラメータの近似事後分布をq(Wm ; W)とし, ノイズのサンプリングと変数変換を使った再パラメータ化を行い, ミニバッチの変分自由エネルギーの最小化を行う ことと実質的に等価である. 18 / 35
  14. Eq(y∗|x∗) [y∗ ] = y∗ q(y∗ |x∗ )dy∗ (2.1.23) =

    y∗ p(y∗ |x∗ , Wm )q(Wm ; W)dWm dy∗ (2.1.24) = y∗ p(y∗ |x∗ , Wm )dy∗ q(Wm ; W)dWm (2.1.25) 仮定より p(y∗ |x∗ , Wm ) = N(y∗ |f(x∗ ; Wm ), σ2 y I)であるので Eq(y∗|x∗) [y∗ ] = f(x∗ ; Wm )q(Wm ; W)dWm (2.1.26) よって,q(Wm ; W)からサブネット(の重み)をサンプリングし,各サブネ ットの平均出力についてモンテカルロ積分をとればよい. 20 / 35
  15. Eq(y∗|x∗) [y∗ y∗ ] = y∗ y∗ q(y∗ |x∗ )dy∗

    (2.1.27) = y∗ y∗ p(y∗ |x∗ , Wm )q(Wm ; W)dWm dy∗ (2.1.28) = y∗ y∗ p(y∗ |x∗ , Wm )dy∗ q(Wm ; W)dWm (2.1.29) 分散 = 2乗の平均 − 平均2 であるので = Covp(y∗|x∗,Wm) [y∗ ] + Eq(y∗|x∗) [y∗ ]Eq(y∗|x∗) [y∗ ] q(Wm ; W)dWm = σ2 y I + f(x∗ ; Wm )f(x∗ ; Wm ) q(Wm ; W)dWm (2.1.30) よって分散も同様にq(Wm ; W)からサブネット(の重み)をサンプリングし て,サブネットの分散の期待値をモンテカルロ積分すればよい. 21 / 35
  16. その他の確率的正則化手法との関係 バッチ正規化もミニバッチのランダム選択が近似ベイズ推論として解釈で きる.ドロップアウトではq(Wm ; W)を考えていたが,バッチ正規化で はq(µS , σS ; W)を考えることで,変分推論の枠組みで解釈できる.

    確率的勾配降下法もミニバッチのランダム選択が近似ベイズ推論として解 釈でき,確率的勾配ランジュバン動力学法(SGLD)などの確率的マルコフ連 鎖モンテカルロ法(SG-MCMC)との類似性が示唆されている.また,確率的勾 配降下法を確率過程(Ornstein-Uhlenbeck過程)とみなすことで,離散の確率微分 方程式として解釈も示されている. 22 / 35
  17. 画像認識 犬や魚の画像認識を考えたとき,犬は多様なポーズなどをとるが,魚はそ うでない.学習データ(x, y)が十分にあり,モデルの出力の分散を考えると き,犬や魚の分散は同じ固定の分散 σy で与えられるのだろうか? −→ データに依存した分散 v(x;

    W) を考えるべき. ドロップアウトなどの近似ベイズ推論を用いて分散V[y∗ ]について考えると き,モデル(各サブネット)がもつ曖昧性を表すノイズと,データに依存す る観測ノイズに分けて考える必要がある. 前者は学習データ量を増やすことで小さくすることができ,後者は正則化 項により抑制することができる. 24 / 35
  18. 能動学習 用語 3.1 (教師あり学習;supervised learning) 入力xと出力yの両方が多数与えられ学習する(教師データがある) . 用語 3.2 (教師なし学習;unsupervised

    learning) 入力xと出力yの一方のみが多数与えられ学習する(教師データがない) . 用語 3.3 (半教師あり学習;semi-supervised learning) 入力xと出力yの一方が多数,もう一方が少数与えられ学習する (教師データが少量) . すべてのデータにアノテーションするのは大変なので,半教師あり学習を したいとき,どのデータにアノテーションすれば効率的なのか? 26 / 35
  19. 強化学習 用語 3.5 (強化学習;reinforcement learning) 1 エージェントは環境に対して何らかの行動を行う. 2 行動に応じて環境の状態は遷移し,報酬が生じる. 3

    エージェントは報酬を得て,環境の状態を観測する. 4 エージェントは過去の行動,報酬,状態をもとに,方針を更新する. 5 エージェントは環境の状態と方針にもとに,次の行動を決定する. 29 / 35
  20. 行動a∗ ,報酬r∗ ,文脈x∗ ,パラメータWとすると,トンプソンサンプリン グは以下のように表される. Algorithm 1 Thompson sampling 1:

    for t = 1 to T do 2: ˜ W ∼ q(W) 3: Receive context x∗ 4: Choose an action a∗ for maximize Ep(r∗|x∗,a∗, ˜ W) [r∗ ] 5: Receive reward r∗ 6: Add {x∗ , a∗ , r∗ } to data 7: Update q(W) 8: end for 34 / 35
  21. References I [1] 須山敦志. ベイズ深層学習. 機械学習プロフェッショナルシリーズ. 講談社, 2019. [2] 森山直人.

    最近の自然言語処理. https://www.slideshare.net/naotomoriyama/ss-83208311 [3] Burr Settles. Active Learning Literature Survey. Computer Sciences Technical Report 1648, 2009 [4] Reinforcement Learning Agents. MathWorks. https://www.mathworks.com/help/reinforcement-learning/ ug/create-agents-for-reinforcement-learning.html [5] http://hagencartoons.com/cartoons_166_170.html [6] Hirokazu Yoshida. 広告レコメンドにおける多腕バンディット問題の適用とその解法. Speee DEVLOPER Blog. 2018.08.08. https://tech.speee.jp/entry/2018/08/08/090000 35 / 35