第2回は集中不等式。どれだけの確率でアルゴリズムが成功するのかの判定。
マルコフの不等式
Xを非負の確率変数とする。
Pr[X≥k⋅E[X]]≤k1 なぜなら、1/kを超える確率でkE[X]を最低でも取るなら期待値はかならずE[X]を上回るので矛盾する。
実はかなりガバガバな評価式。
クイックソートの評価
クイックソートは最悪O(N2)、期待値はO(NlogN)である。
計算時間が2cnlognを超えたらソートを止めてやり直す。それ以外ならソートしなおす。最大このようなソートのやり直しはたかだかd回やるとする。cは定数。
これをマルコフの不等式で評価する。
Pr[fail]=Pr[calctime≥2cnlogn]d≤2d1 このように指数的に収束するとわかる。
チェビシェフの不等式
分散V[X]=E[X2]−E[X]2と標準偏差σ[X]=V(X)を定義できる。次の式がチェビシェフの不等式。
Pr[∣X−E[X]∣≥kσ[X]]≤k21 標準偏差のk倍を外れる確率は、たかだか1/k2である。
非負であるという条件はないし、両側の確率を抑えている。マルコフだと、kσ[X]のかわりにk2E[X]となることから、抑える精度のオーダが1つ上がったと言える。
Hoeffding’s Inequality
序
まだ直感だが、X=X1+⋯のように、有限個とすら限らない確率変数の和だとする。このとき、個数を無限まで増やすとXはガウス分布に収束する=中心極限定理があるので、以下のように更に指数関数的に集中しそうじゃない?
Pr[∣X−E[X]∣≥kσ[X]]≤e−k2 不等式
X=∑i=1nXi,Xiareindependenteachother,Xi∈[0,1] Pr[∣X−E[X]∣≥t]≤2exp(−t2/n) 先ほどの式とは実は同じものである。導出過程はこちら。
V[X]=∑i=1nV[X]≤∑i=1nE[X2]≤∑i=1n1=n⇒σ[X]≤n t≤ntσ[X]と言い換えられる。ここで、代入すると上の式がちょうど出てくる。
使用例
全人口の中である属性を持った人の数を知りたい。
全部でn人ある中でb人がその属性を持っている。上手くサンプリングしてbを推定したい。
サンプルは独立で重複ありで選ぶことで作る。数がいっぱいあるので重複あったところで問題はない。サンプルの中で属性を持つのがbsとすると、簡単にb≈bs/s×nとなるが、それが十分に正しいと示すのに使える。
示したいこと
∀α>0,∀δ>0,s=α2log(2/δ)Pr[∣sbsn−b∣>αn]≤δ δは信頼度、αnは誤差だと言える。誤差を下げるのは大変(誤差を半分にするとサンプル数が4倍必要)だが、信頼度を上げるのは簡単(誤差を下げるとき、サンプル数はα2log2増やせばいい)。
証明
Xiはi番目のサンプルが属性を持っていると1、持たないときは0とする。
E[X]=∑i=1sE[Xi]=ns⋅bPr[∣X−E[X]∣≥αs]≤2exp(−sα2s2)=2exp(−sα2) sα2=log(2/δ)となるので、これを代入して計算すると、見事に上の式が得られる。
使用例2
ベルヌーイ分布pX(1−p)1−Xに従うコイン投げの結果を重ねると、二項分布B(s,p)となる。これは、s回コインを振って表が出た回数。
ここで、p=0.5という前提で、s回コイン投げて表の回数がs/2+αsとなる確率を正確に計算できる。二項係数をスターリングの近似を用いることで計算すると、πs2e−α2sになるとわかる。これはHoeffding Inequalityでの評価と一致するものであるので、不等式の評価は非常に正確であるということ。
しかし、性質上推定値には1/sの誤差が出るのは仕方ない。