default eye-catch image.

同時確率分布と周辺確率分布の関係と独立性の定義

[mathjax] 確率変数XとYが微妙に連動して動くときに何が起こっているのか。 状態空間モデルとベイズ統計で理解が必須なので、全くわからないながらもまとめてみる。 2次元確率分布の共分散と相関係数は次回で、まずは確率変数の独立性について。 互いに独立 40近いおっさんが久々に数式をこねくりまわして、\"互いに独立\"の定義を読むところまで来た。 たぶん、厳密ではないんだろうけども...。 2つの確率変数X,Yがあったとして、X,Yの2変数からなる確率分布を検討する。 (X=x)であり同時に(Y=y)である確率(P(X=x,Y=y)=f(x,y))とする。 (f(x,y))の読み方は(x,y)の同時確率分布(joint probability distribution)。 確率分布なので、全部足したら1になる。 begin{eqnarray} sum_x sum_y f(x,y) = 1, f(x,y) geq 0 end{eqnarray} X,Yという2次元の確率変数を使ったとして、それが同時に起こる事象Aも2次元となる。 ((X,Y)という全ての集合のうち、特別な事象Aを選んだとしてもAは2次元。) begin{eqnarray} P((X,Y) in A) = sum _A sum f(x,y) end{eqnarray} X,Yを連続値としたとき、確率を定義できる空間(2次元ユークリッド空間(S)...)において、 X,Yが同時に起こる特別な事象A((S)の部分集合)で定義できる。 (大学1年くらいにやるやつだ...) begin{eqnarray} iint_S f(x,y)dydx = 1, f(x,y) geq 0 \\ P((X,Y) in A) = iint_A f(x,y)dydx end{eqnarray} 2変数の片方について合計、または積分した分布を検討する。 この分布の呼び方は周辺確率分布(marginal probability distribution)。 begin{eqnarray} g(x) &=& sum_y f(x,y) \\ h(x) &=& sum_x f(x,y) end{eqnarray} [arst_adsense slotnumber=\"1\"] ここからが「互いに独立」の定義の読み方。 2変数関数を片方の変数で積分して1変数にする方向の操作は可能で、 そうやって同時確率分布から周辺確率分布を求められる。 離散型の場合はマトリクスの縦・横いずれかを固定してループして足す操作。 では、それぞれの周辺分布関数の値から同時確率分布の値を求められるか?? この操作は出来る場合と出来ない場合がある。 出来る例は(既に互いに独立であることを意識しつつも)2つのサイコロ振り。 サイコロ1の目(X_1)とサイコロ2の目(X_2)について、同時確率分布、周辺確率分布が以下であるとする。 123456(h(x)) 1(frac{1}{36})(frac{1}{36})(frac{1}{36})<td(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{6}) 2(frac{1}{36})(frac{1}{36})(frac{1}{36})<td(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{6}) 3(frac{1}{36})(frac{1}{36})(frac{1}{36})<td(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{6}) 4(frac{1}{36})(frac{1}{36})(frac{1}{36})<td(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{6}) 5(frac{1}{36})(frac{1}{36})(frac{1}{36})<td(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{6}) 6(frac{1}{36})(frac{1}{36})(frac{1}{36})<td(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{36})(frac{1}{6}) (g(x))(frac{1}{6})(frac{1}{6})(frac{1}{6})(frac{1}{6})(frac{1}{6})(frac{1}{6})1 周辺確率の積が同時確率の積にならないケースがない。 かなり稀なケース。 出来ない例は、上記の奇跡的なケース以外の全てで、 以下の通り、周辺確率を掛け合わせても同時確率にならない。 123(h(x)) 1(frac{1}{8})(frac{2}{8})(frac{3}{8})(frac{6}{8}) 20(frac{1}{8})0(frac{1}{8}) 3(frac{1}{8})00(frac{1}{8}) (g(x))(frac{2}{8})(frac{3}{8})(frac{3}{8})1 同時確率が全て(frac{1}{9})であれば、周辺確率の積から同時確率の積を計算できるがそうでない。 (frac{1}{9})と比較して大きい同時確率、小さい同時確率が存在するということは、 (X_1,X_2)が協調して動く傾向の度合いが効いている。 日本工業規格の定義は、 「互いに独立」の必要十分条件は、「周辺分布関数の積が同時分布関数になること」。 [arst_adsense slotnumber=\"1\"]

default eye-catch image.

幾何分布と「過去の結果からは何もわからない話」

[mathjax] いつか起こる大地震がもし昨日起きたとしたら明日起こる確率は下がるのか? 飛行機が昨日落ちたとしたらしばらくは飛行機は落ちないのか? うまくいかない人生が今日またうまくいかなかったとして将来うまくいかない確率は下がるのか? 起こるか起こらないかの確率が変わらないのであれば、将来は過去に影響されないらしい。 影響されるかどうか、と聞かれるとされない、と答えるだろうけど、それを説明することができるらしい。 そんな無記憶性の件読んでみたのでまとめてみる。 統計学入門とこちらを参考にさせて頂きました。 幾何分布 幾何分布 二項分布、ポアソン分布は(n)回の試行のうち(x)回事象(A)が発生したときを話題にしていた。 前提を少し変えて、予め試行する回数を決めないで、 (x)回目の試行で初めて事象(A)が発生した、 という話をすることもできる様子。 確率変数(x)が等間隔に並ぶ時刻であるとすることで、 事象(A)が発生するまでの待ち時間に関する確率分布を作れる。 (x)回目の試行で初めて事象(A)が起こった、ということを、 (x-1)回事象(bar{A})が起こり、次に事象(A)が起きたと考える。 事象(A)の生起確率を(p)、事象(bar{A})の生起確率を(q)とすると、 その確率は以下のようになる。 begin{eqnarray} f(x) = p cdot q^{x-1} end{eqnarray} (x)の増加1回に対して(q)を1回かける構造で、公比(q)の等比数列になっている。 等比数列って英語でgeometric seriesって言うもんだから、幾何分布っていう名前がついてる様子。 (f(x))の確率変数(x)は事象(A)が発生するまでの試行回数(時間)である、と読む様子。 では確率変数(X)が幾何分布に従うとき、期待値はどうかというと(frac{1}{p})となる。 確率の以下の読み方から、(x)回の試行に平均して(frac{1}{p})回かかる、というのは妥当に見える。 事象(A)の生起確率(p)の読み方について、その逆数(frac{1}{p})は、事象(A)が起こるまでの試行回数と読む。 (p)回の試行で初めて事象(A)が起こった、というシーンで事象(A)の生起確率を(p)と置いているので..。 期待値 幾何分布の期待値は(frac{1}{p})。ベルヌーイ試行の確率が(p)であるならば、平均(frac{1}{p})回で事象が起こる。 分散は(frac{1-p}{p^2})。期待値の証明は以下の通り。へぇ。 begin{eqnarray} E(X) &=& sum_x x cdot f(x) \\ &=& sum_x x cdot p q^{x-1} end{eqnarray} (E(X)がfrac{1}{p})であることを示したい。 恒等式を使ってやる奴ではなく、愚直にやる奴を書く。 まず、(q=1-p)として(E(X))を変形しておいてスタート。 begin{eqnarray} E(X) &=& sum_x x cdot p (1-p)^{x-1} \\ &=& p sum_x x cdot (1-p)^{x-1} end{eqnarray} 右辺を生み出すために、(frac{1}{x-1})のテイラー展開を持ち出す。 begin{eqnarray} frac{1}{1-x} &=& 1 + x + x^2 + cdots \\ &=& sum_{k=0}^{infty} x^k end{eqnarray} 左辺を(x)で微分すると以下の通り。 begin{eqnarray} left( frac{1}{1-x} right) frac{d}{dx} = frac{1}{(1-x)^2} end{eqnarray} 右辺を(x)で微分すると以下の通り。 begin{eqnarray} sum_{k=0}^{infty} x^k frac{d}{dx} = sum_{k=1}^{infty} k x^{k-1} end{eqnarray} なので、 begin{eqnarray} frac{1}{(1-x)^2} = sum_{k=1}^{infty} k x^{k-1} end{eqnarray} (x=1-p)として式変形すると、 begin{eqnarray} frac{1}{p^2} = sum_{k=1}^{infty} k (1-p)^{k-1} end{eqnarray} (E(X))にこれらを代入すると、 begin{eqnarray} E(X) &=& p sum_x x cdot (1-p)^{x-1} \\ &=& p cdot frac{1}{p^2} \\ &=& frac{1}{p} end{eqnarray} 本当に(frac{1}{p})になった。 両辺を微分したものが等しいって、なんでだっけ? 無記憶性 どうも、世の中には(n-1)回連続して失敗して(n)回目で初めて成功することを言っているものと、 (n)回連続して失敗して、(n+1)回目で初めて成功することを言っているものがある。 期待値も分散も若干違うものになる。 ここからは(n)回の失敗に続いて(n+1)回目で初めて成功するケースに切り替える。 その時の確率を(P(X=n))とする。で、失敗が(n)回以上連続して起こる確率(P(Xgeq n))を考える。 begin{eqnarray} P(X geq n) &=& P(X=n) + P(X=n+1) + P(X=n+2) + cdots \\ &=& p(1-p)^n + p(1-p)^{n+1} + p(1-p)^{n+2} + cdots \\ &=& p(1-p) left( 1 + (1-p)^1 + (1-p)^2 + cdots right) \\ &=& p(1-p) sum_{k=1}^{infty} (1-p)^{k-1} end{eqnarray} 途中の無限級数は(frac{1}{1-x})の級数展開になっていて、 以下みたいになる。 begin{eqnarray} P(X geq n) &=& p(1-p)^n sum_{k=1}^{infty} (1-p)^{k-1} \\ &=& p(1-p)^n frac{1}{1-(1-p)} \\ &=& p(1-p)^n frac{1}{p} \\ &=& (1-p)^n end{eqnarray} (n)回連続して失敗した上で、さらに連続して(k)回の失敗を重ねる確率を考える。 (n)回連続して失敗する確率は(P(Xgeq n))。 この条件の上でさらに(k)回失敗を重ねる確率は条件付き確率として(P(Xgeq n+k | X geq n))。 条件付き確率の定義と乗法定理から式を展開していく。(ここが難しかった...) begin{eqnarray} P(Xgeq n+k | X geq n) &=& frac{P((X geq n+k)cap (X geq n) )}{P(X geq n)} \\ &=& frac{P(X geq n+k)}{P(X geq n)} \\ &=& frac{(1-p)^{n+k}}{(1-p)^n} \\ &=& (1-p)^k \\ &=& P(X=k) end{eqnarray} ということで、以下が成り立つことがわかる。 begin{eqnarray} P(Xgeq n+k | X geq n) &=& P(X=k) end{eqnarray} よーく見てみると、(n)回連続して失敗した後に(k)回連続して失敗する確率と、 (n)回の失敗無しに、最初から(k)回連続して失敗する確率が同じである、と言っている。 凄まじいことに、(n)回連続して失敗することは、次の(k)回の失敗に全く影響を及ぼさない、と言っている。 何回失敗しようと次に失敗する確率はこれまでの失敗に影響されない。 つまり失敗する確率は過去の影響を受けない。 美しすぎる感じがする。

default eye-catch image.

ベイズの定理と解法例

[mathjax] ベイズの定理の例 以前、確率の乗法定理と共にベイズの定理の導出をおこなった。 [clink url=\"https://ikuty.com/2018/09/12/conditional_probability/\"] ちょっと慣れておきたいので、ベイズの定理を持ち出して問題を解いてみる。 18歳未満の子供が病気Dに罹患する確率は10%であるとする。 病気Dの検査法において、病気Dに罹患している子供が正しく陽性と判定される確率は96%、 誤って陰性と判定される確率は4%である。 逆に、病気Dに罹患していない子供が正しく陰性と判定される確率は98%、 誤って陽性と判定される確率は2%である。 ある子供が病気Dの検査を受けたときの結果が「陽性」であったとき、 実際に病気Dに罹患している確率を求めよ。 計算不可能な条件付き確率を、計算可能な条件付き確率を使って式変形するのがベイズの定理。 病気Dに罹患しているという事象を(D_1)、罹患していないという事象を(D_2)とおく。 また、検査で陽性であるという事象を(A)とおく。 提示されている(既にわかっている)陽性、偽陽性、陰性、偽陰性の条件は、 (P(A|D_1)=0.96)、(P(bar{A}|D_1)=0.04)、(P(bar{A}|D_2)=0.98)、(P(A|D_2)=0.02) また、病気Dに罹患する確率は(P(D_1)=0.1)。 検査を受けたとき陽性であるとは、事象(D_1)が起こった後事象Aが起こった、ということ。 その確率を条件付き確率を使って(P(D_1|A))と書く。 ベイズの定理 ここでベイスの定理。 (H_1,H_2,⋯,H_n)という原因の結果(A)が得られた、という条件。 普通は原因(H)が発生した上で結果(A)が得られる確率(P(A|H))を直接計算することができるが、 結果が得られた上で原因が得られる確率(P(H|A))は直接計算できない。 直接計算できる(P(A|H))を直接計算できない(P(H|A))に変換するのがベイズの定理。 begin{eqnarray} P(H_i|A) = frac{P(H_i)⋅P(A|H_i)}{sum P(H_j)⋅P(A|H_j)} end{eqnarray} なお、確率の乗法定理は以下の通りである。 begin{eqnarray} P(Acap B) = P(B)cdot P(A|B) end{eqnarray} 今回、罹患していて陽性と判定される確率は、( P(D_1)P(A|D_1) )、 罹患していないで陽性と判定される確率は、(P(D_2)P(A|D_2))。 ベイズの定理において、分母は、結果(A)が起こる全ての確率の和。 つまり、今回の例では検査で陽性となる全ての確率( P(D_1)P(A|D_1)+P(D_2)P(A|D_2))。 分子は、病気(D)に罹患している場合に陽性となる確率(P(D_1)P(A|D_1))。 begin{eqnarray} P(D_1|A) &=& frac{P(D_1)P(A|D_1)}{ P(D_1)P(A|D_1)+P(D_2)P(A|D_2)} \\ &=& frac{0.1 cdot 0.96}{0.1 cdot 0.96 + 0.9 cdot 0.02 } \\ &=& 0.842 end{eqnarray} こつ まぁ、与えられた問題文を良く読んで、求めたい条件付き確率、与えられている条件付き確率を抜き出す ところがポイントだろうか。ベイズの定理自体は、分母の意味と分子の意味を理解していれば、 導出できるはず。その際、確率の乗法定理を知らないと導出できない。

default eye-catch image.

ポアソン分布とLPからのCVR

[mathjax] 二項分布において、(n)が極めて大きく、(p)が極めて小さくなる現実的な事象はとても多いとされる。 例えば、交通事故件数、破産件数、火災件数、砲弾命中数、遺伝子の突然変異数など。 あるECサイトにおけるLPへの到達を(n)、そのうちコンバージョンする確率を(p)などとしたとき。 (実際には、アクセス頻度が一定でないので、単純なポアソン分布でモデル化する訳ではないらしい。 ここでは単純化してアクセス頻度が一定であるという仮定をする) 超幾何分布から二項分布、そしてポアソン分布まで地続きで理解するとわかりやすい。 このケースで二項分布の式を計算しようとすると、 例えば(N=1000)、(p=0.003)、(x=3)であるとしたとき、 (例えば、1000回のPVがあり、3回コンバージョンした、コンバージョン確率は0.3%である、という条件) 数値計算上の誤差により演算が繊細で現実的でない。 begin{eqnarray} f(x) &=& {}_n C_x p^x (1-p)^{n-x} \\ &=& {}_{1000} C_3 0.003^3 (0.997)^{997} end{eqnarray} ここで、(n rightarrow infty, p rightarrow 0 )という極限を考えたとき、(np rightarrow lambda)となることを考える。 つまり、二項分布の式において以下が成り立つ。 begin{eqnarray} {}_n C_x p^x (1-p)^{n-x} rightarrow e^{-lambda} lambda^x /x! end{eqnarray} 右式が確率分布であることは指数関数のマクローリン展開を使って証明できる。 (これも無茶苦茶に鮮やかで気持ちがよい..) begin{eqnarray} sum_{x} f(x ) &=& sum_{x} e^{-lambda} lambda^x /x! \\ &=& e^{-lambda} sum_{x} lambda^x /x! \\ &=& e^{-lambda} cdot e^{lambda} \\ &=& 1 end{eqnarray} ポアソン分布において、期待値、分散は以下の通り。 奇跡的に、期待値も分散も同じ(lambda)となる。 begin{eqnarray} E(X) &=& lambda \\ V(X) &=& lambda end{eqnarray} ポアソン分布の分布図 平均、分散共に(lambda)ということで、分布は定数(lambda)だけによって決まる。 以下、(lambda)をばらけさせてExcelでプロットしてみた。 また、(lambda=3)における、確率密度関数と累積分布関数を同一軸でプロットしてみる。 (lambda=3)というのは、最初の(N=1000)、(p=0.003)という条件下である。 平均は(lambda=3)であるから、3回コンバージョンする確率が最も大きく、 確率密度関数は右に歪んでいて、以外と3回以上コンバージョンする確率の減少は緩やか。

default eye-catch image.

二項分布と例

[mathjax] 超幾何分布においてNの無限大の極限を取った時に二項分布になった。 確率分布の理解はデータの数え方のケーススタディだと思うのでまとめてみる。 二項分布になるデータの発生の仕方は多いと書いてある。 二項分布 起こり得る結果が2種類に限定される事象を(n)回繰り返すとする。 (n)回のうち(x)回が結果A、(n-x)回が結果Bであるとき、 その組み合わせになる確率は以下の通り。 begin{eqnarray} f(x) = {}_n C_x p^x (1-p)^{n-x} end{eqnarray} ある事象が起こったとき、それを元に戻さないで次を行う。 確率(p)が(x)回、確率(1-p)が(n-x)回、(n)回のうち(x)回の組み合わせの数をかけている。 5回中1回ということは、1回目、2回目、3回目、4回目、5回目の計5通りで、それは({}_5 C_1)回。 n回中x回ということは({}_n C_x)回という意味。 ちなみに、以下の二項定理を使って二項分布が確率分布であることを証明する。 begin{eqnarray} (a+b)^n &=& {}_n C_0 a^0 b^n + {}n C_1 a^1 b^{n-2}+ cdots + {}_n C_k a^k b^{n-k} + cdots + {}n C_{n-1}a^{n-1}b + {}_n C_n a^n b^0 \\ &=& sum_{k=0}^n {}_n C_k a^k b^{n-k} end{eqnarray} 全部足す式を二項定理を使って変形すると1になる。なので二項分布は確率分布。 begin{eqnarray} sum_x f(x ) &=& sum_x {}_n C_x p^x (1-p)^{n-x}\\ &=& sum_x {}_n C_x p^x q^{n-x} \\ &=& (p+q)^n \\ &=& 1^n \\ &=& 1 end{eqnarray} 確率変数(X)が二項分布に従っているのであれば、期待値、分散は以下の通り。 begin{eqnarray} E(X) &=& np \\ V(X) &=& np(1-p) end{eqnarray} 二項分布の例 比較的簡単なので統計検定で頻出。 以下の問題がたぶん最もミニマル(二項分布の式に頼る必要もないけど)。 コインを6回投げる試行を行う。 4回表が出る確率を求めよ。 表が出る確率、裏が出る確率、共に(0.5)。 6回のうち4回表が出る場合の数は({}_6 C_4)回、6回のうち2回裏が出る場合の同じで15回。 ({}_6 C_4 0.5^4 0.5^2 = 0.234 ) コインを6回投げる試行を行う。 表が出る期待値を求めよ。 (E(X) = np = 6 cdot 0.5 = 3) つまり、コインを6回投げると平均して3回表が出る...、っていう当たり前。 コインを6回投げる試行を行う。 表が出る標準偏差を求めよ。 (sqrt{V(X)} = sqrt{n p (1-p} = sqrt{6 cdot 0.5 cdot 0.5} = 1.22 ) 95%信頼区間は? 標準偏差が出てきたところで、最初のころにやった95%信頼区間を思い出してみる。 二項分布であれ、中心極限定理により正規分布に近似できる。 begin{eqnarray} B(n,p) = N(np,np(1-p)) end{eqnarray} この正規分布について標準正規分布への変換を考える。 begin{eqnarray} Z = frac{X-E(X)}{sigma} = frac{X-np}{sqrt{np(1-p)}} end{eqnarray} Z得点を使って95%信頼区間は以下の通り求められる。 begin{eqnarray} -1.96 le Z le 1.96 \\ -1.96 le frac{X-3}{1.22} le 1.96 \\ -1.96 * 1.22 +3 le X le 1.96 * 1.22 + 3 \\ 0.60 le X le 5.40 end{eqnarray} 95%信頼区間は上記の通り。従って、コインを6回投げたとき、表の出る回数の95%は0.60から5.40の間であると言える。

default eye-catch image.

超幾何分布

[mathjax] 基本的に、足りない地頭を補うために時間を使ってきた歴史がある。 理解の速度や再現に地頭が影響する。 頭の中でパンパンパンって話が進む経験は全くない。 たぶんここに書いていることを活かすには地頭が必要だと思うので今後の人生で使えないだろうな。 具体的な確率分布を理解していく。 超幾何分布(hypergeometric distribution)。 超幾何分布 2種類のグループ(A,B)があって、個数の構成はそれぞれ(M),(N-M)。 これらから(n)個を取り出したときに、(A)が(x)個、(B)が(n-x)個であるとする。 袋の中に赤い玉が(M)個、白い玉が(N-M)個あって、 赤い玉を(x)個、白い玉を(n-x)個取る確率だな。取り出して戻さないやつ。 俯瞰して書くとこういうことになる。 begin{eqnarray} f(x) = frac{ {}_M C_x cdot {}_{N-M} C_{n-x} }{ {}_N C_n } end{eqnarray} 単に確率を求めただけ、みたいに見えるけど、 この事実が確率変数(x)を使った確率分布になっている。 (x)以外は定数(つまり観測可能、設定可能な値)となっていて、 (n,M,x)から(N)を推測するのに使われたりする。 超幾何分布という確率分布を知ったのであれば、 捕獲再捕獲法という条件下で、(n,M,x)という既知の値を使って(N)を推測したいなと 式が確率分布であることの証明 そもそも(f(x))はある(x)に関する確率を求めただけではないのか、 なぜ確率分布なのか。以下のように考えるらしい。 スタートは以下の恒等式。 begin{eqnarray} (1+t)^N equiv (1+t)^M cdot (1+t)^{N-M} end{eqnarray} (N=2)のとき、左辺を展開すると(t^2+2t+1)。 (N=3)のときは(t^3+3t^2+3t+1)。 (N)を増やしていった時、一般的に(t^n)の項の係数は({}_N C_n )。(初めて考えたけどこうなるんだな...) 対して、右辺の展開式において(t^n)の項の係数を調べる。 ((1+t)^M)の展開式において次数(x)の項と、 ((1+t)^{N-M})の展開式において次数(n-x)の項の積が次数(n)となる。 (x)は複数あるが、全ての(x)について係数を足すことで(t^n)の係数を求められる。 つまり、(sum_x {}_M C_x cdot {}_{N-M} C_{n-x}) 左辺、右辺の(t^n)の項の係数は同じであるはずなので、 begin{eqnarray} {}_N C_n = sum_x {}_M C_x cdot {}_{N-M} C_{n-x} end{eqnarray} 両辺を({}_N C_n)で割ると、 begin{eqnarray} 1 &=& sum_x frac{ {}_M C_x cdot {}_{N-M} C_{n-x} }{ {}_N C_n } \\ &=& sum_x f(x) end{eqnarray} 全部足して1になるということは確率分布。 左辺がサクッと1になって、右辺がサクッと超幾何分布の式になるという、 ぷよぷよの2段消しみたいな快感。 確率分布とは関係ない恒等式からスタートして、いきなり言いたいことが出てくるという不思議。 超幾何分布と二項分布の関係 超幾何分布は2種類のグループから取り出したものを戻さずに次を取り出す際の確率分布だけども、 戻して取り出す場合と戻さずに取り出す場合では、立式自体が変わってくる。 で、戻さないで次を取り出すときは二項分布になる。 (N)の極限を取ると二項分布になると書いてある。 立式の上では、以下の通り、確かに二項分布になる。 begin{eqnarray} lim_{N rightarrow infty} f(x) &=& lim_{N rightarrow infty} frac{ {}_M C_x cdot {}_{N-M} C_{n-x} }{ {}_N C_n } \\ &=& lim_{N rightarrow infty} cdot frac{ {}_{M_1} C_x cdot {}_{M_2} C_{n-x} }{ {}_N C_n } \\ &=& lim_{N rightarrow infty} frac{M_1!}{(M_1-x)! cdot x!} cdot frac{M_2!}{(M_2-n+x)!(n-x)!} cdot frac{(N-n)!n!}{N!} \\ &=& lim_{N rightarrow infty} frac{n!}{(n-x)! x!} frac{M_1(M_1-1)cdots (M_1-x+1)cdot M_2(M_2-1)cdots (M_2-n+x+1)}{N(N-1)(N-2)cdots (N-n+1)} \\ &=& lim_{N rightarrow infty} {}_N C_x cdot frac{ frac{M_1}{N}(frac{M_1-1}{N})cdots (frac{M_1-x+1}{N}) cdot frac{M_2}{N}(frac{M_2-1}{N})cdots (frac{M_2-n+x+1}{N}) }{(1-frac{1}{N})(1-frac{2}{N})cdots (1-frac{n-1}{N})} \\ &=& lim_{N rightarrow infty} {}_N C_x cdot frac{ p cdot (p-frac{1}{N}) cdot (p-frac{x+1}{N}) cdot q cdot (q-frac{1}{N}) cdot (q-frac{n-x-1}{N}) }{ (1-frac{1}{N})(1-frac{2}{N})cdots (1-frac{n-1}{N}) } \\ &=& {}_N C_x p^x cdot q^{n-x} \\ &=& {}_N C_x p^x cdot (1-p)^{n-x} end{eqnarray} (N)が十分に大きいときはより簡単な二項分布で近似せよ、ということになる。 あぁ、ここで、(p=frac{M_1}{N}, q=frac{M_2}{N})。 アルゴリズムの計算量の話のように、どういう問題がどんな分布に収まるのか、 というのは、知っておくと便利な気がする。 単純にモデルに当てはめるというのではなくて、 世の中には、こういうデータの測り方がありますよ、というケーススタディなんですな。

default eye-catch image.

モーメント母関数と確率密度関数

[mathjax] 期待値、分散、歪度、尖度...、確率分布を形成する確率密度関数の特徴を表す値で、 実は、相互に変換できる値なのだという...。読んでいったら若干感動したのでまとめてみる。 40近いオッさんがはじめてテイラー展開のありがたさを味わう瞬間の記録。 モーメント母関数とモーメント モーメント母関数を以下のように定義。 begin{eqnarray} M_x(t) &=& E(e^{tX}) \\ &=& int_{-infty}^{infty} e^{tx} f(x) dx end{eqnarray} 英語で書くとmoment generating function。モーメントを作る関数。 ここで(f(x))というのが確率密度関数。 もともとこの時点で積分が存在しないかもしれない。 確率密度関数によっては、期待値、分散、歪度、尖度を直接求めるのは難しい。 しかし、モーメント母関数の(r)階導関数からモーメント(mu_r)を解析的に求められる性質から、 期待値、分散、歪度、尖度を求めることができる。 さて...、40近いオッさんは思い出す。 指数関数のテイラー展開は、マクローリン級数を使って以下の通り。 begin{eqnarray} e^x = 1+x+x^2/2!+x^3/3!+cdots end{eqnarray} (tX)だと、 begin{eqnarray} e^{tX} = 1+tX+(tX)^2/2! +(tX)^3/3! + cdots end{eqnarray} 両辺の期待値をとる。右辺全体の期待値はそれぞれの項の期待値の和にできるので、 begin{eqnarray} E(e^{tX}) &=& M_x(t)\\ &=& E(1) + E(tX) + E((tX)^2/2!) + E((tX)^3/3!)) + cdots end{eqnarray} (t)に対する定数を出すと begin{eqnarray} M_x(t) &=& E(e^{tX})\\ &=& E(1) + E(X)t + E(X^2/2!)t^2 + E(X^3/3!)t^3 + cdots \\ &=& 1 + mu_1 t + (mu_2/2!)t^2 + (mu_3/3!)t^3 + cdots end{eqnarray} キター。おわかりだろうか...。 (M_x(t))は(t)に関する展開式の係数に各次数のモーメントを含んでいる。 (t)について1回微分すると0次までの項は消える。 2次以降の項の(t)の次数が1減って残る。1次の項だけ(t)が消える。 そのとき(t=0)とすると、階数の係数(M^{(r)}_X(0)=mu_r)だけ残る! つまり、以下のようなとんでもないことになる。 begin{eqnarray} M_X\'(0) = mu_1 \\ M_X\'\'(0) = mu_2 \\ M_X\'\'\'(0) = mu_3 \\ end{eqnarray} 各次数のモーメントである期待値、分散、歪度、尖度を、 モーメント母関数の(r)階導関数から求められるということになる。 指数分布のモーメント 試しに指数分布でやってみる。 begin{eqnarray} M_x(t) &=& int_{0}^{infty} e^{tx} lambda e^{-lambda x} dx \\ &=& lambda int_{0}^{infty} e^{(t-lambda)x} dx end{eqnarray} 指数関数の積分のところでおっ、と思ったけど、以下となる。 begin{eqnarray} M_x(t) = frac{ lambda }{ lambda -t} end{eqnarray} これ、解析的に微分できるのかな...と思うんだけども高校数学で暗記するやつ。 微分と積分を行ったり来たりするとわかる。 begin{eqnarray} M_x^{(1)}(t) &=& frac{ lambda }{ (lambda -t)^2} \\ M_x^{(2)}(t) &=& frac{ 2 cdot lambda }{(lambda -t)^3} \\ M_x^{(3)}(t) &=& frac{ 2 cdot 3 cdot lambda}{(lambda -t)^4} end{eqnarray} (t=0)とおくと、 begin{eqnarray} mu_1 &=& frac{1}{lambda} \\ mu_2 &=& frac{2}{lambda^2} \\ mu_3 &=& frac{2 cdot 3}{ lambda^3} \\ mu_4 &=& frac{2 cdot 3 cdot 4}{ lambda^4} end{eqnarray} これで、微分の数値計算をしなくても解析的に(mu_1)から(mu_4)が求まった。 そして永遠に微分し続けることで指数分布を形作る指標が決まっていく。 すごいなぁ...。

default eye-catch image.

歪度と尖度 (モーメント母関数導入前)

[mathjax] 確率変数(X)を使って表される確率分布の様子を表す指標について。 最も基本的なのが期待値(E(X))であって、次が分散(V(X))。 さらに、期待値(E(X))を中心として左右のどちらに歪んでいるかを表す歪度(alpha_3)、 期待値(E(X))近辺が全体と比較してどの程度尖っているかを表す尖度(alpha_4)がある。 その調子で、確率分布の特徴を表す指標は無数に作ることができる。 モーメント母関数の(r)階導関数から得られる各次数のモーメントが期待値、分散、歪度、尖度である、 という究極的にシンプルな話を読んでかなり感動したのだが、 モーメント母関数の(r)階導関数からモーメントを導出するのは次回として、 まず、歪度、尖度をそれぞれ別個に書いてあるのを読んでみる。 歪度 確率分布は常に期待値(E(X))を中心に左右対象という訳ではない。 この非対称性の指標の定義があって歪度が使われる。歪度は(alpha_3)という記号を使う。 その定義は以下の通り。 begin{eqnarray} alpha_3 = E(X-mu )^3 / sigma^3 end{eqnarray} (alpha_3 ge 0)ならば左の裾が長い。 (alpha_3 le 0)ならば右の裾が長い、と読む。 また、(|alpha_3|)は左右の歪みの程度を表す。 (alpha_3)を定義通り計算しても値が得られるが、 以下のようにしておくとより楽に得られる。 begin{eqnarray} E(X-mu)^3 &=& E(X^3) - 3mu E(X^2) + 3mu^2 E(X) - mu^3 \\ &=& E(X^3) - 3mu E(X^2) + 2mu^3 end{eqnarray} なんで(alpha_3)の式が確率分布の歪みを表すのか。 ( mu = E(X) )を中心に、(X-mu ge 0)を満たす確率よりも(X-mu le 0 )を満たす確率の方が少なければ、 (X-mu)は右に歪んでいるといえる。逆も真。 3次の式(y=x^3)は、(x ge 0)であれば正、(x le 0 )であれば負であるという特徴がある。 この特徴を使うと、( E(X-mu)^3 )の正負は、(X-mu)の正負と一致すると言える。 さらに、大きさを規格化するため、( E(X-mu)/sigma )の正負を考えることとし、( (X-mu)^3 / sigma^3 )が出てくる。 尖度 分布の頂点がどれだけ尖っているかを表すのが尖度(alpha_4)。 正規分布の尖度を3とし、 (alpha_4-3 gt 0)であれば正規分布より尖っている。 (alpha_4 lt 0)であれば正規分布より尖っていない、とする。 これも(y = x^4 ) の特徴から導かれる。 (x=0)近辺の値と、(x=0)から離れた値を比べたとき、 前者は(y = x^4 ) に対して小さな値を出力し、後者は大きな値を出力する。 (x=0)から離れると急激に値が大きくなるという特徴がある。 つまり、(E(X-mu)^4)を見たとき、 確率値が(mu)の近辺にあれば値は0に近く、(mu)から離れた値が多ければ急激に値が大きくなる。 大きさを規格化し、(E(X-mu)^4/sigma^4)を尖度として利用する。 (alpha_3)と同様に、直接計算する方法もあるが、以下のように計算することもできる。 begin{eqnarray} E(X-mu)^4 &=& E(X^4) - 4mu E(X^3) + 6 mu E(X^3) -4 mu^3 E(X) + mu ^4 \\ &=& E(X^4) - 4mu E(X^3) + 6 mu E(X^2) - 3 mu^4 end{eqnarray} モーメント母関数のr階導関数 期待値、分散、歪度、尖度は、モーメント母関数から統一的に導かれる。 これがまたすごいので次のエントリで書いてみる。

default eye-catch image.

確率変数、確率密度関数

[mathjax] やりなおし統計もだいぶ頭が慣れてきた。 だいぶ赤本を読めるようになってきたぞ、という感触がある。 続けて確率密度関数の定義を読んでいく。 一線でやっているデータサイエンティスト(俗称)の方の話として、必要な数学力というのは 実はそこまで高くなく、線形代数といっても実は単に行列の掛け算ができる、とか、 解析学といっても、高校数学の数Ⅲぐらいだったりとか、そういうことを言う人が多いみたい。 (アカデミックな層とは2段も3段も劣るオッさんが基礎を学んだところで行けるラインなんて限界がある。) 機械学習と密接な関係の統計学くらいはちゃんとインプットしておきたいのだが。 もちろん一発で理解できる頭ではないので、たぶんこれから何度もやりなおすだろう。 一方で足りなかったら後から足していけば良いぐらいの位置に立てたかな、とも思う。 確率変数と確率分布 サイコロを投げてそれぞれの目が出る相対度数はおそらく(1/6)くらいだろう。 実際に出る目はランダムで相対度数は決まらなない。一方で確率の定義からそれぞれ(1/6)。 実際に出る目を(X)として表して、(P(X) = 1/6)として表現する。 つまり、 begin{eqnarray} P(X=1)=1/6, P(X=2)=1/6, P(X=3)=1/6, \\ P(X=4)=1/6, P(X=5)=1/6, P(X=6)=1/6 end{eqnarray} この(X)を確率変数という。 また(P(X=x_k)=p_k)を確率分布という。 加算集合({x_1,x_2,cdots,})の中の値を取る確率変数(X=x_k)について 確率分布は離散的であり、(sum_{k=1}^{infty} f(x_k) =1 )である。 また、確率変数が連続である場合、(P(aleq X leq b)=int_{a}^{b} f(x) dx =1 )である 確率密度関数 連続型の確率変数(X)について、(P(xleq X leq x+ Delta x)=int_{a}^{b} f(x) dx )と表す場合、 区間(a)から(b)の定積分、つまり面積が確率値となる。 (X)は連続型の確率分布をもつという。(f(x))を(X)を確率密度関数という。 ここで、全ての(X)に対して以下が成り立つ。 begin{eqnarray} f(x) geq 0 \\ int_{-infty}^{infty}f(x) dx = 1 end{eqnarray} 「密度」とは何なのか。 (P(X)=int_{a}^{b} f(x))の式において、(a=b)であるならば定積分は0である。 確率密度関数において一点の確率は0ということになる。 これだと、密度関数の大小が確率にどう影響を与えるか説明しづらい。 小さい(Delta x)を考えたとき、面積を(Delta x)を使って近似する。 微小区間に掛け与える値の大小(f(x))が確率(P(X))に影響する。 この振る舞いを「密度」と言っているらしい。 begin{eqnarray} P(xleq X leq x+ Delta x) simeq f(x)cdot Delta x end{eqnarray} 全ての確率変数(X)について均一に確率が存在している訳ではなく、 高い確率、低い確率の存在に濃淡がある。その様を表すのが確率密度関数である。 うん、特に難しくない。

default eye-catch image.

条件付き確率、乗法定理とベイズの定理

[mathjax] ようやくたどり着いたベイズの定理の入り口。 ここから入らないと何も理解できないと思う。 条件付き確率と事象の独立性 事象(B)が起こることがわかってる場合に事象(A)が起こる確率を (B)を条件とする(A)の条件付き確率という。 読み方は、Probability of A given B. (P_B (A))とも書く。 当たり前のように以下の定義がある。 そもそもここから引っかかる。 begin{eqnarray} P(A|B) = frac{P(Acap B)} {P(B)} end{eqnarray} 見方はこちら。 begin{eqnarray} P(Acap B) = P(B) cdot P(A|B) end{eqnarray} 最初に(B)か(B)でないかで分岐する際に(B)を選んだ確率が(P(B))。 次に(A)か(A)でないかで分岐する際に(A)を選んだ確率が(P(A|B))。 俯瞰して(A)と(B)を両方一気に選ぶ確率は(P(Acap B))。 そう、何が気持ち悪いかというと(P(Acap B))と(P(A|B))が同じでないところ。 ではどう違うのか。 (A)を選ぶ確率が(B)に依存していないならば、(P(A|B))は(P(A))と等しい。 つまり、(P(Acap B) = P(B) cdot P(A))。こちらは直感的。 依存しているならば、(P(B))と(P(A))を分離できなくなり、Aを選ぶ確率にBの影響が出る。 Aを選ぶのにBの影響が出る一般の条件がコレで、 begin{eqnarray} P(Acap B) = P(B) cdot P(A|B) end{eqnarray} そのうち、影響が全くでない特殊な条件がコレ。 begin{eqnarray} P(Acap B) = P(B) cdot P(A) end{eqnarray} すっきり。 ベイズの定理 (H_1,H_2,cdots,H_n)という原因の結果(A)が得られた、という条件。 普通は原因(H)が発生した上で結果(A)が得られる確率(P(A|H))を直接計算することができるが、 結果が得られた上で原因が得られる確率(P(H|A))は直接計算できない。 直接計算できる(P(A|H))を直接計算できない(P(H|A))に変換するのがベイズの定理。 begin{eqnarray} P(H_i|A) = frac{P(H_i)cdot P(A|H_i)}{sum P(H_j) cdot P(A|H_j)} end{eqnarray} 一番有名なたとえ。 「無料」という単語を含むメールが迷惑メールである確率を知りたいけど直接計算では求められない。 大量に迷惑メールを集めて「無料」という単語が含まれる確率は計算で得られる。 後者を前者に変換することで、直接得られない確率を推定する話。 条件付き確率の定義を変形するとベイズの定理になる。 begin{eqnarray} A &=& A cap Omega \\ &=& A cap (H_1 cup H_2 cup cdots cup H_n) \\ &=& (A cap H_1) cup (A cap H_2) cup cdots (A cap H_n) end{eqnarray} ((A cap H_1))、((A cap H_2))、(cdots)、((A cap H_n))は排反だから begin{eqnarray} P(A) &=& sum P(A cup H_j) \\ &=& sum P(H_j) cdot P(A|H_j) end{eqnarray} 条件付き確率の定義に放り込む。 begin{eqnarray} P(H_i|A) &=& frac{P(H_icup A)}{P(A)} \\ &=& frac{P(A|H_i)cdot P(H_i)}{P(A)} \\ &=& frac{P(A|H_i)cdot P(H_i)}{sum P(H_j) cdot P(A|H_j)} end{eqnarray}