我正在按照本教程在python中实现GMM。 tutorial code 我想使目标pdf是高斯混合的一种,在本教程中,它显示了三个独立的高斯。
本教程中的三个高斯不混合,每个曲线代表整个数据。我尝试了以下代码,使三个高斯曲线成为一条混合曲线,但是它不起作用。
pdf1 = pdf(bins, means[0], variances[0])
pdf2 = pdf(bins, means[1], variances[1])
pdf3 = pdf(bins, means[2], variances[2])
pdf_mix = weights[0]*pdf1 + weights[1]*pdf2 + pdf3*weights[2]
plt.plot(bins, pdf_mix, color='purple', label="Cluster mix")
似乎每个高斯的权重都不正确,每次迭代后都没有太大变化,我该如何解决?