9  離散一様分布

Author

Ryo Nakagami

Published

2024-09-22

Modified

2024-10-19

離散一様分布の性質

Def: 離散一様分布

\(n\in\mathbb N\) に対して,確率変数 \(X\)\(S = \{1, 2, \cdots, n\}\) を標本空間し,

\[ \Pr(X = k) = \frac{1}{n}\quad k\in S \]

を満たすとき,\(X\) は離散一様分布に従うという.(\(X\sim \operatorname{DU}(n)\))

フェアなサイコロをふったときに出る目を確率変数 \(X\) とみなしたとき,\(X\sim \operatorname{DU}(6)\) となります.

Property: 累積分布関数

離散一様分布の累積分布関数(分布関数)は

\[ F(x) = \Pr(X\leq x) = \left\{\begin{array}{c} 0 & x < 1\\ \frac{\lfloor x\rfloor}{n} & 1\leq 1 \leq n\\ 1 & x \geq n \end{array}\right. \]

離散一様分布のQuantile functionは,

\[ Q_X(u) = \inf\{x\in\mathbb R: F_X(x) \geq u\} \]

なので,\(u\in(0, 1]\) について

\[ Q_X(u) = \lceil np\rceil \]

と定義されます.

Theorem 9.1 : 期待値と分散

離散一様分布に従う確率変数 \(X\sim \operatorname{DU}(n)\) について,

\[ \begin{align*} \mathbb E[X] &= \frac{n+1}{2}\\ \operatorname{Var}(X) &= \frac{n^2-1}{2}\\ \end{align*} \]

Proof

\[ \begin{align*} \mathbb E[X] &= \sum_{k=1}^nk\frac{1}{n} = \frac{n(n+1)}{2n}=\frac{n+1}{2}\\ \end{align*} \]

分散については

\[ \begin{align*} \mathbb E[X^2] &= \sum_{k=1}^nk^2\frac{1}{n} = \frac{(n+1)(2n+1)}{6} \end{align*} \]

従って,

\[ \operatorname{Var}(X) = \frac{n^2-1}{12} \]

Theorem 9.2 : 確率母関数

\(X\sim \operatorname{DU}(n)\) について,確率母関数 \(G_X(s)\)

\[ G_X(s) = \frac{s(1 - s^n)}{n(1-s)} \]

Proof

\[ \begin{align*} G_X(s) &= \mathbb E[s^x]\\ &= \sum_{k=1}^n \frac{s^x}{n}\\ &= \frac{s(1-s^n)}{n(1-s)} \end{align*} \]

▶  確率母関数を用いたモーメントの計算

\[ (1-s^n) = (1 - s)(1 + s + s^2 + \cdots + s^{n-1}) \]

より

\[ G_X(s) = \frac{s + s^2 + \cdots + s^n}{n} \]

従って,

\[ \begin{align*} \mathbb E[X] &= G_X^\prime(s)\bigg\vert_{s=0} \\ &= \frac{n+1}{2}\\ \mathbb E[X(X-1)] &= G_X^{\prime\prime}(s)\bigg\vert_{s=0}\\ &= \frac{1}{n}\sum_{k=1}^nk(k-1)\\ &= \frac{(n+1)(2n+1)}{6} - \frac{n+1}{2} \end{align*} \]

Theorem 9.3

\(X\sim \operatorname{DU}(n)\) について,MGF \(M_X(t)\)

\[ M_X(t) = \frac{\exp(t) - \exp(t(n+1))}{n(1 - \exp(t))} \]

Proof

\[ \mathbb E[\exp(tX)] = \frac{1}{n}\sum_{k=1}^n \exp(tk) = \frac{\exp(t) - \exp(t(n+1))}{n(1 - \exp(t))} \]

▶  特性関数

特性関数は

\[ \varphi_X(t) = \frac{\exp(it) - \exp(it(n+1))}{n(1 - \exp(it))} \]

▶  歪度

\[ \mathbb E[(X - \mathbb E[X])^3] = (\mathbb E[X^3] – 3\mathbb E[X^2]E[X] + 2\mathbb E[X]^3) \]

なので,これをまず計算します.

\[ \mathbb E[X^3] = M_X^{\prime\prime\prime}(t) \bigg\vert_{t=0} = n\left(\frac{n+1}{2}\right)^2 \]

これを用いて計算すると,\(n - 2n-1 + n+1 = 0\) より \(\operatorname{skewness} = 0\). 平均を中心に対称な分布なので,計算しなくても歪度は0であると判断することもできます.

▶  エントロピー

離散確率変数 \(X\) の確率関数を \(p(x)\) とします.このとき,エントロピーを以下のように定義します.

\[ \mathrm{H}(X) = -\sum_x p(x) \log(p(x)) \qquad (\lim_{p\to 0}p\log(p) = 0 \text{とする}) \]

\(X\sim \operatorname{DU}(n)\) としたとき,エントロピーは

\[ \begin{align*} \mathrm{H}(X) = -\frac{1}{n}\sum_x \log(\frac{1}{n}) = \log(n) \end{align*} \]

\(k\) 個のサイコロの目の合計

\(k\) 個のフェアなサイコロの目の合計の確率分布はモーメント母関数を用いて導出することができるのでこのセクションで紹介します.

Def: 離散確率変数のMGF

確率変数 \(X\) が離散確率変数 \(\Pr(X = x_i) = p_i, i = 1, \cdots, k\) の場合,MGFは以下のように表現される:

\[ \begin{align*} M_X(t) &= \mathbb E[\exp(tX)]\\ &= p_1\exp(tx_1) + p_2\exp(tx_2) + \cdots + p_k\exp(tx_k) \end{align*} \]

上記の定義より,フェアなサイコロのMGFは以下のようになります

\[ M_X(t) = \frac{1}{6}\left(\exp(t) + \exp(2t) + \cdots + \exp(6t)\right) \]

Theorem 9.4 : 互いに独立な確率変数の和とMGF

互いに独立な確率変数 \(X, Y\) について,\(Z = X +Y\) と確率変数を定義したとき,

\[ M_Z(t) = M_X(t)M_Y(t) \]

が成立する・

Proof

\[ \begin{align*} M_Z(t) &= \mathbb E[\exp(tZ)]\\ &= \mathbb E[\exp(tX + tY)]\\ &= \mathbb E[\exp(tX)\exp(tY)]\\ &= \mathbb E[\exp(tX)]\mathbb E[\exp(tY)]\\ &= M_X(t)M_Y(t) \end{align*} \]

\(k\) 個のサイコロの目の合計の確率分布

\(k\) 個のフェアなサイコロを独立に投げ,それぞれの目を \(X_1, \cdots, X_k\) としたとき,サイコロの目の合計 \(Y\)

\[ Y = X_1 + \cdots + X_k \]

このとき,上で確認したMGFの性質より

\[ M_Y(t) = \frac{1}{6}(\exp(t)+\exp(2t)+\cdots + \exp(6t))^k \]

▶  \(k=2\) の場合

\[ \begin{align*} M_Y(t) =& \frac{1}{6}(\exp(2t) + 2\exp(3t)+3\exp(4t) + 4\exp(5t)\\[4pt] &+ 5\exp(6t)+ 6\exp(7t)+ 5\exp(8t)+ 4\exp(9t)+ 3\exp(10t)\\[4pt] &+ + 2\exp(11t)+ \exp(12t)) \end{align*} \]

各係数が確率関数に対応していることがわかります.

▶  \(k=4\) の場合

基本的には,\(Y = \lfloor\mathbb E[X_i] \times 4\rfloor\) が最頻値となることを留意すると

\(k=1\) \(k=2\) \(k=3\) \(k=4\)
value freq value freq value freq value freq
\(1\) \(1\) \(2\) \(1\) \(3\) \(1\) \(4\) \(1\)
\(2\) \(1\) \(3\) \(2\) \(4\) \(3\) \(5\) \(4\)
\(3\) \(1\) \(4\) \(3\) \(5\) \(6\) \(6\) \(10\)
\(4\) \(1\) \(5\) \(4\) \(6\) \(10\) \(7\) \(20\)
\(5\) \(1\) \(6\) \(5\) \(7\) \(15\) \(8\) \(35\)
\(6\) \(1\) \(7\) \(6\) \(8\) \(21\) \(9\) \(56\)
\(8\) \(5\) \(9\) \(25\) \(10\) \(80\)
\(9\) \(4\) \(10\) \(27\) \(11\) \(104\)
\(10\) \(3\) \(11\) \(27\) \(12\) \(125\)
\(11\) \(2\) \(12\) \(25\) \(13\) \(140\)
\(12\) \(1\) \(13\) \(21\) \(14\) \(146\)
\(14\) \(15\) \(15\) \(140\)
\(15\) \(10\) \(16\) \(125\)
\(16\) \(6\) \(17\) \(104\)
\(17\) \(3\) \(18\) \(80\)
\(18\) \(1\) \(19\) \(56\)
\(20\) \(35\)
\(21\) \(20\)
\(22\) \(10\)
\(23\) \(4\)
\(24\) \(1\)

📘 REMARKS

  • 最小値と最大値の頻度は \(1\) となる
  • 最頻値はちょうど真ん中の値となる(\(Y = \lfloor\mathbb E[X_i] \times 4\rfloor\))
  • 頻度 \(f\) は最頻値に達するまで,以下のようにrecursiveに計算できる

\[ f_k(y) = f_k(y-1) + f_{k-1}(y-1) - f_{k-1}(y-7) \]

上記において,\(f_{k}(y)\) が存在しない場合は \(0\) と扱う

▶  Pythonを用いた計算

フェアなダイスを4つ投げたときの目の合計を \(X_4\) としたとき,\(X_4 = 17\) となる確率は上の表より

\[ \Pr(X_4 = 17) = \frac{104}{1296} = \frac{13}{162} \]

となるはずです.これは sympy を用いて以下のように計算することができます.

import sympy as sy
from sympy import exp

## variables
number_of_dice = 4
target = 17

## set up sympy variable
t = sy.Symbol("t", real=True)

expr = sy.expand(
    ((exp(t) + exp(t) ** 2 + exp(t) ** 3 + exp(t) ** 4 + exp(t) ** 5 + exp(t) ** 6) / 6)
    ** number_of_dice
)

## compute Pr(X = 17)
print(
    expr.coeff(exp(t), target),
)
13/162

上側確率の計算は

## compute Pr(X >= 17)
print(sum(map(lambda x: expr.coeff(exp(t), x), range(target, number_of_dice * 6 + 1))))
155/648

期待値の計算は,\(t\) で微分して \(t=0\) で評価すれば良いので

mean_expr = sy.diff(expr, t)
print(mean_expr.subs(t, 0))
14