作って遊ぶ機械学習。

~基礎的な確率モデルから最新の機械学習技術まで~

MLPシリーズ「ベイズ深層学習」概要まとめ

今回は8月に出版した講談社機械学習プロフェッショナルシリーズの「ベイズ深層学習」の概要を書いてみます. www.kspub.co.jp 講談社のページ等では目次は載っていますが,それより詳細な情報はネットにはないので,もう少しだけ踏み込んだ内容をここで紹介することにします.

内容紹介

第1章 はじめに

ベイズ統計と深層学習(ディープラーニング)は仲が悪いように世間的には見られがちですが,実は両者は非常に親和性が高いことを解説しています. 両分野のそれぞれの利点としては,ベイズ統計ではモデルの高い解釈性や設計の明確さ,深層学習ではGPUなどを用いた大規模データの効率的な計算方法等を挙げることができます.これらの利点は相補的であり,組み合わせることによってアルゴリズムの改善が期待できます. また,両分野には共通点もあります.深層学習ではタスクごとにネットワーク構造を設計する必要性がありますが,これはベイズ統計におけるモデリング作業と本質的に一致しています.つまり,両分野においてもデータ・タスクに合わせたモデル設計の重要さが認識されていると言えます.

本書は単なる「ニューラルネットワークベイズ的な取り扱い法」や「最新の深層学習技術のガイダンス」といったものではありません.本書は「複雑な統計モデルの設計法とそれに対する効率的な確率推論手法」という大きな枠組みの中で,重要な分岐点となった技術を系統立てて紹介する内容になっています.

第2章 ニューラルネットワークの基礎

ここでは最もシンプルな統計モデルである線形回帰モデルから出発し,ニューラルネットワークの成り立ちや利点などを解説していきます. 学習方法も最小二乗法から,誤差逆伝播法を使った基本的な最適化手法まで解説します. また,画像認識で飛躍的な精度向上を果たした畳み込みニューラルネットワークなどの典型的なモデル例なども紹介します.

第3章 ベイズ推論の基礎

ベイズ推論の超基本的なところを解説します.基本的な確率計算から,指数型分布族といったベイズ統計における重要な構成要素,さらに線形回帰に対する利用例を示します.また,気になる人向けに最尤推定正則化学習との理論的な関係性に関しても簡単に説明します. このあたりの話は,下記の「ベイズ推論による機械学習入門」も併せて読むと理解が深まります. www.kspub.co.jp

第4章 近似ベイズ推論

ここからだんだん本題に入っていきます. 近年ベイズ統計を実用レベルまでに一気に押し上げたのは,変分推論法を始めとしたいくつかの近似推論手法の開発によるものです. 特に,「ベイズ推論による機械学習入門」ではあまり説明されなかったハミルトニアンモンテカルロ法やモーメントマッチング法,期待値伝播法など,ニューラルネットワークに適用できる種々の計算手法も紹介します.

第5章 ニューラルネットワークベイズ推論

ここでは第2章で紹介したニューラルネットワークを確率モデルとして解釈しなおし,確率的な推論計算によって学習・予測する方法を紹介していきます.特に,第4章で解説した近似推論手法を次々にベイズニューラルネットワークモデルに適用していきます.

また,ここでは深層学習の研究領域でこれまでに開発されたドロップアウト確率的勾配降下法などの効果的な計算手法が,実は変分推論法を始めとしたベイズ統計の方法論として解釈しなおせることを示します.その結果を利用することにより,ベイズ統計の利点を生かして予測の「不確実さ」を簡単に示せるようなテクニックや,それを使った強化学習などへの応用事例なども数多く紹介します.

第6章 深層生成モデル

ここでは特に深層生成モデルに着眼して,ベイズ統計と深層学習の関係性について見ていきます. 変分オートエンコーダー(VAE)や敵対的生成ネットワーク(GAN)は深層学習の分野において非常に人気のある深層生成モデルです.VAEに関しては,「生成ネットワークによるデータの生成過程のモデル化」と「識別ネットワークによる近似ベイズ推論の効率化」という観点で解釈を試みます.GANに関しては,変分推論法,近似ベイズ計算(approximate Bayesian computation, ABC),密度比推定といった技術を組み合わせによってベイズ的な学習手法として解釈することができます.

また,ベイジアンノンパラメトリクスの技術を使うことによって,ニューラルネットワークに対して無限の深さ,無限の隠れ層数を仮定したモデルを構築することができます.これを使って,ニューラルネットワークの構造をデータから自動的に決定する手法も紹介します.

第7章 深層学習とガウス過程

近年注目を集めているガウス過程と深層学習との関係性に関して解説します. ガウス過程は関数上の確率分布です. 前半ではガウス過程自体の簡単な紹介にフォーカスし,特にガウス過程も深層学習と同様,大量のデータを短時間で効率的に学習できるような手法が存在することを示します. ガウス過程に関しては,同シリーズの下記入門書がお勧めです. www.kspub.co.jp

後半では,隠れ層を無限大に拡張した場合のニューラルネットワークガウス過程として解釈できることを示し,行列計算によって解析的に厳密な予測が実行できることを示します.ReLUなどのよく使われる非線形関数を持つニューラルネットワークモデルの,カーネルによる表現なども詳細な計算付きで解説します. また,ガウス過程の教師なし版であるガウス過程潜在変数モデル(Gaussian process latent variable model)も紹介し,さらにそれらを複数重ねた深層ガウス過程(deep Gaussian process)といったモデルも紹介します.

その他

想定する読者層

前著と比べてこの辺の定義は結構難しく,人それぞれといった感じです. 単純に言えば,ベイズ統計学と深層学習のどちらかに興味を持った(比較的数学力強めな)人には全員お勧めできると思います. 読むためにはどちらか一方の知識を持っているか,あるいはどちらもそこそこの知識を持っている必要があると思います. ベイズ統計に詳しい方には,ディープニューラルネットワークといったとてつもなく複雑で巨大な問題にどうやって立ち向かっていくか,といった観点で面白いと思います.実際,このような複雑な確率モデルを上手に設計し,大量データを投入して効率良い推論していくのはベイズ統計の中心的な研究課題です. 深層学習に詳しい方は,過剰適合とかパラメータチューニングの難しさ,解釈性の困難さや不確実性の表現能力など,深層学習の数々の問題点を解決する手段として参考になると思います.また,深層学習の数多くの納得感のないモヤモヤした方法論に一定の解釈を与えるなどの目的としても本書は使えます.また,ベイジアンノンパラメトリクスを使った構造の自動決定やガウス過程との関連は今後大きなトレンドになる可能性が高いと思われます.

大変だったこと

ベイズx深層学習という2つの大きなテーマを相手にすると,とにかく参照すべき論文数が膨大になります.ただの最新技術紹介になるのを防ぐため,前著同様,「モデルx確率推論」という一定のスタンスを保ちながら内容を整理・厳選しています.結果として,1980年代から2019年の最新のものまで,重要と思われる研究成果をフラットに紹介しています.執筆には概算で2000時間くらいかかっています.

協力してくださった方

深層学習から見ても,ベイズから見ても,なるべく正確な内容になるようにしたかったので,今回は両分野で最強レベルの研究者の方に内容チェックをお願いしています.この場を借りて厚く御礼申し上げます.