「大人の教養・知識・気付き」を伸ばすブログ

一流の大人(ビジネスマン、政治家、リーダー…)として知っておきたい、教養・社会動向を意外なところから取り上げ学ぶことで“気付く力”を伸ばすブログです。目下、データ分析・語学に力点を置いています。

MENU

ベイズ統計学への入門(その01/X)

はじめに

 さまざまなテキスト

などを参照しながらベイズ統計学について学んでいきます。
 また理論だけでなく、可能な限りシミュレーションを含めていくこととし、それも\mathrm{R},\mathrm{Stan},\mathrm{Python}\mathrm{Julia}など幅広い言語で実装していきたい。

各種バージョン情報

  • OS

     Windows 11 Home 22H2
  • R

     R-4.1.3
  • RStudio

     RStudio 2022.02.2+485 "Prairie Trillium" Release (8acbd38b0d4ca3c86c570cf4112a8180c48cc6fb, 2022-04-19) for Windows
  • Python

     3.11.0
  • Jupyter Notebook

     6.4.12
  • Julia

     1.8.0

1. ベイズ分析とは何か?

 科学的な研究やマーケティング分析などのビジネスにおいてデータ分析が必要となる。その目的は、データに基づく

 ①現象の解釈

 ②将来の予測

の片方(もしくは両方)にある。そのための手段の1つに統計的なモデリングが存在する。
 統計的モデリングにはかつて、古典的統計学と呼ばれる枠組みによって行われてきた:

  1. 分析対象となる母集団から、
  2. 繰り返し一定の大きさの標本(サンプル)を無作為(ランダム)に抽出し、
  3. 標本を用いて未知の母集団の性質を統計的に推測する。

この母集団の性質を決める変数を母数(パラメータ)という。
 これとは異なる発想から成り立つデータ分析の手法としてベイズ分析(ベイズ統計学)が興隆しつつある。

1.1 統計推測手法を選択する際に根本的に注意すべき事

 ※本節は、今後、ベイズ統計学を一通り学んでから改めて読み返すことをお勧めする。

 一般に、問いが適切に設定されていないために答えが存在しないもしくは答えが一意に定まらない問題を不良設定問題という。このため不良設定問題では正当な答えが存在しない。
 統計的推測においては、真の確率モデルが分かっていたとしても真の事前分布が分かっている事例は珍しい。また確率モデルが真であると分からない場合も多い。したがって現実の問題では統計的推測はほとんどが不良設定問題であるという事をしっかりと認識しなければならない。不良設定問題で答えを得るためには、統計的推測を行なう人が何らかの選択(設定)を行なわなければならないと自覚することが大切である。
 統計的推測を行なうとき、選択できる手法候補はいくらでもあり、そこでベイズ推測を選ぼうとも、事後確率最大化推測を行なうとも、最尤推定を行なおうとも、いずれも不良設定問題に対して選択された解決法の1つに過ぎず、その選択に正当性はない。

 とはいえどの手法を選んでも同じというわけではない。手法間の精度を調べたり比較したりすることはでき得、比較した上でより精度が高いと期待できる手法を用いることを推奨することができる場合もある。

 一般に、不良設定の度合いが強い問題では、ベイズ推測が有効となる場合が多い。事後分布が正規分布で近似できる場合にはどのような推測方法を用いても推測制度はあまり変わらない。しかしその仮定に疑問があるような場合には、ベイズ法が有効になる場合が多い。

 このように統計的推測は多くの場合、

  「答えは存在しない→方法の選択→理論ないし実験による評価」

という過程を取る。

  「哲学・思想・原理→演繹的な導出→絶対的な推測」

は統計的推測において存在しない。

1.2 統計的モデリングの考え方


図表1 古典統計学ベイズ統計学の発想の違い

 
古典統計学
パラメータの扱い 真の値は未知だが固定された変数と想定する。 パラメータ自体を確率変数と見なす。
パラメータの推測方法 定量という統計量(標本の関数)から推論する。 パラメータの確率分布から推論する。
不確実性の源泉 標本およびそこから推論される推定量*1 パラメータ*2


 そもそも統計モデルとは、複雑な様相を呈する現実の社会現象・自然現象等を簡略化して表現したもの*3である。数学的には標本空間上で定義される確率分布族として定義され、パラメトリックな確率分布族は\{f(\boldsymbol{x}|\boldsymbol{\theta})|\boldsymbol{\theta}\in\Theta\}と表記される。ここでf(\boldsymbol{x}|\boldsymbol{\theta})はある確率密度関数\boldsymbol{\theta}は同確率密度関数に含まれるパラメータを意味し、\Theta\boldsymbol{\theta}の動く範囲を規定し母数空間という。このような統計モデルを構築する過程を総称して統計的モデリングという。


図表2 統計的モデリングにおける用語

1.2.1 古典的統計的モデリングの考え方

 古典的統計的モデリングを概念的に説明する。

  • まず観測データ\boldsymbol{X}_n=(\boldsymbol{x}_1,\cdots,\boldsymbol{x}_n)を得る。
  • 目的に応じて真のモデルg(\boldsymbol{x})を含むか否かは分かれるが、\{f(\boldsymbol{x}|\boldsymbol{\theta})|\boldsymbol{\theta}\in\Theta\}を想定する。すなわち「考慮している統計モデルf(\boldsymbol{x}|\boldsymbol{\theta})は真のモデルを完璧には記述できないが、統計的モデリングを上手くおこなうことで、真のモデルを精度よく近似しよう」*4と考える。
  • そしてあるモデル推定法を用いて統計モデルf(\boldsymbol{x}|\boldsymbol{\theta})に含まれるパラメータを推定した\hat{\boldsymbol{\theta}}を得、その推定値を統計モデルのパラメータとして用いる。これを真のモデルと比べて評価し、そのモデルの良さを考える。

 すなわち

  1. ある母集団を想定し、その特徴を決定づける母数(パラメータ)\boldsymbol{\theta}を持つある統計モデルf(\boldsymbol{x}|\boldsymbol{\theta})を設定する。
  2. 想定している母集団から得られた観測データ\boldsymbol{X}_n=\{\boldsymbol{x}_1,\cdots,\boldsymbol{x}_n\}に対して、あるモデル推定法(たとえば最尤推定法、一般化モーメント法、罰則付き最尤推定法、ロバスト推定法)により統計モデルf(\boldsymbol{x}|\boldsymbol{\theta})の母数を推定し、得られた推定値\hat{\boldsymbol{\theta}}を統計モデルのパラメータに利用する。
  3. 構成された統計モデルの良さをなんらかのモデル評価基準(例えば、\mathrm{AIC})により評価する。構成された統計モデルが十分満足するものであればそれを利用し、逆に、統計モデルのさらなる改善が必要な場合などは、それを反映させて最初に戻り、この手順を繰り返す。*5
1.2.2 ベイズ統計的モデリングの考え方

 ベイズ的統計モデリングでは、上述のモデリングよりも複雑になる。ベイズ的統計モデリングの枠組みでは、データがもたらす情報に基づき不確実なパラメータの値に関して合理的な判断を下すことを目指す。データが集まることでパラメータに関する不確実性が減少し、より正確な推論ができるようになっていくというものである。

  • パラメータ\boldsymbol{\theta}も確率変数とみなし、観測データ\boldsymbol{X}_nに対してのみならず、パラメータ\boldsymbol{\theta}に対しても確率分布\pi(\boldsymbol{\theta})を設定する。
  • この\pi(\boldsymbol{\theta})モデリングをする前(観測データを得る前)に予め有していた(主観的な)情報やそれ以前の情報などを織り込ませたものである*6
  • そこに観測データ\boldsymbol{X}_nの情報を加えてパラメータの確率分布を改めて構成(観測データを用いて事前分布を修正)して新たなパラメータの確率分布を得る。この分布を事後分布という。

 要約すれば

  1. 観測データ\boldsymbol{X}_n=\{\boldsymbol{x}_1,\cdots,\boldsymbol{x}_n\}に対して、ある統計モデルf(\boldsymbol{x}|\boldsymbol{\theta})を設定し、先験的情報を事前分布により表現する(例えば、パラメータ\boldsymbol{\theta}には事前分布\pi(\boldsymbol{\theta})を設定する。)
  2. 未知の量についてのベイズ推定を、その事後分布によりおこなう(たとえばパラメータ\boldsymbol{\theta}ベイズ推定には、事後分布\pi(\boldsymbol{\theta}|\boldsymbol{X}_n)を利用する)。
  3. ステップ2で構成された統計モデルの良さをなんらかのモデル評価基準により評価する。構成された統計モデルが十分満足するものであればそれを利用し、逆に、統計モデルのさらなる改善をしたい場合などは、それを反映させてステップ1に戻り、これを繰り返す。*7
1.2.3 Bayesの定理の考え方

 この事後分布構成の妥当性を裏付けるとともにその具体的な構成方法を与えるのが\mathrm{Bayes}の定理であり、それを模式図的に説明すれば


\begin{aligned}
事後分布&=補正項\times事前分布,\\
補正項&=\displaystyle{\frac{真の値の候補が正しいときにデータが実現する確率(密度)}{事前分布で平均したデータが実現する確率(密度)}}
\end{aligned}

となる(次回以降で詳説する。)。2つ目の式の右辺の分子は、ある真の値の候補が仮に正しいとしたときに観測されたデータが実現する確率を表し、それを尤度(ゆうど)という。同分母は事前分布で評価したデータの実現確率の期待値を表し、周辺尤度と呼ぶ。周辺尤度は「事前情報で真の値の可能性が高いパラメータの値に対応する尤度には高い確率を重みとしてかけ、真の値の可能性が低いパラメータの値に対応する尤度には低い確率を重みとしてかけて加重平均したものと解釈」*8できる。周辺尤度で割ることでこの補正項の大きさは規格化され、事後分布もまた確率分布になることが保障される。また分母は期待値であるからパラメータに依存せずにデータのみに依存し分子もまたデータの実現確率であるから、補正項はデータに依存する定数である。以上をことばで表現すれば、\mathrm{Bayes}の定理は、

パラメータの不確実性を事前に有している情報をもとに(仮置きして)事前分布として、それを実際のデータに基づいたときに実際に実現した蓋然性の大きい確率をより大きくする一方で実現した蓋然性の小さい確率はより小さくするという調整を与えたものを事後分布とする

という主張である。

 \mathrm{Bayes}分析には古典的統計学に基づく分析に比べ、いくつか利点がある。

  • データの数が少ない場合も多い場合も同一の枠組みで利用できる:古典的統計学ではデータ数の大小に応じて適用可能な理論が異なる。
  • データ以外の主観的情報を活用できる:古典的統計学ではデータしか情報を与えるものは(ほぼ)存在しない。ただし主観的情報を加えることで、科学的な分析のための客観性は多少喪失する場合がある。
  • 未知パラメータがデータ数よりも多くても分析できる:古典的統計学では特に推定方法によっては推定精度が悪い以前にそもそも推定が不可能な場合がある。
  • 人間の不確実化における意思決定に自然に結びついている:不確実下において合理的な行動を考える場合、事前に与えられた情報を制約としつつ得たデータを基に最良な打ち手を考えるというのはまさに\mathrm{Bayes}分析と同様の枠組みである。

参考文献

*1:定量は確率変数の関数である一方で、他方で、実際の観測値を推定量に代入して得た具体的な値は推定値と呼ぶ。これは既に不確実性は消えている。この相違に注意せよ。

*2:逆に言えば、観測する値自体は確率変数とは見なさない。

*3:安道知寛(2010)「ベイズ統計モデリング」朝倉書店 P.1参照。

*4:同前掲書 P.4参照。

*5:同前掲書 P.8参照。

*6:こうした反映できる情報をまとめて事前情報と呼ぶ。簡単のためにパラメータ空間が一次元である特定値以下の正の実数、すなわち\Theta=(0,a],a\in\mathbb{R},a\gt0と考えれば、もし何も情報を有していないのであれば、どの値が出やすいかについて自分は公平な立場であるから、想定すべき確率分布は一様分布であろう。他方で、ある特定の値が出やすいということを認識しているのであれば、そこを補正したものを事前分布に用いることになる。

*7:同前掲書 P.10参照。

*8:中妻照雄(2007)「入門ベイズ統計学」(朝倉書店) P.9参照。

プライバシーポリシー お問い合わせ