gpt4 book ai didi

python - 在 Python 中生成欧几里德范数 <= 1 的随机向量?

转载 作者:太空狗 更新时间:2023-10-29 17:47:38 24 4
gpt4 key购买 nike

更具体地说,给定一个自然数 d,我如何在 R^d 中生成随机向量,使得每个向量 x 的欧几里德范数 <= 1?

通过 numpy.random.rand(1,d) 生成随机向量是没有问题的,但是这种具有范数 <= 1 的随机向量的可能性对于甚至不小的 d 来说都是不好的。例如,即使对于 d = 10,大约 0.2% 的此类随机向量具有适当小的范数。所以这似乎是一个愚蠢的解决方案。

编辑:回复:Walter 的评论,是的,我正在寻找 R^d 单位球中向量的均匀分布。

最佳答案

基于 hypersphere point picking 上的 Wolfram Mathworld 文章和 Nate Eldredge's answer对于 math.stackexchange.com 上的类似问题,您可以通过生成 d 独立高斯随机变量的向量和均匀分布在闭区间[0, 1],然后将向量归一化为范数U^(1/d)

关于python - 在 Python 中生成欧几里德范数 <= 1 的随机向量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37577803/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com