PyMC:Pythonのベイズ統計ライブラリ

ベイズ統計を勉強するにあたって、本格的にPyMCを使ってみようと思い始めた。
PyMCを知ったきっかけは、前にも書いた通りこちらの資料↓
PyMCがあれば,ベイズ推定でもう泣いたりなんかしない

ということで、PyMCについて調べ始めた。

PyMCとは?

PyMCは、マルコフ連鎖モンテカルロ法を含むベイズ統計モデルとフィッティングアルゴリズムを実装したPythonモジュールです。柔軟性、拡張性が高く、多くの課題に適用できるでしょう。PyMCには、コアとなるサンプリング機能に加えて、出力、プロット、適合度や収束診断を行うための機能が備わっています。



GitHub上の洋書(?)「Probabilistic Programming and Bayesian Methods for Hackers」(プログラマーのための確率プログラミングとベイズ推定)の冒頭を翻訳した記事を見つけた。この本の「計算機を使って理解する」というポリシーが今のオイラにあってる気がする。(数式から入るの苦手)

プログラマーのための確率プログラミングとベイズ推定

ベイズ推論の入門書である本書「プログラマーのための確率プログラミングとベイズ推定」は, 計算機を使って理解することを優先しており,数学的な理解はその次である. もちろん入門書によくあるように,数学は説明しない場合もある(入門書なのだから). 十分な数学の知識がある読者は,数学に重点をおいている他の書籍を読んで好奇心を満たして欲しい. 数学の知識には自信がないが興味のある読者や, 数学には興味はなくベイズ推論の実践的な知識を得たい読者には,本書は最適で楽しめるはずである.

有志による日本語訳もまだあんまり進んでないみたいで、今から読むなら日本語訳に協力するぐらいの気持ちの方が良いのかも。

GitHubのページはこちら↓
https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers

どうやら、この本はiPythonのNotebook形式というものを利用しているようで、Webページ上で実行結果まで見れるようになっている。

追記:日本語訳の書籍が出た。
Pythonで体験するベイズ推論 PyMCによるMCMC入門

iPythonって、名前だけは聞いたことがあったけど、これを機にちょっと調べてみた。

iPythonとは?

Pythonを対話的に実行するためのシェルである。オリジナルのPythonと比較して、型推定を強化し、対話的実行のための文法を追加してあり、コード・ハイライティングおよびタブによる補完が行える。IPythonはSciPyパッケージの一部として公開されている。

これって、計算機科学系の人達の間ではもう常識なのかな。Webブラウザ上で対話的にpythonのコードが実行可能で、コード、コメント、図を含む出力結果を計算ノートみたいに表示できるらしい。
参考:IPython Notebookとnbviewerを使ってみた

そして、これを公開する仕組みnbviewerというのがあるらしい。

また芋づる式に知らないことが増えたなぁ。

追記:現在は名称が変わり、iPythonでなはくJupyter

関連記事

DensePose:画像中の人物表面のUV座標を推定する

uvでWindows11のPython環境を管理する

機械学習で遊ぶ

Amazon Web ServicesでWordPress

OpenAR:OpenCVベースのマーカーARライブラリ

OpenCVでPhotoshopのプラグイン開発

Google Colaboratoryで遊ぶ準備

Cartographer:オープンソースのSLAMライブラリ

RSSフィードを読込んで表示するWordpressプラグイン...

OpenCV

Google App Engineのデプロイ失敗

OpenCVで平均顔を作るチュートリアル

Composition Rendering:Blenderに...

iPhone x ロボットハッカソン~RomoのiPhone...

仮想関数

Blender 2.8がついに正式リリース!

AmazonEC2のインスタンスをt1.microからt2....

BlenderProc:Blenderで機械学習用の画像デー...

頭蓋骨からの顔復元と進化過程の可視化

konashiのサンプルコードを動かしてみた

FreeMoCap Project:オープンソースのマーカー...

WordPressのサーバ引っ越し方法を考える

Python for Unity:UnityEditorでP...

OpenCVで顔のモーフィングを実装する

OpenGVの用語

Javaで作られたオープンソースの3DCGレンダラ『Sunf...

Open3D:3Dデータ処理ライブラリ

Unityで画面タッチ・ジェスチャ入力を扱う無料Asset『...

ZBrushで作った3Dモデルを立体視で確認できるVRアプリ...

OpenMVSのサンプルを動かしてみる

C#で使える遺伝的アルゴリズムライブラリ『GeneticSh...

Verilog HDL

Kubric:機械学習用アノテーション付き動画生成パイプライ...

Unity ARKitプラグインサンプルのチュートリアルを読...

OpenMVS:Multi-View Stereoによる3次...

為替レートの読み方 2WAYプライス表示

Boost オープンソースライブラリ

Google App Engine上のWordPressでA...

ディープラーニング

viser:Pythonで使える3D可視化ライブラリ

OpenGVのライブラリ構成

Polyscope:3Dデータ操作用GUIライブラリ

コメント