如何在球体上生成数据集和概率分布
How to generate datasets and probability distributions on a sphere
我需要在 n 球体上生成随机数据集。我已经设法通过从正态分布中采样点并对其进行归一化来生成统一的数据集。即:
values = np.random.randn(samples,k)
for i in range (0,samples) :
values[i] /= np.linalg.norm(values[i], axis=0)
我现在需要做的是生成熵低于统一数据集的数据集。我该怎么做?
是否有一些参数(例如高斯方差)可以保证某个分布 D_1 的熵低于 D_2?
谢谢!
选择一个向量offset
。将您的积分切换为 np.linalg.norm(values[i] + offset, axis=0)
.
这会将点从偏移点移向另一端。您必须尝试使用它才能使熵达到您想要的值,但通常越接近原点 offset
,熵就越高。
我需要在 n 球体上生成随机数据集。我已经设法通过从正态分布中采样点并对其进行归一化来生成统一的数据集。即:
values = np.random.randn(samples,k)
for i in range (0,samples) :
values[i] /= np.linalg.norm(values[i], axis=0)
我现在需要做的是生成熵低于统一数据集的数据集。我该怎么做?
是否有一些参数(例如高斯方差)可以保证某个分布 D_1 的熵低于 D_2?
谢谢!
选择一个向量offset
。将您的积分切换为 np.linalg.norm(values[i] + offset, axis=0)
.
这会将点从偏移点移向另一端。您必须尝试使用它才能使熵达到您想要的值,但通常越接近原点 offset
,熵就越高。