对于更复杂的概率分布,则可能需要比方法中所描述的生成样本更先进的方法 都市斯算法从被唯一已知的一个常数分布抽取样品。随机数被从与概率密度函数等于或正比于提议功能的分布产生。 要生成随机数: 假设初始值 画一个样本, 接受
增量 生成使用都市报斯法的随机数 在实例中它是很难找到一个有效的大都市,黑斯廷斯建议分布,切片采样算法并不需要一个明确的规范。切片采样算法使用的垂直和水平的步骤序列抽取样本的区域中的密度函数下。首先,它随机选择的高度从0到密度函数 如果一个函数 假设初始值 画一个真正的价值 查找间隔 绘制新点 增量 切片采样可以从与所述密度函数的任意形式的分布产生随机数,条件是一种有效的数值程序可用以找到间隔 生成使用切片取样方法与随机数 大都市-Hastings和切片采样可以产生MCMC链,慢慢混合,并需要很长的时间来收敛到固定的分配,特别是在中等尺寸和高维问题。使用基于梯度的哈密顿蒙特卡洛(HMC)取样,以加快在这些情况下取样。 要使用HMC采样,你必须指定日志 该HMC抽样算法采用随机“动量矢量” 该HMC算法分配一个高斯密度具有协方差矩阵
然后,它定义了一个“能量函数”为
同 要生成随机样本中,HMC算法: 假定的初始值 产生动量矢量的一个示例: 进化状态
如果运动方程可以被精确求解,能量(并且因此密度)将保持不变: 接受 直到它已生成的样本的期望数量重复步骤2到4。 要使用HMC取样,使用创建一个采样器使用都市黑斯廷斯算法
mhsample
slicesample
hmcSampler
使用切片取样
slicesample
使用哈密顿蒙特卡罗
hmcSampler
也可以看看
功能