MCMC
今更ながら確率的プログラミングのライブラリEdwardを試してみました。 http://edwardlib.org/tutorials/ 確率的プログラミング 統計的なモデルの(ベイズ)推定が出来るという点でstanやpymcと似ていますが、Edwardはより広く確率的プログラミング(Probabilis…
Stan Advent Calendar12/20の記事です。 Stan version2.10.0で実装されたExhaustive HMC(xHMC)というアルゴリズムについて 論文Identifying the Optimal Integration Time in Hamiltonian Monte Carlo の内容に基づいて説明します。
stan開発者の一員であるBetancourtさんを招いたTokyo.stanを聴きにいきました。 Michael Betancourt's Stan Lectureを開催しました - StatModeling Memorandum 自分はstanを余り使いこなせていないのですが、主にアルゴリズムと実装に関する感想を書きます。
pymcはpythonの文法の枠内で統計モデルが書けてMCMCを実行することで推定が出来るライブラリです。 最近開発に色々な進展があったので勉強しています。 https://pymc-devs.github.io/pymc3/
局所的な近似によるMCMCの高速化論文が話題になりました。 http://japan.zdnet.com/article/35073667/論文Accelerating Asymptotically Exact MCMC for Computationally Intensive Models via Local Approximations を読んで理解した範囲の内容を書きます。
pythonのMCMCライブラリとしてemceeというのがあるらしいので試してみました。 Paralell tempering(レプリカ交換モンテカルロ法)が使えるの他のライブラリとの大きな違いになります。http://dan.iel.fm/emcee/current/
Particle Markov chain Monte Carlo methods (PMCMC)時系列の推定とモデル(のパラメータ)の推定においてParticle filter(SMC)とMCMCを組み合わせた手法があり、その分かりやすい解説としてParticle Markov chain Monte Carlo methods(pdf)というドキュメント…
主にipython notebookです。
Hamilton Monte-Carlo法(Hybrid Monte-Carlo法)はMCMCによる分布関数のサンプリングを高速化させる手法の一つであり、近年StanやTheanoなど統計的解析を行うためのプログラミング言語に実装させており、注目を集めています。 今回は混合ガウス分布に対するそ…
GPUでモンテカルロ法の計算をしたくなったりした場合には普通CUDA,OpenCLを使うことになります。 C++でプログラミングする必要があるのですが、変数の確保、解放などで記述が長くなりがちです。pythonを用いると記述を簡潔にできるところが多いらしいので関…