将高斯混合模型拟合到一个非常简单的分布
Fitting a Gaussian Mixture Model to a very simple distribution
我有一个保存在数据框中的简单离散分布:
dist_df = pd.DataFrame({'x': [ 1.0, 2.0, 3.0, 4.0, 5.0],
'y': [ 780, 1708, 10028, 15696, 10779]})
我只是想从 sklearn 拟合一个高斯混合模型到这个,并获得我需要多少个高斯,它们的参数以及每个元素属于每个高斯的概率。但首先,我只想拟合和预测我的分布。我查看了 sklearn 文档,但我发现的唯一示例是半页代码,我真的不明白。这应该很简单,但我试图通过将其应用于此来理解它是如何工作的。
方法如下。请注意,分量的数量不能超过观察的数量,在本例中为 6
。您可以阅读更多 here:
from sklearn.mixture import GaussianMixture as GMM
number_of_components = 2 # specify the number of components here
gmm = GMM(n_components=number_of_components).fit(dist_df)
我有一个保存在数据框中的简单离散分布:
dist_df = pd.DataFrame({'x': [ 1.0, 2.0, 3.0, 4.0, 5.0],
'y': [ 780, 1708, 10028, 15696, 10779]})
我只是想从 sklearn 拟合一个高斯混合模型到这个,并获得我需要多少个高斯,它们的参数以及每个元素属于每个高斯的概率。但首先,我只想拟合和预测我的分布。我查看了 sklearn 文档,但我发现的唯一示例是半页代码,我真的不明白。这应该很简单,但我试图通过将其应用于此来理解它是如何工作的。
方法如下。请注意,分量的数量不能超过观察的数量,在本例中为 6
。您可以阅读更多 here:
from sklearn.mixture import GaussianMixture as GMM
number_of_components = 2 # specify the number of components here
gmm = GMM(n_components=number_of_components).fit(dist_df)