Udemy講座 「NumPyro で学ぶベイズ統計モデリング【基礎編】」 の紹介

2022年12月3日

こちらは NumPyro という python のパッケージを使って、ベイズ統計モデリングを学ぶ講座です。

一般的にベイズ統計モデリングを学ぶ際にお勧めなのは、やはり R や Stan を使った下のような教科書が標準的かつお勧めなのではないかと思うのですが

Python ユーザがもっと気軽に学べるものはできないだろうか…ということで、今回こちらの講座を作らせて頂きました。

本講座の概要

こちらの講座は以前に公開した下の講座を NumPyro へ置き換えたものになっていまして、若干難易度が上がっています。

https://www.udemy.com/course/pymc3-basic/?referralCode=02D5D79859C11766DEE8

また、この講座では PyMC3 にあった「分布の重要性」に関する部分の講義を省いて、少しだけ流れをすっきりさせるようにしています。基本的な例題は PyMC3 の講座とほぼ同じですが、パッケージを NumPyro へ切り替えたことで、MCMC がスイスイ走るようになりました。

PyMC3 に比べると、NumPyro はモデルの記述方法は少しだけ煩雑に見えますが、この分野に少し知識のある人にはさほど大きな違いには見えないかと思います。また、例題を  Google Colaboratory へ特化させることで、例題を動かす際のハードルが少し低くなっている点も PyMC3 の講座とのちょっとした違いになっています。

NumPyro は、JAX と呼ばれる近年大きな注目を集めているライブラリを使った確率プログラミングのパッケージですので、新しい技術を積極的に試して見たい方にもお勧めの内容になっています。

NumPyro では、GPU や TPU によるパラメータの推論も比較的簡単に試してみることができますが、モデルによっては高速化しないことも多いので、講座の方では基本的に紹介していません。その代わりに、JAX の簡単な紹介を無料プレビューの部分に加えており、その部分で GPU や TPU による高速化の紹介をしています。

なお、NumPyro に関しては、PyMC3 とは異なり、日本語の情報が少ないため、困ったことが出てきたときに英語でも情報を探せることができないと苦しい部分もあるかもしれません。

注意点

こちらの講座は「統計」を学ぶ講座というよりは、どちらかと言うと「コード」の側にウェイトを置いた内容になっています。概念的な部分の説明もさせて頂いていますが、こうした部分は基本的にはオマケ的なものと考えて下さい(私自身は統計の専門家ではありませんので、多少力不足の部分もあるかと思います)。大雑把な話ではなく、本格的な統計分析を勉強されたい方はこちらの講座ではなく、しっかりした統計学の教科書にあたってみることをお勧めします。

講座へのリンク

https://www.udemy.com/course/numpyro-basic/?referralCode=061A188F2099A62D6B84

Udemy 講座

Posted by 管理者