Advertisement

基于Python的高斯混合聚类算法实现

阅读量:

高斯混合模型聚类(Gaussian Mixture Mode,GMM)

该模型假设数据服从混合多元高斯分布的概率模型,在聚类分析中被广泛应用于探索数据内部结构的一种统计方法。在生成数据时,默认情况下每个样本x被视为来自k个不同多元高斯分布的混合体,并通过加权平均的方式综合其概率密度函数来描述其归属关系。

其中 p(x | \mu ,\Sigma )为服从高斯分布的n维随机向量 的概率密度函数

python 代码实现如下:
复制代码
    # 高斯分布的概率密度函数
    def prob(x, mu, sigma):
    n = np.shape(x)[1]
    expOn = float(-0.5 * (x - mu) * (sigma.I) * ((x - mu).T))
    divBy = pow(2 * np.pi, n / 2) * pow(np.linalg.det(sigma), 0.5)  # np.linalg.det 计算矩阵的行列式
    return pow(np.e, expOn) / divBy

在式(1.2)中, μ代表一个n维均值向量而Σ则表示一个n×n的协方差矩阵由此可见, 式(1.1)中的μ_i与Σ_i分别对应于第i个高斯混合成分的参数其中α_i是一个大于零的"混合

全部评论 (0)

还没有任何评论哟~