subclust

使用减数聚类查找集群中心

描述

例子

中心= subclust (数据clusterinfluencerange.群集使用与指定的群集影响范围的减法聚类输入数据,并返回计算的集群中心。这减法聚类算法估计输入数据中的集群数量。

例子

中心= subclust (数据clusterinfluencerange.名称,价值使用一个或多个指定的算法选项的群集数据名称,价值对论点。

例子

中心σ] =小组(___返回指定聚类中心在每个数据维中的影响范围的sigma值。

例子

全部收缩

加载数据集。

负载clusterdemo.dat.

查找对所有维度使用相同影响范围的集群中心。

c =小组(ClusterDemo,0.6);

每一排C包含一个集群中心。

C
C =3×30.5779 0.2355 0.5133 0.7797 0.8191 0.1801 0.1959 0.6228 0.8363

加载数据集。

负载clusterdemo.dat.

定义每个数据维度的最小和最大规范化界限。对每个维度使用相同的边界。

dataScale = [-0.2 -0.2 -0.2;1.2 1.2 1.2];

发现集群中心。

C = subclust (clusterdemo, 0.5,'dataScale',dataScale);

加载数据集。

负载clusterdemo.dat.

指定以下群集选项:

  • 壁球因子2.0- 只找到远离彼此的群集。

  • 接受率0.8-只接受具有成为集群中心潜力的数据点。

  • 拒绝的比例0.7—如果数据点不具备成为集群中心的强大潜力,则拒绝数据点。

  • 冗长的旗帜0—不打印进度信息到命令窗口。

Options = [2.0 0.8 0.7 0];

查找集群中心,使用每个维度和指定选项的不同影响范围。

C = Sublust(ClusterDemo,[0.5 0.25 0.3],“选项”,选项);

加载数据集。

负载clusterdemo.dat.

群集数据,返回群集Sigma值,年代

[C,S] =小组(ClusterDemo,0.5);

簇西格玛值表示在每个数据维度中计算的簇中心的影响范围。

输入参数

全部收缩

要群集的数据,指定为一个-经过-N数组,数据点的数量是多少N是数据维的数量。

假设数据属于一个单元超级框,则集群中心对每个输入和输出的影响范围,该单元超级框由逗号分隔的一对组成'clusterinfluencerange'以下是以下之一:

  • 范围为[的标量值01-对所有输入和输出使用相同的影响范围。

  • 矢量——为每个输入和输出使用不同的影响范围。

指定较小的影响范围通常会创建更多更小的数据簇,产生更多的模糊规则。

名称值对参数

指定可选的逗号分隔对名称,价值论点。的名字参数名和价值是相应的价值。的名字必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen

例子:'dataScale','auto'使用待聚类数据集中的最小值和最大值设置输入和输出信号的归一化因子。

将输入和输出数据标准化为单位超高框的数据刻度因子,指定为逗号分隔对'dataScale'和一个2-by-N数组,N是输入和输出的总数。每一列的DataScale为相应的输入或输出数据集指定第一行中的最小值和第二行中的最大值。

什么时候DataScale“汽车”,Genfis.命令使用要聚集的数据中实际的最小值和最大值。

群集选项,指定为分隔的配对组成“选项”和一个带有以下元素的向量:

用于缩放集群中心影响范围的南瓜因子,指定为正标量。较小的南瓜因子减少了偏远点被视为群集的一部分的潜力,这通常会产生更多且更小的数据群集。

接受率,定义为第一个聚类中心的潜力的一个分数,在此之上的另一个数据点被接受为聚类中心,指定为范围内的标量值[01].接受比率必须大于拒绝比率。

拒绝比定义为第一群集中心的电位的一小部分,下面是另一个数据点被拒绝为群集中心,指定为范围的标量值[01].拒收率必须小于接受率。

信息显示标志,指示是否在群集期间显示进度信息,指定为以下之一:

  • - 请勿显示进度信息。

  • 真的- 显示进度信息。

输出参数

全部收缩

集群中心,返回为J-经过-N数组,J集群的数量是多少N是数据维的数量。

为每个数据维度的集群中心影响范围,作为一个N有效行向量。所有集群中心都有相同的一组σ值。

尖端

  • 要生成使用减法聚类的模糊推理系统,请使用Genfis.命令。例如,假设您使用以下语法培养数据:

    c = sublust(数据,clusterinfluencerange,'dataScale',detaScale,“选项”,选项);

    在哪里数据对应于输入变量,剩余列对应于输出变量。

    您可以使用相同的培训数据和减数集群配置生成模糊系统。要这样做:

    1. 配置集群选项。

      选择= genfisoptions(“SubtractiveClustering”);opt.clusterInfluencerange = clusterInfluencerange;opt.dataScale = dataScale;opt.squashfactor =选项(1);opt.acceptratio =选项(2);opt.rejectratio =选项(3);opt.verbose =选项(4);
    2. 提取输入和输出变量数据。

      InputData =数据(:,1:m);outputData =数据(:,m + 1:结束);
    3. 生成FIS结构。

      FIS = Genfis(InputData,OutputData,OPT);

    模糊系统,金融中间人,每个聚类包含一个模糊规则,每个输入和输出变量在每个聚类中都有一个隶属函数。您只能使用减法聚类生成Sugeno模糊系统。有关更多信息,请参见Genfis.GenfisOptions.

算法

减法聚类假设每个数据点都是一个潜在的聚类中心。该算法做以下工作:

  1. 计算每个数据点将基于周围数据点的密度定义集群中心的可能性。

  2. 选择潜力最大的数据点作为第一个聚类中心。

  3. 删除第一群集中心附近的所有数据点。附近使用clusterinfluencerange.

  4. 选择潜力最大的剩余点作为下一个聚类中心。

  5. 重复步骤3和步骤4,直到所有数据都在集群中心的影响范围内。

减法聚类方法是对中提出的山地聚类方法的扩展[2]

参考文献

[1] Chiu,S.,“基于集群估计的模糊模型识别”智能与模糊系统学报,第2卷第3期,1994年9月。

[2] Yager, R.和D. Filev,“基于山地聚类的模糊规则生成”,智能与模糊系统学报,卷。2,第3页,第39页,1994年209-219。

在R2006A之前介绍