なぜこの分布は均一なのですか?


12

私たちはベイジアン統計検定を調査していますが、奇妙な(少なくとも私にとって)現象に出くわします。

次の場合を考えてみましょう。AまたはBのどちらの母集団のコンバージョン率が高いかを測定することに関心があります。健全性チェックでは、を設定しpA=pBます。つまり、変換の確率は両方のグループで等しくなります。二項モデルを使用して人工データを生成し

nABinomial(N,pA)

次に、ベイジアンベータ二項モデルを使用してを推定し、各変換レートの事後確率を取得します。たとえば、pA,pB

PABeta(1+nA,NnA+1)

検定統計量は経由でを計算して計算されます。S=P(PA>PB|N,nA,nB)

私が驚いたのは、場合、です。私は、サンプルサイズNが大きくなると、0.5を中心に0.5に収束し、さらには0.5に収束すると考えていました。 pA=pBSUniform(0,1)N

私の質問は、 p_A = p_BのときにS \ sim \ text {Uniform(0,1)} なのはなぜですか?SUniform(0,1)pA=pB


デモするPythonコードを次に示します。

%pylab
from scipy.stats import beta
import numpy as np
import pylab as P

a = b = 0.5
N = 10000
samples = [] #collects the values of S
for i in range(5000):
    assert a==b
    A = np.random.binomial(N, a); B = np.random.binomial(N, b)
    S = (beta.rvs(A+1, N-A+1, size=15000) > beta.rvs(B+1, N-B+1, size=15000)).mean() 
    samples.append(S)

P.hist(samples)
P.show()

は離散変数であるため、正確に均一にできないことに注意してください。したがって、あなたは漸近的な振る舞いについて尋ねています。さらに、小さなN(未満、およそ)の場合、分布は均一に近くさえありません。SNp = p A = p B100/min(p,1p)p=pA=pB
whuber

@whuber Sは離散的ではなく、0〜1の範囲に収まる可能性があります。また、低Nであっても、均一な動作を観察しています。
Cam.Davidson.Pilon

2
それでは、セットアップを誤解しているに違いありません。私の知る限り、任意の与えられた値のためにの値ある数が。したがって、およびが(コードにあるように)現時点で固定されていることを受け入れると、は関数になります。しかし、後者は2つの二項分布の実現であり、離散的な値のセットのみを達成できます。でコードを再現すると、小さなに対して明らかに不均一なヒストグラムが得られます。S N p Ap B S n An BNN,nA,nB,SN,pA,pBS(nA,nB)RN
whuber

1
確かにあなたがの間の値があると、それは最大で持つことができます、非離散していることを混同しないでください個別の値を(そして実際よりも少なくあり)。シミュレーションでは正しい値ではなく推定値が生成され、推定値は本質的に連続分布を持っているため、これは完全には明らかではないかもしれません。0 1 N 2 SS01N2S
whuber

1
@whuberはい、あなたは正しい、優れた観察です。私はまだそれ均一に見える理由にまだ固執しています
Cam.Davidson.Pilon

回答:


11

TL; DR: ビンサイズが大きい場合、正規分布の混合物は均一に見える場合があります。

この答えは、@ whuberのサンプルコードから引用しています(最初はエラーだと思っていましたが、振り返ってみるとおそらくヒントでした)。

母集団の基礎となる割合は等しい:a = b = 0.5
各グループAとBには10000人のメンバーがいますN = 10000
シミュレーションの5000回の複製を実行しますfor i in range(5000):

実際に、私たちがやっているさのことiがmのuとL T I O N U N D のE 、R 、L 、Y 、I 、N 、G。5000回の繰り返しの各々で、S iがm個のU 、L 、T 、I 、O 、N個のp個のR iは、mは電子我々が行うであろうsimulationprimesimulationunderlyingsimulationprimesimulationunderlying

各反復で、以前に定義された等しい基礎比率が与えられた場合に、「成功」(別名変換)である乱数AおよびBをシミュレートします。通常、これによりA = 5000およびB = 5000が得られますが、AおよびBはsim実行ごとに異なり、5000回のシミュレーション実行に独立して(ほぼ)通常は分散されます(これに戻ります)。simulationprimeA = np.random.binomial(N, a); B = np.random.binomial(N, b)

スルー今ステップレッツ の1回の反復のためのsはiがmのuとL T Iは、O 、N p個のR iは、mはEでAとB HAVE等しい数の成功で取得されます(平均的な場合)。s i m u l a t i o n uの各反復でsimulationunderlyingsimulationprimeでは、AとBが与えられると、各グループのベータ分布のランダム変量を作成します。次に、それらを比較し、 B e t a A > B e t a Bであるかどうかを調べ、TRUEまたはFALSE(1または0)を生成します。simulatio n u n d e r l y i n gの実行の最後simulationunderlyingBetaA>BetaBsimulationunderlying、15000回の反復を完了し、15000個のTRUE / FALSE値を持っています。これらの平均は、の割合の(ほぼ正規の)サンプリング分布から単一の値を生成します。BetaA>BetaB

今を除いて、は5000のA値とB値を選択します。AとBが正確に等しくなることはめったにありませんが、AとBの成功数の典型的な違いは、AとBの合計サンプルサイズによって小さくなります。典型的なAsとBは、B eの割合のサンプリング分布からより多くのプルを生成しますt a A > B e t a Bですが、A / B分布の端にあるものもプルされます。simulationprimeBetaA>BetaB

本質的に、多くのsimの実行をプルするのは、AとBの組み合わせに対するのサンプリング分布の組み合わせです(Aの一般的な値から作られたサンプリング分布からより多くのプルAとBの珍しい値よりもB)。これにより、正規分布の混合が生じます。それらを小さなビンサイズで組み合わせた場合(使用したヒストグラム関数のデフォルトであり、元のコードで直接指定されていた)、均一な分布のように見えるものになります。BetaA>BetaB

考慮してください:

a = b = 0.5
N = 10
samples = [] #collects the values of S
for i in range(5000):
    assert a==b
    A = np.random.binomial(N, a); B = np.random.binomial(N, b)
    S = (beta.rvs(A+1, N-A+1, size=15000) > beta.rvs(B+1, N-B+1, size=15000)).mean() 
    samples.append(S)

P.hist(samples,1000)
P.show()

1
したがって、私とあなたのコードには違いがあります。各ループでAとBをサンプリングします。1回サンプリングし、Sを5000回計算します。
Cam.Davidson.Pilon

1
不一致は、への呼び出しにありrbinom、これはベクトルを返します。その後のrbeta内部への呼び出しreplicateはベクトル化されるため、内部(内部)ループは、生成された15000個のランダム変数ごとに異なる Bを使用します(からの最後の5000でラップします)。詳細をご覧ください。これは@Camのコードとは異なり、5000個のサンプリング()ループごとに15000個のランダム変量呼び出しすべてで使用される単一の固定AおよびBがあります。ABNSIM = 10000?rbetaABreplicate
枢機

1
好奇心の強い人の出力は次のとおり
Cam.Davidson.Pilon

1
概念レベルで潜在的に適切であると私が知っている唯一のことは、a)予想される結果の分布は対称である、b)ビンサイズ1は常に均一、c)対称分布のビンサイズ2また、常に均一に表示されます、d)Nの増加から引き出すことができるサンプリング分布の数、e)Sの値は0または1だけで積み重なることはできません、及びf)サンプルは0と1の間に制限されている
russellpierce

1
観測のみの問題として、サンプリング分布の重心が.5から離れるにつれて、サンプリング分布の重心間の距離が短くなることがわかります(おそらく上記の点fに関連)。この効果は、グループAとグループBのケースでのより一般的なほぼ等しい成功の観測の高頻度の傾向を打ち消す傾向があります。しかし、それがなぜなのか、特定のビンサイズに対して正規分布を生成する必要があるのか​​を数学的に解くことは、私の領域の近くではありません。
ラッセルピアス

16

何が起こっているのかを直感的に理解するために、非常に大きくし、O 1 / N )の動作を無視し、ベータ分布と二項分布の両方がほぼ正規になるという漸近定理を活用してください。(いくつかの問題を抱えて、これはすべて厳密にすることができます。)これを行うと、さまざまなパラメーター間の特定の関係から結果が現れます。NO(1/N)


Normal近似を使用する予定なので、変数の期待値と分散に注意を払います。

  • 二項変量として、n An Bにp Nの期待値とp 1 - p Nの分散があります。したがって、α = n A / Nおよびβ = n B / Nには、pおよび分散p 1 - p / Nの期待値があります。(N,p)nAnBpNp(1p)Nα=nA/Nβ=nB/Npp(1p)/N

  • ベータとして変量、P Aは、の期待有するN A + 1 /N + 2 との分散N A + 1 N + 1をn A/ [ N + 2 2N + 3(nA+1,N+1nA)PA(nA+1)/(N+2)。概算すると、 P Aには次の期待があることがわかります。(nA+1)(N+1nA)/[(N+2)2(N+3)]PA

    E(PA)=α+O(1/N)

    および分散

    Var(PA)=α(1α)/N+O(1/N2),

    についても同様の結果が得られます。PB

米国したがって分布に近似してみましょうおよびP Bを正常でα α 1 - α / N および正常β β 1 - β / N (第2パラメータが指定分布分散) 。分布P A - P Bは、結果的にほぼ垂直です。機知にPAPB(α,α(1α)/N)(β,β(1β)/N)PAPB

PAPBNormal(αβ,α(1α)+β(1β)N).

For very large N, the expression α(1α)+β(1β) will not vary appreciably from p(1p)+p(1p)=2p(1p) except with very low probability (another neglected O(1/N) term). Accordingly, letting Φ be the standard normal CDF,

Pr(PA>PB)=Pr(PAPB>0)Φ(αβ2p(1p)/N).

But since αβ has zero mean and variance 2p(1p)/N, Z=αβ2p(1p)/N is a standard Normal variate (at least approximately). Φ is its probability integral transform; Φ(Z) is uniform.


1
I'mn with you up until PAPBNormal... then you go off another direction that I didn't quite follow. Is Φ defined twice, once as the standard normal CDF and then as the probability integral transform? I'm hoping you can expand your description around these steps and relate them to the initial code/problem. Maybe loop back around and restate which specific parameters produce the uniform result.
russellpierce

1
@rpierce (1) The difference PAPB is approximately normal because PA and PB are independent and each is approximately normal. The mean is the difference of the means and the variance is the sum of the variances. (2) The probability integral transform is the CDF: it is the case for any random variable X with continuous distribution F, that F(X) is uniform.
whuber

1
Oh I got 1, it was the stuff after it where I got lost. This will be mindbogglingly dumb, but why is Pr(PA>PB) the same as the CDF?
russellpierce

1
@rpierce That follows rather directly from the definition, but there's a slight twist in which the symmetry of the Normal distribution is invoked. We're dealing with a Normal variate X=PAPB assumed to have an expectation of μ=αβ and variance σ2=2p(1p)/N. Standardizing X, it is natural to rewrite the probability as
Pr(X>0)=Pr((Xμ)/σ>(0μ)/σ)=1Φ(μ/σ)=Φ(μ/σ).
whuber

3
@whuber this is pretty amazing. You are a wonderful teacher. I appreciate both yours and rpierce's answer, I'll still give him credit as it did solve our problem, and you have shown why the behaviour occurs. Ty!
Cam.Davidson.Pilon
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.