はじめに
統計学が最強の学問であるというフレーズがブームになって久しいですが、正直この言葉に少し距離を感じていませんか?
- 最強なぶん難しそう
- 実務にどう使えるのか分からない
- 範囲が広すぎて、何から勉強すればいいのか分からない
統計モデリング(statistical modeling)は、そんな統計を実務で使えるツールに変えてくれる考え方です。実務の課題を統計的なモデルに落とし込むことで、勘や経験ではなく「データと数値」に基づいた判断を可能にします。
ただし、課題をモデルに落とし込むには、
- どんな課題に
- どんなモデルが向いているのか
を網羅的に理解しておく必要があります。本記事ではこのような知識を身につけたい方のために、
実務で使える統計モデリング手法とユースケースを網羅的に学べる
コンテンツを目指していきます。
サンプルコード
統計モデリングはRを用いた実装が多いですが、本記事ではAPIやクラウド等のシステム連携機能が豊富なPythonでの実装法を解説します。サンプルコードは以下のGitHubリポジトリにアップロードします。
目次
1. 統計と統計モデリングの基礎
1-1 統計モデリングの全体像と役立つ分野
1-2 統計モデリングから引き出せる判断
1-3 統計モデリングを実務に役立てる手順
1-4 確率分布とは
1-5 回帰による予測と誤差
1-6 統計モデリングと機械学習の違い
1-7 思考フレームワークとしての統計モデリング
2. Pythonで統計モデリングを実装するために
2-1 統計モデリング向けPythonライブラリと環境構築方法
2-2 データの取得方法
2-3 データの可視化方法
2-4 統計モデリングのための前処理
2-5 再現性の確保(乱数・seed)
3. 確率分布によるモデリング
3-1 よく使われる確率分布
3-2 データを確率分布にあてはめる方法(最尤推定)
3-3 最尤推定の誤差と過学習
3-4 モデルの性能評価と比較(交差検証とAIC)
4. 多変数確率分布によるモデリング
4-1 多変数の確率分布
4-2 多変数正規分布
4-3 ガウス混合モデル(GMM)とEMアルゴリズム
4-4 経験分布とk近傍法(k-NN)
5. GLMによる予測
5-1 GLMとは
5-2 1変数線形回帰モデル
5-3 多変数線形回帰モデル
5-4 その他のよく使われるGLM
6. カウントデータのモデリング
6-1 カウントデータの特徴
6-2 カウントデータのモデリング1(二項分布モデル)
6-3 カウントデータのモデリング2(ポアソン分布モデル)
6-4 カウントデータの予測モデル1(二項分布ロジスティック回帰)
6-5 カウントデータの予測モデル2(ポアソン回帰)
6-6 過分散のモデリング1(ベータ二項分布モデル)
6-7 過分散のモデリング2(負の二項分布モデル)
6-8 カウントデータの予測モデル3(ベータ二項回帰)
6-9 カウントデータの予測モデル4(負の二項回帰)
6-10 ゼロ過剰モデル
7. 時系列データのモデリング
7-1 時系列データの特徴
7-2 状態空間モデルとARモデル
7-3 トレンドと季節性の扱い(ARMA/ARIMA/SARIMAモデル)
7-4 時系列と回帰の組み合わせ(ARIMAX/SARIMAXモデル)
7-5 ETSモデル
7-6 時系列モデルの性能評価
7-7 時系列モデルによる異常検知
8. ベイズ統計モデリング
8-1 ベイズ推定の概要と最尤推定と比べたメリット
8-2 MCMC
8-3 ベイズ線形回帰モデル
8-4 二項ロジスティック回帰モデル(ベイズ推定)
8-5 ポアソン回帰モデル(ベイズ推定)
8-6 ガウス過程回帰
8-7 MCMCの収束テクニック集
9. GLMMと階層ベイズモデル
9-1 GLMMとランダム効果
9-2 ランダム効果による過分散のモデリング(二項ロジスティック回帰)
9-3 ランダム効果による過分散のモデリング(ポアソン回帰)
9-4 ランダム効果によるグループ差のモデリング(線形回帰)
9-5 ランダム傾きモデル
9-6 階層モデルが効く実務パターン集
おわりに
筆者の著書『まるごと学べる 異常検知の実践知』では、統計モデリングを異常検知で実践的に役立てる方法を紹介しています。本記事とセットで用いることで、実務での活用イメージがより湧くと思うので、興味があればぜひ手に取っていただければと思います!
