在给定GMM参数($ \ pi_k,\ mu_k,\ Sigma_k $)的情况下,我想在(n,d)
数据点列表上(有效)评估高斯混合模型(GMM)。我找不到使用标准sklearn
或scipy
软件包进行此操作的方法。
编辑:假定存在n
个数据点,维度为d
,因此(n,d)
,并且GMM具有k
个分量,因此例如第k个分量的协方差矩阵,\ Sigma_k是(d,d)
,而\ Sigma总共是(k,d,d)
。
例如,如果您首先 fit sklearn中的GMM,则可以调用score_samples
,但这仅在我适合数据时才有效。或者,在scipy
中,您可以对multivariate_normal.pdf
的每组参数进行循环,并进行加权总和/点积,但这很慢。 (对我而言)检查任何一个的源代码都无法显示。
我目前正在与n维数组和张量点积一起入侵某物.. oy ..希望有人有更好的方法吗?