主要内容

集群使用高斯混合模型

这个主题提供了一个介绍集群使用高斯混合模型(GMM)使用统计和机器学习工具箱™函数集群和一个例子,显示指定可选参数的影响,当拟合GMM模型使用fitgmdist

高斯混合模型的集群数据如何

高斯混合模型(gmm)通常用于数据聚类。您可以使用gmm执行聚类或集群对查询数据。

执行集群,GMM分配查询数据点的多元正态组件,组件后验概率最大化,考虑到数据。也就是说,给定一个安装GMM,集群分配查询数据到组件收益率最高的后验概率。硬聚类分配一个数据点到一个集群。为一个例子,演示如何适合GMM数据,集群使用拟合模型,并估计组件后验概率,明白了集群使用硬聚类高斯混合数据

此外,您可以使用GMM执行更灵活的数据聚类,称为(或模糊)集群。软聚类方法将分数分配给每个集群的数据点。分数的值表示的关联强度数据点的集群。而不是硬聚类方法,软聚类方法是灵活的,因为它们可以分配一个数据点到多个集群。当您执行GMM集群时,比分是后验概率。与GMM的软聚类的一个例子,看看集群使用软聚类高斯混合数据

GMM集群可以容纳集群,有不同的尺寸和相关结构。因此,在某些应用程序中,GMM集群可以比等方法更合适k——集群。像许多聚类方法,GMM集群需要指定集群的数量在拟合模型。集群的数量指定了GMM组件的数量。

gmm,遵循这些最佳实践:

  • 考虑协方差结构的组件。您可以指定对角或完整的协方差矩阵,以及所有组件是否有相同的协方差矩阵。

  • 指定初始条件。采用(EM)算法与GMM的吻合程度。就像在k——聚类算法,它们是对初始条件敏感,可能收敛于局部最优。你可以指定自己的起始值参数,指定初始集群作业数据点或让他们选择随机,或者指定的使用k——+ +算法

  • 实现正规化。举个例子,如果你有更多的预测比数据点,然后你可以调整为估计的稳定性。

适合GMM用不同的协方差选项和初始条件

这个例子探讨了影响指定不同的协方差结构和初始条件的选择当您执行GMM集群。

加载费雪的虹膜数据集。考虑集群花萼测量,使用萼片和可视化数据在二维测量。

负载fisheriris;X =量(:,1:2);(氮、磷)= (X)大小;情节(X (: 1) X (:, 2),“。”,“MarkerSize”15);标题(费舍尔”年代虹膜数据集);包含(“花萼长度(厘米)”);ylabel (萼片宽(cm)的);

图包含一个坐标轴对象。坐标轴对象与费舍尔的虹膜数据集,包含花萼长度(厘米),ylabel萼片宽(cm)包含一个行对象显示其值只使用标记。

组件的数量k在GMM决定亚种群的数量,或集群。在这个图中,很难确定两个,三个,或者更多的高斯组件是合适的。GMM增加复杂性k增加。

指定不同的协方差结构的选择

每个高斯组件的协方差矩阵。几何、协方差结构决定信心椭球的形状画在一个集群。您可以指定是否所有组件的协方差矩阵是对角,以及所有组件是否有相同的协方差矩阵。每个规格的组合决定了椭圆体的形状和方向。

指定三个GMM组件和1000最大的EM迭代算法。再现性,设置随机种子。

提高(3);k = 3;%的GMM组件选择= statset (“麦克斯特”,1000);

指定协方差结构的选择。

σ= {“对角线”,“全部”};%为协方差矩阵类型选项nSigma =元素个数(σ);SharedCovariance ={真,假};%指标相同或不恒等的协方差矩阵SCtext = {“真正的”,“假”};nSC =元素个数(SharedCovariance);

创建一个二维网格覆盖飞机组成的极端的测量。稍后您将使用这个网格画信心椭圆体的集群。

d = 500;%网格长度x1 = linspace (min (X(: 1)) 2,马克斯(X (: 1)) + 2, d);x2 = linspace (min (X(:, 2)) 2,马克斯(X (:, 2)) + 2, d);[x1grid, x2grid] = meshgrid (x1, x2);X0 = [x1grid (:) x2grid (:));

指定以下:

  • 所有组合协方差结构的选择,适合GMM和三个组件。

  • 使用安装GMM集群二维网格。

  • 获取指定的分数99%概率阈值为每个地区的信心。本规范确定的长度主要和次要的椭圆体的轴。

  • 每个椭球使用相似的颜色作为集群。

阈值=√chi2inv (0.99, 2));数= 1;我= 1:nSigmaj = 1: nSC gmfit = fitgmdist (X, k,“CovarianceType”σ{我},“SharedCovariance”,SharedCovariance {j},“选项”、选择);%安装GMMclusterX =集群(gmfit X);%集群指数mahalDist =泰姬陵(gmfit, X0);%每个网格点之间的距离GMM组件%在每个GMM组件画椭圆体和聚类结果。次要情节(2,2,数);h1 = gscatter (X (: 1), X (:, 2), clusterX);持有m = 1: k idx = mahalDist (:, m) < =阈值;颜色= h1 (m) .Color * 0.75 - 0.5 * (h1 (m)。颜色- 1);h2 =情节(X0 (idx, 1), X0 (idx, 2),“。”,“颜色”、颜色、“MarkerSize”1);uistack (h2,“底”);结束情节(gmfit.mu (: 1) gmfit.mu (:, 2),“kx”,“线宽”2,“MarkerSize”10)标题(sprintf (σ是% s \ nSharedCovariance = % s 'SCtextσ{我},{j}),“字形大小”8)传说(h1, {' 1 ',' 2 ',“3”})举行数=计数+ 1;结束结束

图包含4轴对象。坐标轴对象与标题1σ是对角SharedCovariance = true包含7线类型的对象。一个或多个行显示的值只使用这些对象标记代表1,2,3。坐标轴对象与标题2σ是对角SharedCovariance = false包含7线类型的对象。一个或多个行显示的值只使用这些对象标记代表1,2,3。坐标轴对象与标题3σ充满SharedCovariance = true包含7线类型的对象。一个或多个行显示的值只使用这些对象标记代表1,2,3。坐标轴对象与标题4σ充满SharedCovariance = false包含7线类型的对象。一个或多个行显示的值只使用这些对象标记代表1,2,3。

阈值的概率的置信区域决定了主要和次要的轴的长度,和协方差类型确定轴的方向。请注意以下关于选择协方差矩阵:

  • 对角协方差矩阵表明,该预测是不相关的。椭圆的主要和次要的轴平行或垂直于xy轴。这个规范参数的总数增加 p 预测的数量,对于每一个组件,但比完整的协方差更吝啬的规范。

  • 完整的协方差矩阵允许相关预测没有限制椭圆的方向相对于xy轴。每个组件增加参数的总数 p ( p + 1 ) / 2 ,但捕捉预测因子之间的相关结构。这个规范会导致过度拟合。

  • 共享的协方差矩阵表明,所有组件具有相同的协方差矩阵。所有椭圆是相同的大小和方向相同。这个规范比非共享的规范更加节俭,因为参数的总数增加了协方差参数只有一个组件的数量。

  • 非共享的协方差矩阵表明,每个组件都有自己的协方差矩阵。所有椭圆的大小和方向可能是不同的。这个规范参数的数量增加k次协方差参数为组件的数量,但可以捕获组件之间的协方差的差异。

图也显示集群并不总是保持集群顺序。如果你集群几个安装gmdistribution模型,集群可以分配不同的集群类似组件的标签。

指定不同的初始条件

该算法适合GMM的数据可以对初始条件敏感。为了说明这灵敏度,适合四种不同gmm如下:

  1. 第一GMM,大多数数据点分配给第一个集群。

  2. 对于第二个GMM,随机数据点分配给集群。

  3. 第三GMM,使集群的另一个随机分配的数据点。

  4. 第四GMM使用k——+ +来获取初始聚类中心。

initialCond1 = [(n-8, 1);[2;2;2;2);[3;3;3;3]];%第一GMMinitialCond2 = randsample (1: k, n,真的);%的第二GMMinitialCond3 = randsample (1: k, n,真的);第三GMM %initialCond4 =“+”;第四GMM %cluster0 = {initialCond1;initialCond2;initialCond3;initialCond4};

对于所有实例,使用k= 3组件、专有的和完整的协方差矩阵相同的初始混合比例,和相同的初始协方差矩阵。稳定,当你尝试不同的初始值,增加了EM算法的迭代次数。此外,激起他们的信心在集群椭圆体。

聚合=南(4,1);j = 1:4 gmfit = fitgmdist (X, k,“CovarianceType”,“全部”,“SharedCovariance”假的,“开始”,cluster0 {j},“选项”、选择);clusterX =集群(gmfit X);%集群指数mahalDist =泰姬陵(gmfit, X0);%每个网格点之间的距离GMM组件%在每个GMM组件画椭圆体和聚类结果。次要情节(2,2,j);h1 = gscatter (X (: 1), X (:, 2), clusterX);%每个网格点之间的距离GMM组件持有;nK =元素个数(独特(clusterX));m = 1: nK idx = mahalDist (:, m) < =阈值;颜色= h1 (m) .Color * 0.75 + -0.5 * (h1 (m)。颜色- 1);h2 =情节(X0 (idx, 1), X0 (idx, 2),“。”,“颜色”、颜色、“MarkerSize”1);uistack (h2,“底”);结束情节(gmfit.mu (: 1) gmfit.mu (:, 2),“kx”,“线宽”2,“MarkerSize”10)传说(h1, {' 1 ',' 2 ',“3”});持有聚合(j) = gmfit.Converged;%指标融合结束

图包含4轴对象。坐标轴对象1包含7线类型的对象。一个或多个行显示的值只使用这些对象标记代表1,2,3。坐标轴对象2包含7线类型的对象。一个或多个行显示的值只使用这些对象标记代表1,2,3。坐标轴对象3包含7线类型的对象。一个或多个行显示的值只使用这些对象标记代表1,2,3。坐标轴对象4包含7线类型的对象。一个或多个行显示的值只使用这些对象标记代表1,2,3。

总和(聚合)
ans = 4

所有算法融合。每个开始集群数据点会导致一个不同的任务,安装集群任务。您可以指定一个正整数的名称-值对的论点复制,该算法指定的次数。随后,fitgmdist选择合适的收益率最大的可能性。

什么时候调整

有时,在EM迭代算法,合身的协方差矩阵可以生病的条件,这意味着可能是逃避到正无穷。这个问题会发生,如果存在一个或多个下列条件:

  • 你有更多的预测比数据点。

  • 你和太多的组件指定配件。

  • 变量是高度相关的。

为了克服这个问题,您可以指定一个小正数使用“RegularizationValue”名称-值对的论点。fitgmdist将这个数字添加到所有的协方差矩阵的对角元素,确保所有矩阵是正定的。正则化可以减少最大似然值。

模型符合统计数据

在大多数应用程序中,组件的数量k和适当的协方差结构Σ是未知的。你可以调整GMM方法之一是通过比较信息标准。两个流行的信息标准是Akaike信息标准(AIC)和贝叶斯信息准则(BIC)。

AIC和BIC优化,负loglikelihood然后惩罚它的参数的数量模型(模型复杂性)。然而,BIC复杂性比AIC更严重的惩罚。因此,AIC倾向于选择更复杂的模型,可能overfit,和BIC可能underfit倾向于选择更简单的模型。一个良好的实践是看两个标准在评估模型。低AIC或BIC值表明更好的拟合模型。同时,确保你的选择k和协方差矩阵结构适合于您的应用程序。fitgmdist商店的AIC和BIC安装gmdistribution模型对象的属性另类投资会议BIC。您可以访问这些属性使用点符号。为一个例子,演示如何选择合适的参数,看调整高斯混合模型

另请参阅

||

相关的话题