从椭圆形置信区域统一采样

时间:2014-07-01 14:52:22

标签: python numpy multidimensional-array random-sample hypercube

我有一个四维椭球,我想从中均匀地绘制样本。我想到了一种在椭圆体周围使用超立方体的方法。我们可以从中绘制样本并检查它是否在椭圆体中。但超立方体和椭球体在4个维度上的体积比为0.3。这意味着我只有30%的成功率。由于我的算法有速度问题,我不想使用这种方法。我也一直在研究逆变换采样。你能告诉我如何用四维椭圆体做到这一点吗?

1 个答案:

答案 0 :(得分:1)

您可以将超椭圆体转换为球体。

因此给定的algorithm对于球体有效,但很容易转换为椭圆体。

  1. 从所有坐标x1到x4的高斯分布N(0,1)绘制。 X = [X1,X2,X3,X4]。
  2. 规范化向量x。 ==>您已在表面上获得了均匀分布的矢量。
  3. 现在,从[0,1]中为单位球体的内点绘制半径u
  4. p = u **(1/4)* x是4维单位球内的均匀分布矢量。