我有两个 3D 分布,我想对这两个样本运行 Kolmogorov-Smirnov 测试 来测量它们的相似性。 scipy.stats 有一个在 1 维度 中实现的 2 样本 K-S 测试的实现,我发现了 2 维度 中的实现,但没有在 3 维(或 N 维)中实现。
有人可以对 3D 分布实施 2 样本 K-S 检验吗?
KS 测试不容易推广到多个维度;请参阅有关该问题的 KS 测试的维基百科文章。即使您可以找到或创建合适的概括,我想知道您是否真的想这样做,因为显着性测试通常在大型数据集上毫无用处。
如果您想量化分布之间的差异,我的建议是考虑基于熵的量,例如互信息或 Kullback-Leibler 散度。
也许您可以在这里详细说明您的目标。
查看我的 Python 库 genai-evaluation,它就是这样做的:任何维度中两个观察到的(经验)分布之间的 KS 距离。