在高斯混合模型(GMM)拟合中有一个我不理解的部分。我很乐意听到你的建议:
g = GMM(3, n_iter=1000, verbose=True, random_state=3)
g.fit(WORK)
np.random.seed(1)
X = g.sample(1000)
# fit models with 1-10 components
N = np.arange(1, 11)
models = [None for i in range(len(N))]
for i in range(len(N)):
models[i] = GMM(N[i]).fit(X)发布于 2016-03-24 02:54:32
它在假设混合物中分别有i=1,2和...,10分量的情况下生成拟合列表models,目的可能是选择其中最好的模型。
发布于 2016-10-18 15:20:43
谁能指出为什么我们要用工作中的3个组件创建一个GMM,然后从GMM中提取样本以获得更好的模型
我会把这个简化为,
np.random.seed(1) #will ensure reproducibiity
# fit models with 1-10 components
N = np.arange(1, 11)
models = [None for i in range(len(N))]
#find the model with minimum aic score
min_aic = np.inf
model_index_with_min_aic = -1
for i in range(len(N)):
models[i] = GMM(N[i], n_iter=1000).fit(WORK)
aic = models[i[.aic(WORK)
if aic < min_aic:
model_index_with_min_aic = i
min_aic = aic发布于 2019-07-31 18:03:16
GMM基本上是为每个训练样本创建一个“模型”,所以如果你有10个训练样本,你可能也会得到每个训练样本的10个模型。
如果你想测试这个模型,你还需要调用GMM创建的每个模型,这样就像1:1xN次
https://stackoverflow.com/questions/36184176
复制相似问题