【问题标题】:Sampling from high dimensional sphere with noise从带噪声的高维球体中采样
【发布时间】:2015-10-17 12:34:33
【问题描述】:

我想从带有噪声的高维球体中生成一个向量样本。

I.E.我正在尝试创建一个样本,使得任何向量 X 在 R^N 中并保持 ||X+epsilon||^2 = 1 其中 epsilon 是 R^N 中的 iid 向量,其中任何分量 epsilon_j 分布 N(0 ,sigma^2).

有人知道如何实现它吗?我更喜欢使用 R。

谢谢!

【问题讨论】:

    标签: r statistics random-sample multisampling


    【解决方案1】:

    我认为这应该可行。它可以很容易地变成一个函数。

    d = 5         # number of dimensions
    n_draws = 100 # number of draws
    sigma = 0.2   # standard deviation
    

    我首先对应该均匀分布在单位球面上的随机向量进行采样。我通过对 d 维多元正态分布的绘图进行归一化来做到这一点。 (这一步可能有更直接的方法,但我稍后会再次使用rmvnorm,所以这很方便。)我称它们为dirs,因为因为我们正在标准化,所以我们真正要做的就是这一步是对“方向”进行采样。

    library(mvtnorm)
    # sample
    dirs = rmvnorm(n = n_draws, mean = rep(0, d))
    # normalize
    dirs = dirs / sqrt(rowSums(dirs^2))
    

    现在我们再次从多元法线绘制以添加噪声。

    x = dirs + rmvnorm(n = n_draws, mean = rep(0, d), sigma = sigma * diag(d))
    

    要将其映射到您在问题中使用的变量,请定义 Y = X + epsilon。我的dirs 是Y,那么我添加的噪音是-epsilon;添加它们会产生您要求的 X。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-07
      • 2020-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多