@TOC 本文已参与「新人创作礼」活动,一起开启掘金创作之路。
0、拉丁超立方抽样的理论基础
0.1、概况
拉丁超立方体采样(LHS)最早由McKay等提出,并由Iman和Conover进一步发展,在很多领域中具有广泛的应用性。
拉丁超立方抽样也是一种分层抽样,在蒙特∙卡罗抽样方法的基础上对采样策略进行了改进,从而做到在保持统计显著性的同时减小采样规模。根据对每个超立方体内样本点的确定方式不同,可将拉丁超立方抽样技术分为:
- 中值拉丁超立方抽样法
- 拉丁超立方重要抽样法
- 含随机排序法的拉丁超立方抽样
笔者重点介绍含随机排序法拉丁超立方抽样法的基本原理。
0.2、基本原理
拉丁超立方抽样的关键是对累积概率分布进行分层,累积概率在0到1之间,分成相等的间隔块后,根据间隔块的概率值得到样本区间。然后从每个样本区间中随机抽取样本,于是以抽样点代表每个区间的值。 根据n个随机变量, ,∙∙∙, ,∙∙∙, 建立维向量空间,每个随机变量都遵循一定的概率分布,的累积概率分布函数可以表示为
0.3、基本步骤
假设在每一维向量空间中抽取N个样本,得到拉丁超立方抽样模拟的步骤为:
- 将每一维向量空间分成N份,根据式上式的反函数求得对应区间,使得每个区间具有相同的概率;
- 在每一维的每个区间中随机选取一个点作为采样点;
- 对每一维空间选出的样本点进行随机排序组成各自向量;
- 将上面采集到的样本向量进行组合就得到一个的样本矩阵。
如下图所示,累积概率分布函数曲线被分成三个区间,每个区间都抽取一个样本,每个区间都有样本取出,且一旦取出后,这个区间将不再被抽样。
避免了在抽样量较少时可能出现的“聚集”问题,样本可以更加准确反映输入概率分布,实际应用时具有高效性。
1、导入库和基本准备
如前正态分布的抽样博客。
相对于生成生态分布随机变量的抽样方法及代码,仅仅需要改变生成部分即可,故本文仅仅展示了修改部分代码,其他部分请参见博文《对应于正态分布的拉丁超立方抽样》
2、生成(具有对数正态分布的随机变量)参数的随机数
代码转第6条
3、将生成的随机数输出到Excel中
如前正态分布的抽样博客。
注意参数个数-D的变化对代码的影响
4、将生成的随机数输出到图像中
如前正态分布的抽样博客。
注意参数个数-D的变化对代码的影响