一、简介
【本文主题】在有限总体中进行不放回抽样常会遇到超几何分布,本文主要介绍超几何分布及其变体的基本公式与代码实现。
【本文定义】在本文中以下 4 个字母含义一致,粗体表示观测前的随机变量,普通字体表示随机变量的观测结果。
N:样本总量
M:阳性样本总量
n:抽样数量
m:抽到的阳性样本数量

【本文内容】
超几何分布:已知 N 和 M,抽取 n 个样本计算 m 的分布。
变体1:已知 N 和 n,通过测量 m 计算 M 的分布。
变体2:已知 M 和 n,通过测量 m 计算 N 的分布。
变体3:已知 N 和 M,通过测量 m 计算 n 的分布。
【后续案例】后文将会补充它们在实际场景中的应用案例。例如:
产品抽检合格的概率(超几何分布)。
一打刮刮乐中有多少张有奖的奖券(变体1)。
鱼塘中一共有多少鱼(变体2)。
一把曲别针有多少根(变体3)。
二、理论与推导过程
2.1 超几何分布:已知 N 和 M,抽取 n 个样本计算 m 的分布
【定义】盒子中共有 \(N\) 个小球,其中有 \(M\) 个红球,不放回地随机抽取 \(n\) 个小球,抽到红球的个数 \(\mathbf{m}\) 服从超几何分布,记为 \(\mathbf{m}\sim h(n,N,M)\)。
\[ P(\mathbf{m}=x \;|\;\mathbf{n}=n)=\dfrac{\dbinom{M}{x}\dbinom{N-M}{n-x}}{\dbinom{N}{n}},\quad x=0,1,2,\cdots,n. \]
理解:分母是从 \(N\) 个小球中抽取 \(n\) 个小球的组合数,分子是满足条件的组合数,即以下两种情况的乘积:①从 \(M\) 个红球中抽取 \(m\) 个红球,②从 \(N-M\) 个其它颜色小球中抽取另外 \(n-m\) 个小球的组合数。
【性质】交换 \(n\) 和 \(M\),概率分布不变:
$$ P(=x ;|;=n,=N,=M)=P(=
x;|;=M,=N,=n) $$
【数字特征】
\[ \mathbf{E}(\mathbf{m})=n\dfrac{M}{N} \]
\[ \mathbf{Var}(\mathbf{m})=\dfrac{nM(N-M)(N-n)}{N^2(N-1)} \]
【超几何分布的二项近似】
当 \(n\ll N\) 时,即抽取个数远远小于盒中小球总数,每次不放回抽取后,红球占比 \(p=M/N\) 几乎不变,这时不放回抽样可近似地看成放回抽样:
\[ \dfrac{\dbinom{M}{m}\dbinom{N-M}{n-m}}{\dbinom{N}{n}}\approx\dbinom{n}{m}p^{m}(1-p)^{n-m},\quad m=0,1,2,\cdots,n. \]
2.2 变体1:已知 N 和 n,通过测量 m 计算 M 的分布
【定义】盒子中共有 \(N\) 个小球,其中红球个数 \(M\) 待确定,不放回地随机抽取 \(n\) 个小球,抽到了 \(m\) 个红球,求盒中红球总数 \(\mathbf{M}\) 的分布。
由于贝叶斯公式可得:
\[ \begin{align} P(\mathbf{M}=x \;|\; \mathbf{m}=m) &=\dfrac{ P(\mathbf{m}=m \;|\; \mathbf{M}=x)P(\mathbf{M}=x) }{ \sum_\limits{i=0}^N P(\mathbf{m}=m \;|\; \mathbf{M}=i)P(\mathbf{M}=i) } \\ \\ &=\dfrac{ P(\mathbf{m}=m \;|\; \mathbf{M}=x) }{ \sum_\limits{i=0}^N P(\mathbf{m}=m \;|\; \mathbf{M}=i) } \\ \\ &=\dfrac{ \dfrac{\dbinom{x}{m}\dbinom{N-x}{n-m}}{\dbinom{N}{n}} }{ \sum_\limits{i=0}^N \dfrac{\dbinom{i}{m}\dbinom{N-i}{n-m}}{\dbinom{N}{n}} } \\ \\ &=\dfrac{ \dbinom{x}{m}\dbinom{N-x}{n-m} }{ \sum_\limits{i=0}^N \dbinom{i}{m}\dbinom{N-i}{n-m} } \\ \\ &={\color{blue} \dfrac{ \dbinom{x}{m}\dbinom{N-x}{n-m} }{ \dbinom{N+1}{n+1} },\quad x=m,m+1,\cdots,N-(n-m). } \end{align} \]
注1:第二个等式,假设事先对 \(\mathbf{M}\) 没有任何了解,即 \(\mathbf{M}\) 的每种取值都等可能出现。
注2:最后一个等式,参见《统计趣题-前k个次序统计量的平均值的期望》第2.1节。
2.3 变体2:已知 M 和 n,通过测量 m 计算 N 的分布
【定义】盒子中小球总数 \(N\) 待确定,其中有 \(M\) 红球,不放回地随机抽取 \(n\) 个小球,抽到了 \(m\) 个红球,求盒中小球总数 \(\mathbf{N}\) 的分布。
由于贝叶斯公式可得:
\[ \begin{align} P(\mathbf{N}=x \;|\; \mathbf{m}=m) &=\dfrac{ P(\mathbf{m}=m \;|\; \mathbf{N}=x)P(\mathbf{N}=x) }{ \sum_\limits{i=N_0}^\infty P(\mathbf{m}=m \;|\; \mathbf{N}=i)P(\mathbf{N}=i) } \\ \\ &=\dfrac{ P(\mathbf{m}=m \;|\; \mathbf{N}=x) }{ \sum_\limits{i=N_0}^\infty P(\mathbf{m}=m \;|\; \mathbf{N}=i) } \\ \\ &=\dfrac{ \dfrac{\dbinom{M}{m}\dbinom{x-M}{n-m}}{\dbinom{x}{n}} }{ \sum_\limits{i=N_0}^\infty \dfrac{\dbinom{M}{m}\dbinom{i-M}{n-m}}{\dbinom{i}{n}} } \\ \\ &={\color{blue} \dfrac{\dbinom{M}{m}\dbinom{x-M}{n-m}}{\dbinom{x}{n}}\dfrac{m(m-1)}{nM},\quad x=N_0,N_0+1,\cdots,\infty. } \end{align} \]
其中 \(N_0=\mathbf{max}(M,n,m)\)。
注1:第二个等式,假设事先对 \(\mathbf{N}\) 没有任何了解,即 \(\mathbf{N}\) 的每种取值都等可能出现。
注2:最后一个等式,用到了以下公式(证明候补):
\[ \sum_\limits{i=\max(M,n,m)}^\infty \dfrac{\dbinom{M}{m}\dbinom{i-M}{n-m}}{\dbinom{i}{n}}=\dfrac{nM}{m(m-1)}. \]
2.4 变体3:已知 N 和 M,通过测量 m 计算 n 的分布
【定义】盒子中共有 \(N\) 个小球,其中有 \(M\) 个红球,随机抽取一批样本,其中有 \(m\) 个红球,求抽取样本量 \(\mathbf{n}\) 的分布。
由于贝叶斯公式可得:
\[ \begin{align} P(\mathbf{n}=x \;|\; \mathbf{m}=m) &=\dfrac{ P(\mathbf{m}=m \;|\; \mathbf{n}=x)P(\mathbf{n}=x) }{ \sum_\limits{i=m}^N P(\mathbf{m}=m \;|\; \mathbf{n}=i)P(\mathbf{n}=i) } \\ \\ &=\dfrac{ P(\mathbf{m}=m \;|\; \mathbf{n}=x) }{ \sum_\limits{i=m}^N P(\mathbf{m}=m \;|\; \mathbf{n}=i) } \\ \\ &=\dfrac{ \dfrac{\dbinom{M}{m}\dbinom{N-M}{x-m}}{\dbinom{N}{x}} }{ \sum_\limits{i=m}^N \dfrac{\dbinom{M}{m}\dbinom{N-M}{i-m}}{\dbinom{N}{i}} } \\ \\ &={\color{blue} \dfrac{\dbinom{M}{m}\dbinom{N-M}{x-m}}{\dbinom{N}{x}}\dfrac{M+1}{N+1},\quad x=m,m+1,\cdots,N. } \end{align} \]
注1:第二个等式,假设事先对 \(\mathbf{n}\) 没有任何了解,即 \(\mathbf{n}\) 的每种取值都等可能出现。
注2:最后一个等式,用到了以下公式(证明候补):
\[ \sum_\limits{i=m}^N\dfrac{\dbinom{M}{m}\dbinom{N-M}{i-m}}{\dbinom{N}{i}}=\dfrac{N+1}{M+1},\quad 0\leqslant m\leqslant M\leqslant N. \]
三、计算代码
3.1 最短置信区间(精确求解)
使用条件:分布律是单峰的。
定义函数:计算离散随机变量最短置信区间
1 | (*计算离散随机变量最短置信区间*) |
函数使用示例:
1 | nN=20;(*已知:样品总量*) |
3.2 等尾置信区间(精确求解)
定义函数:计算离散随机变量等尾置信区间
1 | (*计算离散随机变量等尾置信区间*) |
函数使用示例:
1 | nN=100;(*已知:样本总量*) |
3.3 等尾置信区间(中心极限定理,正态分布近似求解)
用正态分布近似计算总体阳性占比的置信区间。
1 | (*用正态分布近似计算总体阳性占比的置信区间*) |
3.4 等尾置信区间(贝叶斯定理,Beta分布近似求解)
用Beta分布近似计算总体阳性占比的置信区间。
1 | (*用Beta分布近似计算总体阳性占比的置信区间*) |
四、测试与比较
什么情况下可以使用近似方法,不同方法在不同参数下的比较。
精确计算函数的性能,参数的上限。
五、总结
知识点
应用点
FAQ
代码相关问题
公式相关问题
假设是否合理
还有哪些解法