2022-04-13 17:07:23
浏览数 (1)
- 数学杂谈:高维空间向量夹角小记
- 1. 问题描述
- 2. n维空间中的均匀向量
- 1. 2维以及3维空间中的特殊情况
- 1. 2维空间中的均匀分布向量
- 3. 3维空间中的均匀分布向量
- 2. n维坐标系中的均匀向量
- 3. 正态分布的巧妙应用
- 3. n维空间中两向量夹角考察
- 4. 总结 & 思考
给出具体的python实现如下:
代码语言:javascript
复制import numpy as np
def dummy():
theta = np.arccos(np.random.uniform(-1, 1))
phi = np.random.uniform() * 2 * np.pi
x = np.sin(theta) * np.sin(phi)
y = np.sin(theta) * np.cos(phi)
z = np.cos(theta)
return (x, y, z)
2. n维坐标系中的均匀向量
现在,我们来考察n维空间中的情况。
我们仿照3维空间的情况,只要先给出体积元的极坐标表达式,然后考察其中空间角的表达式即可。
给出n维空间下的极坐标转换如下:
可以得到n维空间上的体积元:
可以看到,这个空间体积元上的概率密度只与径向距离r有关,而与空间角无关,因此,上述方式构造的n维向量在n维空间角上是呈现均匀分布的。
而我们将其进行归一化处理,即可得到n维空间当中均匀分布的单位向量。
我们在二维和三维空间当中验证上述方法的有效性如下:
3. n维空间中两向量夹角考察
综上,我们即可对n维空间上的单位向量进行随机生成。
那么,我们就可以通过蒙特卡洛生成的方式来考察两个随机向量之间的夹角与维度n之间的变化关系。
我们给出结果图如下:
4. 总结 & 思考
综上,苏剑林在他的博客当中提到的这个结论就得到了证明,确实是一个非常有意思的结论。