オーストラリアで勉強してきたMLデザイナーの口語自由詩

主に、データ分析・機械学習・ベイズ・統計について自由に書く。

英語記事の翻訳 - ”Bayesian Analysis with Python - 第二版(オズワルド・マーティン)“ への序文(2019)

TL;DR

最近出版された「Bayesian Analysis with Python - Second Edition」への序文をPyMC3のコア開発者であるThomas Wieckiがブログ記事で書いていたので翻訳してみました. 「Pythonによるベイズ統計モデリング: PyMCでのデータ分析実践ガイド」という訳書がすでに出版済みですが, こちらは第一版なので少し内容が異なるので注意が必要です. 具体的には最新の第二版では arviz による可視化などが含まれていたりします.

できるだけ直訳ではなく, 自然な日本語になるように言い換えたり, 言葉足らずだと感じた箇所にはあえて言葉を増やしたりしてます.

そんなに長くない記事なのですぐ翻訳できると思ってたんですが, 結局1時間かかってしまいました汗.

本文 - My foreword to "Bayesian Analysis with Python, 2nd Edition" by Osvaldo Martin

オズワルドが彼の新しい著書への序文を私に頼んできた時, 誇らしさや興奮した気持ちとともに少し怖さもあったが, 自然に受け入れることにした. これから, 私にとって確率プログラミングがどれだけ魅力的であるか出来るだけ伝えてみよう. オズワルドの素晴らしい本は, 見つけうる限りの中で最新の情報を提供しており, 確率プログラミングを学び始めるよい手がかりになるでしょう. さあ, この本を手に取ってみてください.

もしこれ以上にこの本を読む動機が必要な人には:

「確率プログラミング」はプログラミングのコードによってベイズ統計モデルを柔軟に構築するためのフレームワークです. 一度モデルを構築してしまえば, そのモデルとは独立に動作する強力な推論アルゴリズムによって, モデルをデータに適応(fit)させることができます. 柔軟なモデルと自動推論の仕組みは, 研究者が新しい統計モデルをすばやく構築・分析・改善するための強力なツールを提供します. 以前のベイジアンモデルの手法では, 推論アルゴリズムは通常は特定の一つのモデルに対してのみ機能しました. このアプローチはモデルを定式化して推論スキームを構築するために高い数学的スキルを必要とするのみならず, モデルを変更して再度推論するという改善の反復サイクルをかなり遅くしていました. 確率プログラミングは多くの人に統計モデリングを活用してもらえるための必要な数学的理解のハードルを下げ, 新規モデルを構築するための時間を効率化することによってデータから独自の考察を得ることを可能にするでしょう.

確率プログラミングのアイディはそんなに新しいものではありません. 最初にBUGSという確率プログラミング言語が1989年にリリースされました. この第一世代の確率プログラミング言語は, うまくデータに適合するモデルは非常に限られ推論の処理も遅く, あまり実用的なものではありませでした. 昨今ではより大規模で複雑な問題を解決するために, 学術の領域やGoogle, Microsoft, Amazon, Facebook, Uberなどの企業で使用されている多数の確率的プログラミング言語があります. 何が変わったのでしょうか? 確率プログラミングを単なるおもちゃから複雑で大規模な問題を解決できる強力なエンジンへと変えた重要な要素は, 従来のサンプリングアルゴリズムより数段強力なハミルトンモンテカルロサンプリング(HMC)の出現でした. もともとは1987年に考案されましたが, StanとPyMC3という最近の確率プログラミングシステムがこのサンプリング手法を幅広く利用可能なものにしました.

この本は確率プログラミングという非常に強力で柔軟なツールへの実用的な入門書です. この本を読むことで, 複雑な分析問題をどのように考え解決するかというあなたの思考に大きな影響を与えるでしょう. PyMC3のコア開発者であるオズワルド以上にこの本を書くに適した人は少ないでしょう. 彼には複雑なトピックを簡単に消化できるように細分化するという貴重な才能を持っています. 困難な経験を通して得られた彼の深く実用的な理解が読者を最も効率的なルートに導くことでしょう. また, 実行可能な可視化やコード例を通して, 理論的基礎を直感的に理解する手助けにつながります.

読者の皆様, この本を手に入れたことにも感謝します. 正直なところ, これは決して速くて簡単な方法ではありません. 現在および将来のすべての分析問題を解決するための技術としてディープラーニング(深層学習)を宣伝している時代には, 特定の目的のためにカスタムモデルを構築するより慎重で慎重なアプローチはそれほど魅力的ではないかもしれません. しかし, 他の方法ではほとんど解決できない問題を解決することができるのです.

ディープラーニング(深層学習)が非常に刺激的なテクニックであることは言うまでもありません. 実際, 確率プロギグラミング自体は古典的な統計モデルに成約されていません. 現在の機械学習の文献を読むと, ベイズ統計が次世代のディープニューラルネットワークを表現し理解するための強力なフレームワークとして浮上していることがわかります. この本は, このように難しい分析問題を解決するためのスキルのみならず, AI(人工知能)開発という人文科学の最前線の特等席に座る手助けをするでしょう. Enjoy!

Thomas Wiecki

参考資料