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

関連記事

Unityの薄い本

Windows10でPyTorchをインストールしてVSCodeで使う

C++の抽象クラス

3分の動画でプログラミングを学習できるサイト『ドットインストール』

Pythonの自然言語処理ライブラリ『NLTK(Natural Language Toolkit)』

書籍『3次元コンピュータビジョン計算ハンドブック』を購入

ドットインストールのWordPress入門レッスン

Managing Software Requirements: A Unified Approach

UnityでPoint Cloudを表示する方法

iOSで使えるJetpac社の物体認識SDK『DeepBelief』

Mask R-CNN:ディープラーニングによる一般物体検出・Instance Segmentatio...

Iridescence:プロトタイピング向け軽量3D可視化ライブラリ

COLMAP:オープンソースのSfM・MVSツール

pythonもかじってみようかと

Unityからkonashiをコントロールする

WordPressプラグインによるサイトマップの自動生成

ブログをGoogle App EngineからAmazon EC2へ移行

Pylearn2:ディープラーニングに対応したPythonの機械学習ライブラリ

iOSデバイスと接続して連携するガジェットの開発方法

Unityの各コンポーネント間でのやり取り

Pythonのソースコードに特化した検索エンジン『Nullege』

OpenCVで顔のランドマークを検出する『Facemark API』

libigl:軽量なジオメトリ処理ライブラリ

OpenCV 3.1とopencv_contribモジュールをVisual Studio 2015で...

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

Python拡張モジュールのWindows用インストーラー配布サイト

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

OpenCV3.3.0でsfmモジュールのビルドに成功!

OpenCV

UnityでARKit2.0

仮想関数

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

R-CNN (Regions with CNN features):ディープラーニングによる一般物体...

ManuelBastioniLAB:人体モデリングできるBlenderアドオン

Model View Controller

Webサイトのワイヤーフレームが作成できるオンラインツール

MPFB2:Blenderの人体モデリングアドオン

OpenGVの用語

Super Resolution:OpenCVの超解像処理モジュール

Raspberry Pi

スクレイピング

チャットツール用bot開発フレームワーク『Hubot』

コメント