高斯混合模型
高斯混合模型(Gaussian Mixture Model, GMM)用多个高斯分布的加权和描述复杂数据分布。它常用于聚类、密度估计和异常检测。
概念详解
其中
数学公式及其推导
多元高斯分布为:
E 步计算后验责任度:
M 步更新参数:
应用代码
python
from sklearn.datasets import make_blobs
from sklearn.mixture import GaussianMixture
X, _ = make_blobs(n_samples=300, centers=[[-2, -2], [2, 2], [0, 4]], random_state=0)
gmm = GaussianMixture(n_components=3, covariance_type="full", random_state=0)
gmm.fit(X)
print(gmm.means_)
print(gmm.predict_proba(X[:5]))小结
GMM 可以看作软聚类模型:一个样本不是绝对属于某个簇,而是以不同概率属于多个高斯成分。它的训练通常依赖 EM 算法。