露分け


離散一様分布

2025-12-23

これは全ての目の出る確率が等しい賽子を例として挙げられる。六面体の賽子の目は1,2,3,4,5,6の六つであり、傷などがない理想的なものであれば、どの面も出る確率は$1/6$である。同じように$\kappa$種類の$k_{1},k_{2},\cdots,k_{\kappa}$の離散確率変数が等間隔$d$に存在するとき、離散数の個数は最大から最小を引き間隔で割り一を足すことで得られる。これは数式にして \[ \kappa=\frac{k_{\kappa}-k_{1}}{d}+1=\frac{k_{\kappa}-k_{1}+d}{d} \]である。先程の賽子の例では$(6-1+1)/1=6$により$\kappa=6$が得られる。$\kappa$で等分したものが確率質量関数である。つまり \[ f(k_{i})=\frac{1}{\kappa}=\frac{d}{k_{\kappa}-k_{1}+d} \] である。期待値は \begin{align} \mathrm{E}[K] &=\sum_{k_{i}=k_{1}}^{k_{\kappa}} k_{i} f(k_{i}) \notag\\ &=\sum_{k_{i}=k_{1}}^{k_{\kappa}} k_{i} \frac{1}{\kappa} \notag\\ &=\frac{1}{\kappa}\sum_{k_{i}=k_{1}}^{k_{\kappa}} k_{i} \notag \end{align} となる。この総和は \begin{align} \sum_{k_{i}=k_{1}}^{k_{\kappa}} k_{i} &=k_{1}+k_{2}+\cdots+k_{\kappa} \notag\\ &=k_{1}+(k_{1}+d)+\cdots+(k_{1}+(\kappa-1)d) \notag\\ &=k_{1}\kappa+\big\{0+1+\cdots+(\kappa-1) \big\}d \notag\\ &=\frac{2k_{1}\kappa}{2}+\frac{\kappa(\kappa-1)}{2}d \notag \end{align} と計算できる。$\kappa=\frac{k_{\kappa}-k_{1}}{d}+1$を$(\kappa-1)d=k_{\kappa}-k_{1}$と書き換えて第二項に代入すると \begin{align} \sum_{k_{i}=k_{1}}^{k_{\kappa}} k_{i} &=\frac{2k_{1}\kappa}{2}+\frac{\kappa}{2} \Big(k_{\kappa}-k_{1} \Big) \notag\\ &=\frac{\kappa}{2} \Big(k_{1}+k_{\kappa} \Big) \notag \end{align} となる。そのため期待値は \begin{align} \mathrm{E}[K] &=\frac{1}{\kappa} \frac{\kappa}{2} \Big(k_{1}+k_{\kappa} \Big) \notag\\ &=\frac{k_{1}+k_{\kappa}}{2} \notag \end{align} である。この式に間隔$d$がないため確率変数が偶数のような間がある場合でも成り立つ。特別な場合として間隔$d$が一であり、数え始め$k_{1}$が一であるとき$k_{\kappa}=\kappa$となる。このとき \[ \mathrm{E}[K]=\frac{\kappa+1}{2} \] となる。

分散を計算する。まず \begin{align} \mathrm{Var}[K] &=\sum_{k_{i}=k_{1}}^{k_{\kappa}} (k_{i}-\mu)^{2} f(k_{i}) \notag\\ &=\mathrm{E}[K^{2}]-\Big(\mathrm{E}[K]\Big)^{2} \notag\\ &=\frac{1}{\kappa}\sum_{k_{i}=k_{1}}^{k_{\kappa}} k_{i}^{2} -\left( \frac{k_{\kappa}+k_{1}}{2} \right)^{2} \notag \end{align} と分解する。ここで第一項の総和は \begin{align} \sum_{k_{i}=k_{1}}^{k_{\kappa}} k_{i}^{2} &= \sum_{i=0}^{\kappa-1} (k_{1}+id)^2 \notag\\ &= k_{1}^{2} \sum_{i=0}^{\kappa-1}1 + 2k_{1}d\sum_{i=0}^{\kappa-1}i + d^{2} \sum_{i=0}^{\kappa-1} i^{2} \notag\\ &= k_{1}^{2} \kappa + 2k_{1}d \frac{(\kappa-1)\kappa}{2} + d^{2} \frac{(\kappa-1)\kappa(2\kappa-1)}{6} \notag \end{align} となり、期待値の別の書き方として \begin{align} E[K] &=\frac{k_{\kappa}+k_{1}}{2} \notag\\ &=\frac{(\kappa-1)d+k_{1}+k_{1}}{2} \notag\\ &=k_{1}+\frac{(\kappa-1)d}{2} \notag \end{align} があり、これを二乗すると \[ \Big(E[K]\Big)^{2} =k_{1}^{2} +k_{1}(\kappa-1)d +\frac{(\kappa-1)^2 d^{2}}{4} \] となる。以上より分散は \begin{align} \mathrm{Var}[K] &= \frac{1}{\kappa} \left( k_{1}^{2} \kappa + 2k_{1}d \frac{(\kappa-1)\kappa}{2} + d^{2} \frac{(\kappa-1)\kappa(2\kappa-1)}{6} \right) - \left(k_{1}^{2} +k_{1}(\kappa-1)d +\frac{(\kappa-1)^2 d^{2}}{4}\right) \notag\\ &= d^{2} \frac{\kappa-1}{24} \left\{4(2\kappa-1)-6(\kappa-1)\right\} \notag\\ &= \frac{\kappa^2-1}{12}d^{2} \notag \end{align} である。ここで間隔が一であるなら \begin{align} \mathrm{Var}[K] &= \frac{\kappa^2-1}{12} \notag \end{align} となる。また総数$\kappa$は$\kappa=k_{\kappa}-k_{1}+1$となるため \begin{align} \mathrm{Var}[K] &= \frac{(k_{\kappa}-k_{1}+1)^2-1}{12} \notag \end{align} でもある。

確率母関数を求める。定義より \[ G(t) =\mathrm{E}[t^{K}] =\sum_{k_{i}=k_{1}}^{k_{\kappa}} t^{k_{i}} f(k_{i}) =\sum_{i=0}^{\kappa-1} t^{k_{1}+id} \frac{1}{\kappa} =\frac{t^{k_{1}}}{\kappa} \sum_{i=0}^{\kappa-1} \left(t^{d} \right)^{i} \] であり、$T=t^{d}$とすると総和の部分は等比級数となるため \begin{align} \sum_{i=0}^{\kappa-1} T^{i} = \begin{cases} \frac{1-T^{\kappa}}{1-T}\ \ \ (T\neq 1) \\ \kappa\ \ \ \ \ \ \ \ (T = 1) \end{cases}\notag \end{align} となる。故に$t^d \neq 1$のとき \begin{align} G(t) = \frac{t^{k_{1}}}{\kappa} \frac{1-t^{d\kappa}}{1-t^{d}}\ \ \ (t \neq 1) \notag \end{align} である。これを微分してロピタルの定理を使えば期待値が求まると思われる。しかし計算は困難であったため、別の方法として総和のまま微分する。 \[ \frac{\mathrm{d}}{\mathrm{d} t} G(t) = \frac{1}{\kappa}\sum_{i=0}^{\kappa-1} (k_{1}+id) t^{k_{1}+id-1}. \] これは$t=1$のとき \begin{align} \left. \frac{\mathrm{d}}{\mathrm{d} t} G(t) \right|_{t=1} &= \frac{1}{\kappa} \sum_{i=0}^{\kappa-1} (k_{1}+id) \notag\\ &=\frac{1}{\kappa}\left( k_{1}\kappa+\frac{(\kappa-1)\kappa}{2}d \right)\notag\\ &= k_{1}+\frac{\kappa-1}{2}d \notag \end{align} となる。これはすでに求めた期待値と一致する。ただしこの計算からわかるように確率母関数を用いても計算は容易にはならない。この確率分布の応用例として独戦車問題がある。後日加筆するかもしれない。

数値計算の例として$k=1,6,11,16,21,26,31,36,41,46,51$の$(k_{1},k_{\kappa},\ d)=(1,\ 51,\ 5)$を計算する。このとき \begin{align} &\kappa = \frac{k_{\kappa}-k_{1}+d}{d}=\frac{51-1+5}{5}=11 \notag\\ &\mathrm{E}[K]=k_{1}+\frac{\kappa-1}{2}d=1+\frac{11-1}{2}5=26 \notag\\ &\mathrm{Var}[K]=\frac{\kappa^{2}-1}{12}d^{2}=\frac{121-1}{12}25=250 \notag \end{align} となる。下記のシミュレーターで試すと凡その値が出るはずである。このシミュレーションはPythonを使った。コードの骨格は

import numpy as np

values = k1 + d * np.arange(kappa)
rng = (
np.random.default_rng(seed)
if seed is not None
else np.random.default_rng()
)
samples = rng.choice(values, size=N)

print(samples.mean())
print(samples.var(ddof=0))

である。$\mathrm{values}$で$k_{1}$から$k_{\kappa}$までの離散一様分布の値をリストにする。$\mathrm{arange(\kappa)}$は零から$\kappa-1$まででリストを作るため一つずれがあると思うかもしれないが \begin{align} \mathrm{values} &= k_{1} + d\ *\ \Big[0,1,\ldots,\kappa-1 \Big] \notag\\ &=\Big[ k_{1},\ k_{1}+d,\ k_{1}+2d,\ \ldots,\ k_{1}+(\kappa-1)d \Big] \notag\\ &= \Big[k_{1},\ k_{2},\ k_{3},\ \ldots,\ k_{\kappa} \Big] \notag \end{align} となり、離散一様分布の値をリストにしていることが分かる。続いてrng()で乱数を作成する。次の行で$\mathrm{values}$の値を重複を許して$\mathrm{N}$個取り出しリストを作り$\mathrm{samples}$という名前にする。このようにして疑似的に離散一様分布の確率変数を生み出す。この数値の列の平均を$\mathrm{mean()}$で取り$\mathrm{var(ddof=0)}$で分散を取る。括弧の中の$\mathrm{ddof=0}$は総平方和を除して分散を作るとき除する数を指定する引数である。$\mathrm{ddof=0}$の場合は通常の分散と同じく除数は総数であり、$\mathrm{ddof=1}$の場合は不偏分散と同じく除数は総数から一引いたものである。シミュレーションの一番下の乱数seedは疑似乱数を生じ初期値を変動させる機能である。注目すべき点として期待値は$d$に依存しないことをすでに示した。シミュレーションから確かめることができる。例えば$(k_{1},k_{\kappa},\ d)=(1,\ 51,\ 5)$から$(k_{1},k_{\kappa},\ d)=(1,\ 51,\ 1)$に変えるとよい。


シミュレーション