2020/03/07
2020/04/14
ベイズの定理の導出と考え方をわかりやすく解説
ベイズ統計学は、ベイズの定理から発展した統計学です。ここでは、ベイズの定理とその式から得られる重要な考え方について、初学者にもわかりやすく説明していきます。
ベイズ統計の超基本的な解説はこちら⇨ベイズ統計学とは?初心者向けのやさしい解説
準備
ベイズの定理を考える舞台として、まず全事象Ωを考えます。
これは目的の変数が取りうる全ての離散値(整数・自然数などの飛び飛びの値)の集合となります。
イメージがつかない人は、サイコロで出る目の集合と考えると分かりやすいです。
さらに、全事象をいくつかの既知情報\(A_1,…,A_n\)に分割します。(ここではn=5とします)
\(A_1,…,A_n\)は互いに交わらず、かつ全て合わせると全事象Ωになるように構成します。
これらの事象が成り立つ確率\(P(A_1),…,P(A_n)\)を事前確率と呼びます。
事前確率は予め分かっているものとします。
次に、新規情報\(B\)が発生したとします。
すると、\(B\)は必ず\(A_1,…,A_n\)のどれかと交わります。
このとき、「新規情報\(B\)が発生した状況で、それまで既知情報だった\(A_i\)が発生する確率」を求めたい場合がしばしばあります。
実はこの確率\(P(A_i|B)\)が事後確率と呼ばれるもので、事後確率を求めるための定理が「ベイズの定理」なのです。
ベイズの定理(離散型)
ここまで定義して、離散型のベイズの定理が説明できます。
$$P(A_i|B)=\frac{P(B|A_i)P(A_i)}{\sum_{i=1}^{n}P(B|A_i)P(A_i)}$$
それぞれの確率は以下のように呼ばれます。
\(P(A_i)\):事前確率
\(P(A_i|B)\):事後確率
\(P(B|A_i)\):尤度
\(\sum_{i=1}^{n}P(B|A_i)P(A_i)\):周辺尤度
ベイズの定理を使うと、新しい情報(\(B\))が得られたときに、既存の事象(\(A_i\))の確率を更新することができます。
ベイズの定理(連続型)
前節では離散型のベイズの定理を説明しましたが、現実世界の変数の多くは離散値ではありません。
途切れなく続く、連続値を取る変数です。(身長・体重など)
そこで、ベイズの定理を連続型に拡張しましょう。
$$\pi(\theta|x)=\frac{f(x|\theta)\pi(\theta)}{\int_{\theta}f(x|\theta)\pi(\theta)d\theta}$$
ここで、離散型の記号は以下のように読み替えられます。
既知情報\(A_1,…,A_n\)は\(\theta\)となり、パラメータを指します。
新規情報\(B\)は\(x\)となり、データを指します。
つまり、連続型のベイズの定理は「新しいデータ\(x\)が与えられた状況で、それまで既知だったパラメータ\(\theta\)が取り得る値の分布」を求めていることになります。
連続型の場合、\(\pi(\theta)\)を事前分布、\(\pi(\theta|x)\)を事後分布、\(f(x|\theta)\)を尤度、\(\int_{\theta}f(x|\theta)\pi(\theta)d\theta\)を周辺尤度と呼びます。
この「新しいデータで既知の確率・分布を更新する」という考え方が、現在の機械学習の手法と非常に相性が良く、ベイズ統計学は日の目を見ることとなりました。
ベイズの定理の導出
離散型の場合を証明します。
条件付き確率の定義式は以下の通りです。
$$P(A|B)=\frac{P(A\cap B)}{P(B)} , P(B|A)=\frac{P(A\cap B)}{P(A)}$$
この2つの定義式より
$$P(A\cap B)=P(A|B)P(B)=P(B|A)P(A)$$
であるから、
$$P(A|B)=\frac{P(B|A)P(A)}{P(B)}…(1)$$
が得られます。
次に、\(A\)の取りうる値が複数あるとすると、\(A_i(i=1,2,…,n)\)が互いに独立である\(^{*1}\)という条件の下では
$$P(B)=\sum_{i=1}^{n}P(A_i \cap B)=\sum_{i=1}^{n}P(B|A_i)P(A_i)…(2)$$
これより\(P(B)\)が変形できるので、(1)に(2)を代入して
$$P(A_i|B)=\frac{P(B|A_i)P(A_i)}{P(B)}=\frac{P(B|A_i)P(A_i)}{\sum_{i=1}^{n}P(A_i)P(B|A_i)}$$
となり、離散型のベイズの定理が得られます。
連続型は厳密な証明は省略しますが、手順は離散型と同じです。簡単に考えれば、事前確率\(P(A_i)\)を事前分布\(\pi(\theta)\)に、事後確率\(P(A_i|B)\)を事後分布\(\pi(\theta|x)\)に、尤度\(P(B|A_i)\)を\(f(x|\theta)\)に、周辺尤度\(\sum_{i=1}^{n}P(B|A_i)P(A_i)\)を\(\int_{\theta}f(x|\theta)\pi(\theta)d\theta\)に、それぞれ変換してあげれば連続型を得ることができます。
\(^{*1}\)ベイズ統計はほぼ全てベイズの定理を元に構築されています。したがって、ベイズ統計ではパラメータが全て独立であるということが大前提です。特に、ベイズ統計ではi.i.d(独立かつ同一分布)という条件が出てくるので、覚えておきましょう。
ベイズの定理から考えられること
以下、連続型で話を進めます。
連続型のベイズの定理の分母(周辺尤度)に注目すると、もともと\(x\)は定数であり、\(\theta\)で積分しているので、周辺尤度は定数になります。つまり、比例の記号\(\propto\)を用いて
$$\pi(\theta|x)\propto f(x|\theta)\pi(\theta)$$
と表すことができます。これを日本語でわかりやすく言い換えると、
$$事後分布\propto 尤度\times 事前分布$$
となります。これは、事後分布は尤度と事前分布によって与えられるということです。
このようにベイズ統計では、事前分布、尤度関数、事後分布と3つの分布が出てくることに注意してください。
そしてこの式は非常に重要です。この式の解釈を例を用いて考えていきます(厳密な計算はやりません)。
男性の身長の平均について考えます。いま事前情報として、男性の身長の母平均\(\mu\)が平均\(170\)、分散\(\tau^2\)の正規分布に従っている分布を持っているとします。いま、データとして、\(N(\mu,10^2)\)に従う母集団から標本\(175\)を得たとします。このとき、事後分布はどのようになるでしょうか。
ここで、事前分布は\(\mu〜N(170,\tau^2)\)ですね。例えば\(\pi(165)\)は、母集団の平均が\(165\)である確率をさします。では尤度はどうなるでしょうか?
尤度は\(f(x|\theta)\)、つまり、いまパラメータは\(\mu\)であるから、\(f(x|\mu)\)と表せられます。これを言葉で表すと、母平均\(\mu\)が与えられた上で、そのデータが得られる確率といえます。頻度論の考え方と似ていますね。
さて、『母平均\(\mu\)が与えられた上で』とあるので、変数\(\mu\)に値を与えなければいけません。例えば\(\mu=165\)を与えると、\(f(x=175|\mu=165)\)は、母平均が\(165\)である母集団分布からデータ\(175\)が得られる確率となります。例えば\(\mu=175\)を与えると、\(f(x=175|\mu=175)\)は、母平均が\(175\)である母集団分布からデータ\(175\)が得られる確率となります。このように、母数\(\mu\)によって尤度関数が動きます。この確率分布を当サイトでは『母数が規定する確率分布』という表現で表すことにします。
上に挙げた事前分布と尤度の積が事後分布に比例します。つまり、例えば、データが与えられた上での母集団の平均が\(165\)である確率\(\pi(\theta=165|x=175)\)は、事前情報(母集団の平均が\(165\)である確率)と尤度(母平均が\(165\)である母集団分布からデータ\(175\)が得られる確率)の積によって表すことができるのです。この\(\theta\)をパラメータの取り得る値全体で動かせば、事後分布が得られます。
Recommended