技术问询:真随机整数序列是否必然符合均匀分布?
这个问题问到点子上了,刚好我对随机数生成这块做过不少功课,来给你理清楚:
核心结论先给你
真随机生成的整数序列在统计预期上是符合均匀分布的,但绝对做不到“总是”符合——这和随机本身的定义是挂钩的。
先掰明白两个关键概念:不可预测性 vs 均匀分布
你提到的“不可预测性”是随机序列的核心本质:不管你拿到多少之前的序列数据,都没办法准确预测下一个会出现什么值,完全没有规律可循。而均匀分布是一种统计层面的属性,指的是当样本量足够大时,每个可能的结果(比如0-9的每个数字)出现的频率会趋近于它的理论概率(这里就是1/10)。
这俩不是一回事:不可预测的序列不一定在小样本里看起来均匀,但合格的真随机源,长期统计一定是趋近均匀的。
为什么“预期上符合均匀分布”?
正经的真随机数生成器(TRNG)都是基于物理随机现象的——比如放射性衰变的粒子计数、大气噪声的波动、电路热噪声等等。这些物理过程本身没有偏向性:比如放射性原子核衰变的时间点是完全随机的,没有理由偏向生成某个数字。
合格的TRNG都会经过严格的统计测试(比如NIST的随机数测试套件),确保输出的序列在统计上趋近均匀分布。所以从预期来说,生成0-9的序列时,每个数字出现的概率都是1/10,样本量越大,实际频率越接近这个值。
为什么做不到“总是”符合?
这恰恰是真随机的特性:既然是完全不可预测的,那理论上就存在出现极端偏差的可能——比如连续出100个0,或者某段1000个数字里700个都是5。虽然这种情况的概率极低(比如连续100个0的概率是(1/10)^100,几乎不可能碰到),但它是可能发生的。
这种极端序列显然不符合均匀分布,但它依然是真随机的——因为没人能提前预测它会出现,它的产生完全是物理随机过程的结果。
额外提醒:如果真随机序列长期偏离均匀分布怎么办?
那大概率是你的真随机源出问题了——比如硬件老化、电路干扰导致某个值更容易被生成,这时候它就不是一个合格的TRNG了。这时候就得排查硬件或者换一个可靠的源。
内容的提问来源于stack exchange,提问作者ComSicial

