一、均匀随机数生成算法
- 平方取中法
将2s位十进制数字平方后取中间的2s位数字:
但其长度较短且均匀性较差,针对性的改进方法是乘积取中法:
但是随机数长度仍然不够,且对初值依赖比较大。 - 移位法
- 混合线性同余法
周期达到M的充要条件为:
- Box-Muller变换
如果相互独立的两个随机变量,则满足的
其他一些分布的随机数生成方法亦可以通过类似的变换得到。
二、markov链
- 马尔科夫性
下一个状态只依赖于当前状态,而与之前所有状态无关
- 马氏定理
对于非周期且任意两点连通的马氏链,其概率转移矩阵的极限式子存在,其中称为马氏链的平稳分布,并有
- 细致平稳条件
如果非周期马氏链的转移矩阵和分布满足
则是马氏链的平稳分布,上式被称为细致平稳条件 (detailed balance condition)。
三、MCMC(Markov Chain Monte Carlo)
设随机变量,将markov链的状态空间看做随机变量的所有可能取值。
因为,当马氏链转移步数足够大时,状态分布将收敛到平稳分布。
所以,如果能构造一个转移矩阵为的马氏链,使其平稳分布恰好等于随机变量的概率分布,则可依次生成符合该分布的样本(即每一步的状态值)。
假设已经有一个转移矩阵,通常,我们构造,则有
从而,令为状态转移矩阵即可。
因为总是小于1,算法速度比较慢,我们可以令来改善算法速度,这个算法称为Metropolis-Hastings算法。
Metropolis-Hastings算法四、Gibbs Sampling
初始转移矩阵可以人为指定,故而存在改进空间。
对于高纬空间,的存在也使得采样算法效率不高。
考察坐标相同的两个点,我们发现:
从而有即
于是我们可以如下构造平面上任意两点之间的转移概率矩阵Q:
从而有如下采样算法:
对于多维情况,只需令 n维Gibbs采样算法
网友评论