gpt4 book ai didi

Python sklearn.mixture.GMM 不适合扩展吗?

转载 作者:太空宇宙 更新时间:2023-11-03 14:30:00 25 4
gpt4 key购买 nike

我在 Python 中使用 sklearn.mixture.GMM,结果似乎取决于数据缩放。在下面的代码示例中,我更改了整体缩放比例,但没有更改维度的相对缩放比例。然而,在三种不同的缩放设置下,我得到了完全不同的结果:

from sklearn.mixture import GMM
from numpy import array, shape
from numpy.random import randn
from random import choice

# centroids will be normally-distributed around zero:
truelumps = randn(20, 5) * 10

# data randomly sampled from the centroids:
data = array([choice(truelumps) + randn(5) for _ in xrange(1000)])

for scaler in [0.01, 1, 100]:
scdata = data * scaler
thegmm = GMM(n_components=10)
thegmm.fit(scdata, n_iter=1000)
ll = thegmm.score(scdata)
print sum(ll)

这是我得到的输出:

GMM(cvtype='diag', n_components=10)
7094.87886779
GMM(cvtype='diag', n_components=10)
-14681.566456
GMM(cvtype='diag', n_components=10)
-37576.4496656

原则上,我认为整体数据缩放不重要,总对数似然每次都应该相似。但也许我忽略了一个实现问题?

最佳答案

我有 an answer via the scikit-learn mailing list :在我的代码示例中,对数似然应该确实随比例变化(因为我们正在评估点似然,而不是积分),一个与log(scale)。所以我认为我的代码示例实际上显示了 GMM 给出了正确的结果。

关于Python sklearn.mixture.GMM 不适合扩展吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13161923/

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