C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C /C++での条件付き確率のベイズの定理


条件付き確率 P( A | B )は、イベント「B」がすでに発生している場合のイベント「A」の発生確率です。

条件付き確率の式-

P(A|B) = P( A⋂B ) / P(B)

ベイズの定理

これは、相互に依存するイベントの発生確率間の関係を示す式です。つまり、条件付き確率間の関係が与えられます。

ベイズの定理によると、イベントAと別のイベントBが与えられた場合、

P(A / B)={P(B / A)* P(A)} / P(B)

ベイズの定理の公式を導き出しましょう

このために、条件付き確率の式を使用します

P(A|B) = P( A?B ) / P(B) —— 1
P(B|A) = P( B?A ) / P(A) —— 2

A⋂BとB⋂Aは同じであることがわかっているため、B⋂Aの値をA⋂Bの式2に置き換えることができます。

P(B/A) = P(A⋂B) / P(A)
P(B/A) * P(A) = P(A⋂B) —- 3

ここで、式1のA?Bにこの値を使用すると、ベイズの定理の式が得られます。

P(A/B) = {P(B/A) * P(A)} / P(B)

ベイズの定理のいくつかの導出

積の法則

式3に示されているように、同じ試行で両方のイベントが発生する確率は、イベントの条件付き確率と証拠イベントの発生確率の積に等しいことを示しています。

P(A?B) = P(A/B) * P(B)

このルールから、2つの重要な式を導き出すことができます-

A⊆B、つまりAがBのサブセットである場合、つまりセットAのすべての要素がセットBにある場合、

P(A⋂B) = P(A), then P(A/B) = P(A) / P(B)

B⊆A、つまりBがAのサブセットである場合、つまりセットBのすべての要素がセットAにある場合、

P(A⋂B) = P(B), then P(A/B) = 1

ベイズの定理は3つ以上のイベントを形成します-

相互に依存するイベントが3つ以上ある場合、それらの条件付き確率は次の関係になります。

P(X1/Y) = (P(X1)*P(Y/X1) / [P(X1 * P(Y/X1)) + P(X2 * P(Y/X2)) + P(X3 * P(Y/X3)) + …]

  1. n番目のカタラン数のC/C ++プログラム?

    カタラン数は一連の数です。カタラン数は、さまざまなカウントの問題で発生する一連の自然数を形成します。多くの場合、再帰的に定義されたオブジェクトが関係します。 C n 長さ2nのディック言語の数です。ディックワードは、n個のXとn個のYで構成される文字列であり、文字列の最初のセグメントにXより多くのYが含まれることはありません。たとえば、次は長さ6のディック言語です XXXYYY XYXXYY XYXYXY XXYYXY XXYXYY. 記号Xを開き括弧として、Yを閉じ括弧として再解釈します。C n 正しく一致するn組の括弧を含む式の数をカウントします ((()

  2. C++のチェス盤でのナイト確率

    NxNチェス盤が1つあるとすると、騎士はr番目の行とc番目の列から開始し、正確にK回移動しようとします。ここでは、行と列に0のインデックスが付けられているため、左上の正方形は(0、0)であり、右下の正方形は(N-1、N-1)です。 騎士はセルから8つの異なるセルに移動できます。これは、この図に示されています- 騎士が移動するたびに、8つの可能な移動の1つをランダムに選択します。騎士は、正確にK移動するか、チェス盤から離れるまで移動を続けます。騎士が動きを止めた後もボードに留まる確率を見つける必要があります。 したがって、入力が3、2、0、0のような場合、出力は0.0625になります