ノンパラメトリックベイズとガウス過程について

機械学習技術 人工知能技術 デジタルトランスフォーメーション技術 確率的生成モデル 本ブログのナビ
  1. ノンパラメトリックベイズとガウス過程
    1. 概要
    2. 実装
        1. ディリクレ過程(Dirichlet Process, DP)の概要とアルゴリズム及び実装例について
        2. 階層的ディリクレ過程 (HDP)の概要とアルゴリズム及び実装例
        3. 中国料理店過程 (Chinese Restaurant Process)の概要とアルゴリズム及び実装例
        4. 棒切り分割プロセス(Stick-breaking Process)の概要とアルゴリズム及び実装例
        5. ディリクレ過程混合モデル(Dirichlet Process Mixture Model, DPMM)の概要とアルゴリズム及び実装例について
        6. ベイズ推定の概要と各種実装
        7. マルコフ連鎖モンテカルロ法の概要と実装について
        8. カルバック・ライブラー変分推定の概要と各種アルゴリズム及び実装
        9. ベイズ構造時系列モデルの概要と適用事例及び実装例について
        10. Black-Box Variational Inference (BBVI)の概要とアルゴリズム及び実装例について
        11. Clojureでのガウス過程の実装
        12. GPy – Pythonを用いたガウス過程のフレームワーク
        13. Clojureを用いたベイズ最適化ツールの実装
  2. ノンパラメトリックベイズの理論
      1. 機械学習プロフェッショナルシリーズ-ノンパラメトリックベイズ 点過程と統計的機械学習の数理 読書メモ
      2. ノンパラメトリックベイズ点過程と統計的機械学習の数理の概要
      3. 確率的生成モデルに使われる各種確率分布について
      4. 確率的生成モデルと学習の概要
      5. 具体例を用いたベイズ推定の概要
      6. k-平均法とベイズ推定法(混合ガウスモデル)を用いたクラスタリングの比較
      7. ノンパラメトリックベイズとクラスタリング(1)ディリクレ分布と無限混合ガウスモデル
      8. ノンパトメトリックベイズとクラスタリング(2)分割の確率モデルとディリクレ過程
      9. ノンパラメトリックベイズの構造変化推定への応用
      10. ノンパラメトリックベイズを用いた因子分析・スパースモデリングへの応用
      11. ノンパラメトリックベイズの理論の為の測度論の基礎
      12. 点過程からみるノンパラメトリックベイズ -ポアソン過程とガンマ過程
      13. 点過程からみるノンパラメトリックベイズ – 正規ガンマ過程とディリクレ過程と完備ランダム測度
  • ガウス過程の理論
      1. ガウス過程と深層学習の関係について述べられたコンテンツ
      2. 機械学習プロフェッショナルシリーズ – ガウス過程と機械学習 読書メモ
      3. ガウス過程と機械学習 – イントロダクション
      4. 線形回帰モデル
      5. ガウス分布
      6. ガウス過程の概要(1) ガウス過程とカーネルトリック
      7. ガウス過程の概要(2)ガウス過程とカーネル
      8. ガウス過程の概要(3)ガウス過程回帰モデル
      9. ガウス過程の概要(4)ガウス過程回帰のハイパーパラメータ推定と一般化
      10. ガウス過程の概要(5)ガウス過程回帰の一般化
      11. 確率的生成モデルとガウス過程(1)確率モデルの基礎
      12. 確率的生成モデルとガウス過程(2)最尤推定とベイズ推定
      13. 確率的生成モデルとガウス過程(3)確率分布の表現
      14. ガウス過程の計算法(1)補助変数法による計算
      15. ガウス過程の計算法(2)変分ベイズ法と確率的勾配法
      16. ガウス過程の計算法(3)格子状補助点配置に基づくガウス過程法計算
      17. ガウス過程の空間統計学、ベイズ最適化への適用
      18. ガウス過程による教師なし学習(1)ガウス過程潜在変数モデルの概要とアルゴリズム
      19. ガウス過程による教師なし学習(2)ガウス過程潜在変数モデルの拡張
      20. ガウス過程雑記 – 関数の雲の利点と回帰モデルとカーネル法そして物理的モデルとの関係
      21. ニューラルネットワーク(深層学習)とガウス過程の等価性
      22. Clojureを用いた確率的プログラミング(Probabilistic Programming)
  • ノンパラメトリックベイズとガウス過程

    概要

    ノンパラメトリックベイズとは、ベイズ統計学の一手法であり、1970年台にすでに理論的には完成されてきた「古くて新しい技術」で、データに依存した柔軟な確率モデルを使用して、データ解析や予測を行う統計的手法となる。ノンパラメトリックベイズは、事前に確定的なパラメータを設定する必要がないため、「ノンパラメトリック」という名前が付けられている。

    ノンパラメトリックベイズでは、データ自体から確率モデルを構築し、データを生成する真の確率分布を仮定する代わりに、データから確率分布を推定することができる。これにより、データに対して柔軟なモデルを使用し、データに適合するように確率分布を自動的に調整することができるようになる。

    ノンパラメトリックベイズにはいくつかの異なる手法があるが、最も一般的な手法の一つにディリクレ過程を用いた”ディリクレ過程混合モデル(Dirichlet Process Mixture Model, DPMM)の概要とアルゴリズム及び実装例について“で述べているディリクレ過程混合モデル (Dirichlet Process Mixture Model; DPMM) となる。ディリクレ過程は、無限次元の確率分布を定義するための確率過程であり、マルコフ連鎖モンテカルロ法に代表される近代的な探索アルゴリズムで効率的に計算できるものとなる。DPMMはノンパラメトリックベイズにおける代表的な手法の一つとして、クラスタリングや統計モデルを用いた構造変化推定や密度推定、因子分析やスパースモデリングなどの様々なタスクに応用されている。

    ガウス過程 (Gaussian Process; GP) は、確率論に基づくノンパラメトリックな回帰やクラス分類の手法であり、連続的なデータのモデリングに利用される確率過程の一種となる。ガウス過程は、ノンパラメトリックベイズと同様に、無限次元の確率分布を定義し、データに対する確率分布を推定することで、データ解析や予測を行う。

    ガウス過程のアプローチでは、データの生成プロセスを確率分布でモデル化し、データ間の関係性を表現するためのカーネル (カーネル関数、カーネル関数行列) を用いて、データ点間の相関を表現し、データ点の間の関係性や不確実性を推定する。ガウス過程のカーネルは、様々な形状を持つことができ、データの特性に合わせてカスタマイズすることができるため、データに適合するような柔軟なモデルを構築することができる。

    ガウス過程は、予測結果に対する不確実性 (信頼区間) を推定することができ、これにより、予測の信頼性を評価することができる。また少数のデータ点への適用も可能な技術となる。

    本ブログではこのノンパラメトリックベイズ学習とガウス過程に関して以下に詳細技術を述べる。

    実装

    ディリクレ過程(Dirichlet Process, DP)の概要とアルゴリズム及び実装例について

    ディリクレ過程(Dirichlet Process, DP)の概要とアルゴリズム及び実装例について“。ディリクレ過程(Dirichlet Process, DP)は、無限次元の確率分布を扱うための強力な道具で、ベイズ非パラメトリックモデルの中心的な役割を果たしており、クラスタリングやトピックモデリングなどに応用されるものとなる。

    階層的ディリクレ過程 (HDP)の概要とアルゴリズム及び実装例

    階層的ディリクレ過程 (HDP)の概要とアルゴリズム及び実装例。階層的ディリクレ過程 (Hierarchical Dirichlet Process, HDP) は、無限混合モデルを扱うためのベイズ非パラメトリック手法の一つであり、特に、複数のグループにまたがるデータに共通のクラスタを持たせつつ、各グループに独自のクラスタ構造を許容する際に使用されるものとなる。

    中国料理店過程 (Chinese Restaurant Process)の概要とアルゴリズム及び実装例

    中国料理店過程 (Chinese Restaurant Process)の概要とアルゴリズム及び実装例。中国料理店過程 (Chinese Restaurant Process, CRP) とは、”ディリクレ過程(Dirichlet Process, DP)の概要とアルゴリズム及び実装例について“でも述べているディリクレ過程 (Dirichlet Process, DP) を直感的に説明するために用いられる確率モデルとなる。特にクラスタリング問題に頻繁に使われている。

    棒切り分割プロセス(Stick-breaking Process)の概要とアルゴリズム及び実装例

    棒切り分割プロセス(Stick-breaking Process)の概要とアルゴリズム及び実装例。棒切り分割プロセス (Stick-breaking Process) は、”ディリクレ過程(Dirichlet Process, DP)の概要とアルゴリズム及び実装例について“でも述べているディリクレ過程 (Dirichlet Process, DP) を直感的に理解するための代表的な手法で、長さ1の棒を無限に繰り返しランダムに分割して、無限次元の確率分布を生成するアプローチとなる。これは、ディリクレ過程の離散的な確率測度を構成するための視覚的かつ数学的に美しい方法となっている。

    ディリクレ過程混合モデル(Dirichlet Process Mixture Model, DPMM)の概要とアルゴリズム及び実装例について

    ディリクレ過程混合モデル(Dirichlet Process Mixture Model, DPMM)の概要とアルゴリズム及び実装例について。ディリクレ過程混合モデル(Dirichlet Process Mixture Model, DPMM)は、クラスタリングやクラスタ分析において非常に重要なモデルの一つであり、DPMMは、ベイジアン非パラメトリクスの枠組みで、クラスタ数を事前に決定する必要がなく、データから自動的にクラスタを推定することができる特徴がある。

    ベイズ推定の概要と各種実装

    ベイズ推定の概要と各種実装。ベイズ推定は、確率論的なフレームワークに基づいた統計的推論の手法の一つであり、不確実性を取り扱う機械学習技術となる。ベイズ推定の目的は、データと事前知識(事前分布)を組み合わせて、未知のパラメータの確率分布を推定することとなる。ここでは、このベイズ推定に関する概要と応用事例および各種実装について述べている。

    マルコフ連鎖モンテカルロ法の概要と実装について

    マルコフ連鎖モンテカルロ法の概要と実装について。マルコフ連鎖モンテカルロ法(Markov Chain Monte Carlo, MCMC)は、確率分布からのサンプリングや積分計算を行うための統計的手法となる。MCMCは、マルコフ連鎖(Markov Chain)とモンテカルロ法(Monte Carlo)の組み合わせとなる。ここでは、このMCMCに対して、様々なアルゴリズムと適用事例および実装例について述べている。

    カルバック・ライブラー変分推定の概要と各種アルゴリズム及び実装

    カルバック・ライブラー変分推定の概要と各種アルゴリズム及び実装。カルバック・ライブラー変分推定(Kullback-Leibler Variational Estimation)は、確率分布間の差異を評価し、それを最小化することで、データの確率モデルを近似的に推定する手法の一つであり、この手法は、ベイズ統計学や機械学習、情報理論の文脈で広く使用されている。主な用途は以下のようになる。

    ベイズ構造時系列モデルの概要と適用事例及び実装例について

    ベイズ構造時系列モデルの概要と適用事例及び実装例について。ベイズ構造時系列モデル(Bayesian Structural Time Series Model; BSTS)は、時間とともに変化する現象をモデル化する統計モデルの一種であり、予測や因果推論を目的として利用されるものとなる。ここではこのBSTSに関しての概要と様々な応用事例及び実装例について述べている

    Black-Box Variational Inference (BBVI)の概要とアルゴリズム及び実装例について

    Black-Box Variational Inference (BBVI)の概要とアルゴリズム及び実装例について。Black-Box Variational Inference (BBVI)は、確率的プログラミングやベイジアン統計モデリングにおいて、複雑な確率モデルの事後分布を近似するための変分推論法の一種であり、変分推論は、事後分布を解析的に解くことが難しい場合に、近似的な手法を使って推論を行うものとなる。BBVIは”Black-Box”と呼ばれるのは、推論対象の確率モデルがブラックボックスとして扱われ、モデル自体の内部構造や尤度関数の形に依存せずに適用できるためであり、BBVIはモデルを確率分布の黒い箱(Black Box)として捉え、その内部構造を知らなくても推論が可能な手法と言える。

    Clojureでのガウス過程の実装

    Clojureでのガウス過程の実装。ガウス過程は関数形をランダムに出力する箱(確率過程)のようなものであり、例えばサイコロが1,2,3,4,5,6の自然数を生成する過程がサイコロのゆがみに依存するのと考えた場合、ガウス過程もパラメータ(この例ではサイコロの歪み具合)次第で関数の出現の様子(サイコロの目が出る確率を表した関数)が変化すると考える。

    ガウス過程回帰は、データ間の相関係数を用いて解析することから、カーネル法を用いたアルゴリズムが用いられたり、ベイズ解析的手法と組み合わせたMCMCを用いたアルゴリズム等が適用される。これらの解析に用いられるツールとして、MatlabやPython、R、Clojure等様々な言語でのオープンソースがある。今回はClojureでのアプローチについて述べる。

    GPy – Pythonを用いたガウス過程のフレームワーク

    GPy – Pythonを用いたガウス過程のフレームワーク今回はPythonを用いたガウス過程のフレームワークについて述べる。これらのライブラリーはClojureからも利用することができるがそれらは別途述べる。Pythonのフレームワークとしては汎用のscikit-learnのフレームワークの中にあるものを利用するものと、専用のフレームワークGPyとがある。GPyの方が多機能であるため今回はGPyについて述べる。

    Clojureを用いたベイズ最適化ツールの実装

    Clojureを用いたベイズ最適化ツールの実装。ベイズ最適化(bayesian optimization)は、少数標本と最低限の過程に基づいて確率的な予測を行うことのできる、ガウス回帰過程の特徴をフル活用した応用技術となる。

    具体的な例としては、医療や化学/材料研究等の実験計画において、実験を行いながら逐次的に次に行うべき実験パラメータの最適な組み合わせを抽出したり、機械学習におけるハイパーパラメータの学習/評価のサイクルを回しながら逐次的に最適化を行ったり、製造業での部品のすり合わせによる機能の最適化に用いられたりと広範囲に利用できる技術となる。

    ノンパラメトリックベイズの理論

    機械学習プロフェッショナルシリーズ-ノンパラメトリックベイズ 点過程と統計的機械学習の数理 読書メモ

    機械学習プロフェッショナルシリーズ-ノンパラメトリックベイズ 点過程と統計的機械学習の数理 読書メモ。さぁ、無限次元の扉を開こう!
    確率分布の基礎から時系列データやスパースモデリングへの応用までを明快に説く。理論的な背景である測度論も基礎から丁寧に解説する親切設計。新進気鋭のエース研究者が、満を持して執筆した。全ベイジアン必携!

    ノンパラメトリックベイズ点過程と統計的機械学習の数理の概要

    ノンパラメトリックベイズ点過程と統計的機械学習の数理の概要ノンパラメトリックベイズ技術は1970年台にすでに理論的には完成されてきた「古くて新しい技術」の一つになる。この技術は40年以上の時を隔てても様々な分野に利用されており、技術の特徴として(1)現象を表現するモデリングの柔軟性・幅広さと(2)広大なモデリング空間を効率よく探索するアルゴリズムが発展しているというものがある。

    ノンパラメトリックベイズモデルは、一言で言うと「無限次元」空間での確率モデルであり、それらを効率的に計算できるマルコフ連鎖モンテカルロ法に代表される近代的な探索アルゴリズムでもある。その適用先としては、フレキシブルな生成モデルによるクラスタリングや、統計モデルを用いた構造変化推定、因子分析やスパースモデリングへの応用等がある。

    確率的生成モデルに使われる各種確率分布について

    確率的生成モデルに使われる各種確率分布について。確率的生成モデルの近似モデルとして利用される各種確率モデル概要(スチューデントt分布、ウィシャート分布、ガウス分布、ガンマ分布、逆ガンマ分布、ディリクレ分布、ベータ分布、カテゴリ分布、ポアソン分布、ベルヌーイ分布)

    確率的生成モデルと学習の概要

    確率的生成モデルと学習の概要。確率的生成モデルは、データの生成過程を確率モデルによって表現した数理モデルとなる。今回は確率的生成モデルで用いられるデータの生成過程の表現方法と、生成モデルの推定問題としての統計的学習について述べる。

    具体例を用いたベイズ推定の概要

    具体例を用いたベイズ推定の概要。確率的生成モデルで利用するベイズ推定の基礎(交換可能性、デ・フィネッティの定理、共役事前分布、事後分布、周辺尤度等)を具体的な事例(ディリクレ-多項分布モデル、ガンマ-ガウス分布モデル)を元に計算する

    k-平均法とベイズ推定法(混合ガウスモデル)を用いたクラスタリングの比較

    k-平均法とベイズ推定法(混合ガウスモデル)を用いたクラスタリングの比較。今回はノンパラメトリックベイズモデルの準備として、有限混合モデルによるクラスタリングについて述べる。クラスタリングとは、類似したデータを同一のクラスに分類するデータマイニング技術の一つとなる。クラスタリングは、ノンパラメトリックベイズモデルの最も基本的な応用例となる。クラスタリングとしては代表的な手法であるK-平均アルゴリズムについて述べ、そのベイズモデルである有限混合ガウスモデルについて述べる。

    ノンパラメトリックベイズとクラスタリング(1)ディリクレ分布と無限混合ガウスモデル

    ノンパラメトリックベイズとクラスタリング(1)ディリクレ分布と無限混合ガウスモデル。今回はノンパラメトリックベイズモデルの導入としてディリクレ分布の無次元への拡張について述べる。ここでは直感的な理解を重視し、より数学的な内容は後述する。

    ノンバラメトリックベイズモデルの中心的な役割を果たすディリクレ過程混合モデル(Direchlet process mixture model)について述べる。ディリクレ過程混合モデルは、有限混合モデルを無次元拡張したものと見る事ができるため、無限混合モデル(infinite mixture model)とも呼ばれる。

    そもそもなぜこのような無限混合モデルが必要になったのか?一般的なクラスタリングでは、クラス数Kをあらかじめ決めておく必要があり、これは事前分布としてのディリクレ分布の次元数をあらかじめ決めておくことに相当している。

    しかし、現実の問題ではディリクレ分布の次元をどのように設定しておけば良いのかわからないことがしばしばあり、またデータ数が動的に変化する場合には、クラスタ数Kも動的に変化する必要が出てくる場合もある。

    ノンパトメトリックベイズとクラスタリング(2)分割の確率モデルとディリクレ過程

    ノンパトメトリックベイズとクラスタリング(2)分割の確率モデルとディリクレ過程。ノンパラメトリックベイズの分割の確率モデルの一つである中華料理店過程(Chinese Restaurant Process,CRP)とCRPの背後にあるディリクレ過程(Direchlet process)及び集中パラメータαの推定について。さらにその他の技術トピックとして棒折り過程(stick-breaking process,SBP)、逐次モンテカルロ法について。

    ノンパラメトリックベイズの構造変化推定への応用

    ノンパラメトリックベイズの構造変化推定への応用。今回は、ノンパラメトリックベイズモデルの応用として時系列データの構造変化推定について述べる。時系列データを解析する際の一つの問題設定として、データ構造変化推定が考えられる。データの性質の変化を分析する問題は変化点検出として幅広く研究されている重要なテーマとなる。ここでは、ディリクレ過程等の統計モデルを用いた方法について述べる。

    基本的なアイデアとしては各データがある確率を持って複数のモデルから生成されていると仮定し、時系列的な生成過程の変化を推定することで、データの構造的な変化を推定する。

    ノンパラメトリックベイズを用いた因子分析・スパースモデリングへの応用

    ノンパラメトリックベイズを用いた因子分析・スパースモデリングへの応用。今回は、因子分析・スパースモデリングにおけるノンパラメトリックベイズについて述べる。ここでは、ベータ過程というノンパラメトリックベイズモデルを構成するもう一つの確率過程を中心に述べる。

    アプローチとしては、ベータ-ベルヌーイ分布モデルを使った無限次元のバイナリ行列生成過程を考えるものとなる。具体的なアルゴリズムはインド料理ブュッフェ過程(Indian buffet process,IBP)と呼ばれている。これらをギブスサンプリングを用いて計算する。

    ノンパラメトリックベイズの理論の為の測度論の基礎

    ノンパラメトリックベイズの理論の為の測度論の基礎。ノンパラメトリックベイズモデルの基礎理論としての測度論に対する基礎知識について述べる。具体的な内容としてはランダム測度の独立性、ラプラス汎関数における単調収束定理、確率1で成り立つ命題、確率分布のラプラス変換、確率分布による期待値計算、確率分布、単調収束定理、単関数による近似定理、単関数、ボレル集合族を用いた可測関数、ボレル集合、σ-有限測度、σ-加法族、ルーベグ測度、ルーベク積分等がある。

    点過程からみるノンパラメトリックベイズ -ポアソン過程とガンマ過程

    点過程からみるノンパラメトリックベイズ -ポアソン過程とガンマ過程。ノンパラメトリックベイズモデルを構成する確立過程は、点過程(point process)という枠組みで統一的に見ることができる。展開ては、離散的に発生する事象を抽象化した「点」集合と各点が持つ「何らかの量」に関する統計モデルとなる。時間軸や平面、さらに一般的な空間上の「点」配置の確率的なメカニズムを解析するのに役立つ。ここでは点過程について概要を述べる。(加法過程、ポアソンランダム測度、ガンマランダム測度、離散性、ラプラス汎関数、点過程)

    点過程からみるノンパラメトリックベイズ – 正規ガンマ過程とディリクレ過程と完備ランダム測度

    点過程からみるノンパラメトリックベイズ – 正規ガンマ過程とディリクレ過程と完備ランダム測度。ここでは、ガンマ過程を正則化した正則化ガンマ過程について述べる。正則化ガンマ過程は、ディリクレ過程と深い関係にある。

    ポアソンランダム測度やガンマランダム速度は、完備ランダム測度という概念により統一的に理解することができる。

    ガウス過程の理論

      ガウス過程と深層学習の関係について述べられたコンテンツ

      ガウス過程と深層学習の関係について述べられたコンテンツ。Google Brainの研究者らによる論文[1711.00165] Deep Neural Networks as Gaussian Processesの紹介と、ガウス過程全般の参考サイトとベイズ深層学習の参考サイトに関しても紹介されている。

      機械学習プロフェッショナルシリーズ – ガウス過程と機械学習 読書メモ

      機械学習プロフェッショナルシリーズ – ガウス過程と機械学習 読書メモ

      ガウス過程と機械学習 – イントロダクション

      ガウス過程と機械学習 – イントロダクション機械学習は入力xに対して出力y(=f(x))のf(x)を現実のxとyから機械が計算して推定するものとなる。この時、最もシンプルなアプローチはy-f(x)を誤差eとしてこのeを最小にする解析的なもので、f(x)のパラメータが多く複雑になると計算が困難なるという課題を持つ。これに対してf(x)のパラメータが確率分布を持つ確率変数と考え、それらに事前確率(パラメータの推定値がわからない状態)と事後確率(現実のデータにより推定値の範囲がわかってきた状態)を想定して、ベイズ推定によりその確率変数(パラメータ)を推定するアプローチを確率的なアプローチと呼ぶ。

      ガウス過程は、この確率的アプローチを更に進め、f(x)の選択範囲を柔軟にし「ある程度の滑らかさを持つ関数であればなんでもあり(ガウス過程回帰)」としてそれらの関数のパラメータの確率分布をベイズ推定で求めるというものを考える。ガウス過程とは「振ると関数f()がポンと出てくるような箱」と考えればよく、これと実データのフィッティングを行うことで事後関数の雲が得られる。

      線形回帰モデル

      線形回帰モデル

      ガウス分布

      ガウス分布

      ガウス過程の概要(1) ガウス過程とカーネルトリック

      ガウス過程の概要(1) ガウス過程とカーネルトリック。ガウス過程は線形回帰モデルの重みを積分消去したものと見る事ができ、無次元のガウス分布と考えられる。ただし、データは常に有限であるので、ガウス過程は実際には、単なる有限次元の多変量ガウス分布となる。ガウス過程は、ランダムな関数を生成する確率分布でもある。

      今回はガイウス過程の概要とカーネルトリックとの関係について述べる。

      ガウス過程の概要(2)ガウス過程とカーネル

      ガウス過程の概要(2)ガウス過程とカーネル。今回はガウス過程のカーネルと線形モデルの基底関数との関係と、各種カーネル関数(Matternカーネル、文字カーネル、Fisherカーネル、HMMの周辺化カーネル、線形カーネル、指数カーネル、周期カーネル、RBFカーネル)のケースについてそれぞれ述べる。

      ガウス過程の概要(3)ガウス過程回帰モデル

      ガウス過程の概要(3)ガウス過程回帰モデル。前回までは、ガウス過程の導出とその性質について述べた。ここからはガウス過程に基づいて具体的にどのようにして回帰問題を解くことができるのかについて述べる。具体的には回帰問題の予測分布の計算を予測値が一つの場合と複数ある場合について述べ、さらにニューラルネットワークとの関係性について述べる。

      ガウス過程の概要(4)ガウス過程回帰のハイパーパラメータ推定と一般化

      ガウス過程の概要(4)ガウス過程回帰のハイパーパラメータ推定と一般化。ここまでの例ではカーネルのハイパーパラメータはθ1=1、θ2=0.4、θ3=0.1と手で与えていたが、これを推定するためにはどうすればよいのか?ハイパーパラメータをまとめてθ=(θ123)とおくと、カーネルはθに依存するから、kから計算されるカーネル行列Kもθに依存してKθとなる。

      これらは勾配降下法を用いて、SCG法、L-BFG砲などで最適化することができる。

      ガウス過程の概要(5)ガウス過程回帰の一般化

      ガウス過程の概要(5)ガウス過程回帰の一般化。今回はガウス過程の一般化としてガウス過程のコーシー分布をロバスト性担保、ガウス過程識別モデル、ポアソン分布を用いた機械の故障や素粒子の崩壊等について述べる。

      確率的生成モデルとガウス過程(1)確率モデルの基礎

      確率的生成モデルとガウス過程(1)確率モデルの基礎。現実世界における観測Yは、何らかの確立分布p(Y)からのサンプリングY〜p(Y)によってえられたものだという仮説のことを、観測Yの確率的生成モデルと呼ぶ。ここでは確率的生成モデリングの考え方として確率モデルの基礎(独立性、条件付き独立性、同時確率、周辺化とグラフィカルモデル)について述べる。

      確率的生成モデルとガウス過程(2)最尤推定とベイズ推定

      確率的生成モデルとガウス過程(2)最尤推定とベイズ推定。「現実世界における観測Yは、何らかの確率分布p(Y)からのサンプリングY〜p(Y)によって得られたものだ」とする仮説のことを、観測Yの確率的生成モデル(probabilistic generative model)もしくは確率モデル(probabilistic model)と呼ぶ。

      確率的生成モデルは仮説であるということに注意が必要となる。あくまでも仮説であるからには、これが真である保証はない。確率的要素を含む麻雀やバックギャモンのみならず、確率的要素を含まないはずの囲碁や将棋などの完全情報決定論的ゲームの勝敗記録データを、確率的生成モデルを用いて説明する場合もある。確率的生成モデルは仮説なので、同じ対象に対して複数の仮説p(Y)=p1(Y),p(Y)=p2(Y),…があってもかまわない。

      さらに仮説の違いをパラメータθで表して、確率的生成モデルを条件付き確率p(Y|θ)で表すことがある。このとき、このパラメトリックな条件付き確率をp(Y|θ)をパラメトリックモデル(parametric model)と呼ぶ。パラメトリックな確率的生成モデルにおいて、観測Yに基づいてパラメータθを決定することをパラメータの推定(estimation)と呼ぶ。

      最尤推定(maximum likelihood estimation)とは、パラメータを含む確率的生成モデルp(Y|θ)のパラメータθを、観測データの尤度関数(likelihood function)L(θ)=p(Y|θ)が最大になるように定める方法をさす言葉となる。

      ベイズ推定では「知りたいもの(未知パラメータθ)は、確率変数だ」と考える。またベイズ推定において未知パラメータθの「推定」とは、観測Xを得ることによって確率変数θの分布を更新することだと考える(確率変数の分布を表すために、分布関数、累積分布関数、確率密度などさまざまな表現方法がある。ここでは特に断りのない限り「確率変数の分布」とこれを表す「確率密度関数」を同一視する)。

      確率的生成モデルとガウス過程(3)確率分布の表現

      確率的生成モデルとガウス過程(3)確率分布の表現。ベイズ推定の第一の目的は未知の値の事後確率分布を求めることにある。ここで、確率分布を求めるとはどういうことなのか?について述べる。データを計算機に入力して、事後確率を計算によって求めるには、具体的にどのような作業を行えば良いのか?について考える。

      確率変数の確率分布を計算機上の数値によって表現する方法は、大きく分けて2つあり、それぞれパラメトリック(parametric)、ノンパラメトリック(nonparametric)な手法と呼ばれている。それらの確率分布の標本での表現としては重み付きサンプリング、カーネル密度推定、ニューラルネットを用いた分布推定等がある。

      ガウス過程の計算法(1)補助変数法による計算

      ガウス過程の計算法(1)補助変数法による計算。データ点数Nが大きい場合のガウス過程の計算はカーネル行列やその逆行列を求めるための計算コストがボトルネックとなる。このことから「ガウス過程法は理論的に面白いが実用的ではない」と信じる人も多い。しかし、様々な工夫により計算コストを大幅に節約するアプローチが存在する。ここでは、直接観測されない隠れ変数を間に挟む「補助変数法」という工夫と、それらの発展形態について述べる。

      ガウス過程の計算法(2)変分ベイズ法と確率的勾配法

      ガウス過程の計算法(2)変分ベイズ法と確率的勾配法。今回は、変分ベイズ法(variable Bayesian method,VB法)に基づいて確率的勾配法(stochastic gradient method)アルゴリズムを導出する。

      変分ベイズ法は未知隠れ変数やパラメータが複雑な階層構造を持つようなベイズ推定問題を数値最適化問題に帰着させる方法となる。確率的勾配法は、数値最適化問題をパラメータの逐次的な更新によって解くアルゴリズムであり、巨大なデータに基づいてニューラルネットワークなどの複雑なパラメトリックモデルのパラメータ決定を効率化するために必須の方法となる。特にデータ数Nが大きい場合のガウス過程回帰モデルの補助変数法においてハイパーパラメータθの最適化を行いたい場合に、補助変数法の計算効率をさらに改善することができる。

      ガウス過程の計算法(3)格子状補助点配置に基づくガウス過程法計算

      ガウス過程の計算法(3)格子状補助点配置に基づくガウス過程法計算。今回は、補助入力点を規則正しく格子状に配置することによって、ガウス過程の計算コストを大幅に削減する手法について述べる。ガウス過程の補助変数法において、補助入力点の個数を大きく設定しなければいけない場合があるが、補助入力点総数Mを増やしてしまうと、Mが小さいことを前提とした補助変数法の計算効率が失われてしまう。

      このようなときに、格子状補助入力点の工夫を適用することで、Mが大きくても(M>Nであっても)計算を効率化できる場合がある。クロネッカー法、テブリッツ法、局所的カーネル補間という3つのアイデアと、これをまとめたKISS-GP法について以下に述べる。

      ガウス過程の空間統計学、ベイズ最適化への適用

      ガウス過程の空間統計学、ベイズ最適化への適用。今回はガウス過程の特徴を有効に使った実応用例として、空間統計学、ベイズ最適化という課題に対するアプローチについて述べる。

      具体的にはどのような形状であるか不明である関数のモデル(ブラックボックスモデル)をガウス過程回帰の中で作る上で、ARD(自動的に次元選択をおこなってくれる工夫)と、Maternカーネル(共分散関数の多様性を用意してくれる工夫)の組み合わせを用いる方法について述べた。ARDとMaternカーネルの組み合わせは、十分な柔軟性をもつブラックボックスモデルを必要とする対象であれば、ベイズ最適化に限らず比較考慮に値する。

      ガウス過程による教師なし学習(1)ガウス過程潜在変数モデルの概要とアルゴリズム

      ガウス過程による教師なし学習(1)ガウス過程潜在変数モデルの概要とアルゴリズム。今回はガウス過程を使った教師なし学習について述べる。ガウス過程を扱うことにより、観測値Yが潜在変数Xから生成されているとする潜在モデルにおいて、XからYへの写像を非線形にすることができ、同時に問題を数学的に見通しよく定義することができる。これはニューラルネットワークによる潜在変数モデルを、より数学的に考えていることと等価となる。あわせて、ガウス過程にともなう潜在変数のサンプリングについても述べる。

      具体的にはガウス過程潜在変数モデル(Gaussian Process Latent Variable Model. GPLVM)と、ベイズガウス過程潜在変数モデル(Bayesian GPLVM)について述べる。

      ガウス過程による教師なし学習(2)ガウス過程潜在変数モデルの拡張

      ガウス過程による教師なし学習(2)ガウス過程潜在変数モデルの拡張。GPLVMでは、観測データの潜在座標Z=(x1,…,xN)はそれぞれ独立だとし、式(5)のように、Xの事前分布を\(p(\mathbf{X})=\prod_{n=1}^N p(\mathbf{x}_n)\)と仮定していた。しかし、実際にはXがクラスタ構造を持っていたり、時系列として関係があることも多いと考えられる。この場合、p(X)に適切な確率モデルを設計すれば、観察値の背後に隠れた潜在的な空間での構造を学習することができる。

      具体的な拡張モデルとして無限ワープ混合モデル、ガウス過程力学モデル、ポアソン点過程、対数ガウスCox過程、潜在ガウス過程、楕円スライスサンプリングについて述べる。

      ガウス過程雑記 – 関数の雲の利点と回帰モデルとカーネル法そして物理的モデルとの関係

      ガウス過程雑記 – 関数の雲の利点と回帰モデルとカーネル法そして物理的モデルとの関係。ガウス過程は関数形をランダムに出力する箱のようなものであり、こういう箱を確率過程と呼ぶ。ガウス過程により確率過程として関数の雲が得られることによる利点を3つ挙げる。(1)関数の雲が得られると、わからなさの程度がわかる。(2)関数の雲が得られると、自信のある領域とない領域の違いがわかる。(3)関数の雲が得られると、モデル選択や特徴選択ができる。

      回帰モデルと相関係数には、密接な関係がある。ガウス過程と深い関係があるカーネル法では、こうした背景からカーネル法を用いたHSIC(Hilbert-Schmit Independence Criterion)といった方法が近年提案され、通常の積率相関係数でとらえられない非線形な相関を高精度に測ることができることが示されている。カーネル法を使えば実数値やそのベクトルだけではなく、文字列やグラフ、木といった一般的なデータ構造に対してもカーネルが定義できるため、それらの間の相関を捉えることが可能になることも大きな利点となる。これらのカーネルはガウス過程でも用いることができる。

      「確率過程」や「ガウス過程」の理論は、もともと確率的にゆらぐ物理的運動の過程を記述するモデルとして生まれ、発展してきた。したがって、ガウス過程と規定ブラウン運動する粒子を思い浮かべるのは自然なこととなる。

      ニューラルネットワーク(深層学習)とガウス過程の等価性

      ニューラルネットワーク(深層学習)とガウス過程の等価性。Nealは”Bayesian Learning for Neural Networks“にて、1層のニューラルネットワークは隠れ層→∞の極限でガウス過程と等価であることをしめした。したがって、ニューラルネットワークの代わりにガウス過程を考えることで、ニューラルネットワークにおける多重の重みの最適化が不要になり、予測分布を解析的に求めることが可能となる。また、ガウス過程は確率モデルとして自然な構造を持っており、何が学習されるか予測できないニューラルネットワークと異なって、カーネル関数を通じて問題に関する事前知識を表現したり、時系列やグラフのように自明にベクトル化できない対象を見通しよく扱うことができるという利点がある。

      Clojureを用いた確率的プログラミング(Probabilistic Programming)

      Clojureを用いた確率的プログラミング(Probabilistic Programming)。以前ベイズモデル等の確率的生成モデルで述べたStanやBUSGS等は、確率的プログラミング(Probabilistic Programming:PP)とも呼ばれる。PPは確率モデルを何らかの形で指定し、それらのモデルの推論が自動的に実行されるプログラミングパラダイムとなる。それらの目的は確率モデリングと汎用プログラミングを統合して、株価の予測、映画の推奨、コンピュータの診断、サイバー侵入の検出、画像検出など、さまざまな不確実な情報に対して、様々なAI技術と組み合わせたシステムを構築することにある。

      今回は、この確率的プログラミングへのClojureでのアプローチについて述べる。

       

      コメント

      1. […] 機械学習技術サマリー 人工知能技術サマリー デジタルトランスフォーメーション技術サマリー 確率的生成モデルサマリー  ノンパラメトリックベイズとガウス過程 […]

      2. […] ノンパラメトリックベイズとガウス過程について […]

      3. […] 機械学習技術サマリー 人工知能技術サマリー デジタルトランスフォーメーション技術サマリー 確率的生成モデルサマリー  ノンパラメトリックベイズとガウス過程 […]

      4. […]   深層学習技術  ノンパラメトリックベイズとガウス過程  […]

      5. […] 機械学習技術 人工知能技術 デジタルトランスフォーメーション技術 確率的生成モデル  サポートベクトルマシン   ノンパラメトリックベイズとガウス過程 […]

      6. […] ガウス過程の詳細に関しては”ノンパラメトリックベイズとガウス過程について“を参照のこと。 […]

      7. […] ーパラメータの最適化など、実験的な評価や計算コストの高い最適化問題に利用する。ベイズ最適化に関しては”ノンパラメトリックベイズとガウス過程について“を参照のこと。 […]

      8. […] 確率的生成モデル スモールデータ ベイズ推論による機械学習 ノンパラメトリックベイズとガウス過程 python 経済とビジネス 物理・数学 […]

      9. […] 確率的生成モデル スモールデータ ベイズ推論による機械学習 ノンパラメトリックベイズとガウス過程 python 経済とビジネス 物理・数学 […]

      10. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2022年7月5日 4:17 AM […]

      11. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2023年6月15日 4:32 AM […]

      12. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2022年7月12日 3:40 AM […]

      13. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2023年6月6日 2:16 PM […]

      14. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2022年6月28日 4:16 AM […]

      15. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2023年8月9日 4:23 AM […]

      16. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2023年6月14日 2:23 PM […]

      17. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2023年12月21日 8:20 AM […]

      18. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2023年8月9日 10:16 AM […]

      19. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2022年6月27日 11:44 AM […]

      20. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2022年7月11日 8:50 AM […]

      21. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2023年9月6日 12:45 PM […]

      22. […] ノンパラメトリックベイズとガウス過程について | Deus Ex Machina より: 2023年8月25日 4:26 AM […]

      23. […] 確率的生成モデル 本ブログのナビ 深層学習技術 ノンパラメトリックベイズとガウス過程 […]

      24. […] 確率的生成モデル スモールデータ ベイズ推論による機械学習 ノンパラメトリックベイズとガウス過程 python 経済とビジネス 物理・数学 […]

      25. […] 最適化:Optimization Twitter Facebook はてブ Pocket LINE コピー 2024.12.24 2022.03.06 機械学習技術 人工知能技術 デジタルトランスフォーメーション技術 確率的生成モデル 本ブログのナビ 自然言語処理技術 マルコフ連鎖モンテカルロ法 深層学習技術 ノンパラメトリックベイズとガウス過程 […]

      26. […] 確率的生成モデル スモールデータ ベイズ推論による機械学習 ノンパラメトリックベイズとガウス過程 python 経済とビジネス 物理・数学 […]

      モバイルバージョンを終了
      タイトルとURLをコピーしました