模糊聚类分析方法

发布时间:2010-08-17 20:17:07

第二节 模糊聚类分析方法

在科学技术、经济管理中常常要按一定的标准(相似程度或亲疏关系)进行分类。例如,根据生物的某些性状可对生物分类,根据土壤的性质可对土壤分类等。对所研究的事物按一定标准进行分类的数学方法称为聚类分析,它是多元统计“物以类聚”的一种分类方法。由于科学技术、经济管理中的分类界限往往不分明,因此采用模糊聚类方法通常比较符合实际。

一、模糊聚类分析的一般步骤

1、第一步:数据标准化[9]

1 数据矩阵

设论域为被分类对象,每个对象又有个指标表示其性状,即

于是,得到原始数据矩阵为

其中表示第个分类对象的第个指标的原始数据。

2 数据标准化

在实际问题中,不同的数据一般有不同的量纲,为了使不同的量纲也能进行比较,通常需要对数据做适当的变换。但是,即使这样,得到的数据也不一定在区间上。因此,这里说的数据标准化,就是要根据模糊矩阵的要求,将数据压缩到区间上。通常有以下几种变换:

平移·标准差变换

其中

经过变换后,每个变量的均值为0,标准差为1,且消除了量纲的影响。但是,再用得到的还不一定在区间上。

平移·极差变换

显然有,而且也消除了量纲的影响。

对数变换

取对数以缩小变量间的数量级。

2、第二步:标定(建立模糊相似矩阵)

设论域,依照传统聚类方法确定相似系数,建立模糊相似矩阵,的相似程度。确定的方法主要借用传统聚类的相似系数法、距离法以及其他方法。具体用什么方法,可根据问题的性质,选取下列公式之一计算。

1 相似系数法

夹角余弦法

最大最小法

算术平均最小法

几何平均最小法

以上3种方法中要求,否则也要做适当变换。

数量积法

其中

相关系数法

其中

指数相似系数法

其中

2 距离法

直接距离法

其中为适当选取的参数,使得表示他们之间的距离。经常用的距离有

海明距离

欧几里得距离

切比雪夫距离

倒数距离法

其中为适当选取的参数,使得

指数距离法

3、第三步:聚类(求动态聚类图)

1)基于模糊等价矩阵聚类方法

传递闭包法

根据标定所得的模糊矩阵还要将其改造称模糊等价矩阵。用二次方法求的传递闭包,即=。再让由大变小,就可形成动态聚类图。

布尔矩阵法[10]

布尔矩阵法的理论依据是下面的定理:

定理2.2.1 上的一个相似的布尔矩阵,则具有传递性(当是等价布尔矩阵时)矩阵在任一排列下的矩阵都没有形如的特殊子矩阵。

布尔矩阵法的具体步骤如下:

求模糊相似矩阵的截矩阵.

按定理2.2.1判定为等价的,则由可得水平上的分类,若判定为不等价,则在某一排列下有上述形式的特殊子矩阵,此时只要将其中特殊子矩阵的0一律改成1直到不再产生上述形式的子矩阵即可。如此得到的为等价矩阵。因此,由可得水平上的分类

2 直接聚类法

所谓直接聚类法,是指在建立模糊相似矩阵之后,不去求传递闭包,也不用布尔矩阵法,而是直接从模糊相似矩阵出发求得聚类图。其步骤如下:

(最大值),对每个作相似类,且

=

即将满足放在一类,构成相似类。相似类与等价类的不同之处是,不同的相似类可能有公共元素,即可出现

, ,.

此时只要将有公共元素的相似类合并,即可得水平上的等价分类。

为次大值,从中直接找出相似度为的元素对(即),将对应于的等价分类中所在的类与所在的类合并,将所有的这些情况合并后,即得到对应于的等价分类。

为第三大值,从中直接找出相似度为的元素对(即),将对应于的等价分类中所在的类与所在的类合并,将所有的这些情况合并后,即得到对应于的等价分类。

以此类推,直到合并到成为一类为止。

二、最佳阈值的确定

在模糊聚类分析中对于各个不同的,可得到不同的分类,许多实际问题需要选择某个阈值,确定样本的一个具体分类,这就提出了如何确定阈值的问题。一般有以下两个方法:

按实际需要,在动态聚类图中,调整的值以得到适当的分类,而不需要事先准确地估计好样本应分成几类。当然,也可由具有丰富经验的专家结合专业知识确定阈值,从而得出在水平上的等价分类

F统计量确定最佳值。[11]

设论域为样本空间(样本总数为),而每个样本个特征:。于是得到原始数据矩阵,如下表所示,其中称为总体样本的中心向量。

1 2 k m

设对应于值的分类数为,第类的样本数为,第类的样本记为:

,第类的聚类中心为向量,其中为第个特征的平均值,即

统计量

其中

间的距离,为第类中第个样本与其中心间的距离。称为统计量,它是遵从自由度为分布。它的分子表征类与类之间的距离,分母表征类内样本间的距离。因此,值越大,说明类与类之间的距离越大;类与类间的差异越大,分类就越好。

基于模糊聚类分析的多属性

决策方法的实际应用

聚类分析是将事物根据一定的特征,并按某种特定要求或规律分类的方法。由于聚类分析的对象必定是尚未分类的群体,而且现实的分类问题往往带有模糊性,对带有模糊特征的事物进行聚类分析,分类过程中不是仅仅考虑事物之间有无关系,而是考虑事物之间关系的深浅程度,显然用模糊数学的方法处理更为自然,因此称为模糊聚类分析。

第一节 雨量站问题

一、问题的提出

某地区设置有11个雨量站,其分布图见图110年来各雨量站所测得的年降雨量列入表1中。现因经费问题,希望撤销几个雨量站,问撤销那些雨量站,而不会太多的减少降雨信息?

1 雨量站分布图

1 各雨量站10年间测得的降雨量

年序号

1

276

324

159

413

292

258

311

303

175

243

320

2

251

287

349

344

310

454

285

451

402

307

470

3

192

433

290

563

479

502

221

220

320

411

232

4

246

232

243

281

267

310

273

315

285

327

352

5

291

311

502

388

330

410

352

267

603

290

292

6

466

158

224

178

164

203

502

320

240

278

350

7

258

327

432

401

361

381

301

413

402

199

421

8

453

365

357

452

384

420

482

228

360

316

252

9

158

271

410

308

283

410

201

179

430

342

185

10

324

406

235

520

442

520

358

343

251

282

371

二、问题的分析

应该撤销那些雨量站,涉及雨量站的分布,地形,地貌,人员,设备等众多因素。我们仅考虑尽可能地减少降雨信息问题。一个自然的想法是就10年来各雨量站所获得的降雨信息之间的相似性,对全部雨量站进行分类,撤去“同类”(所获降雨信息十分相似)的雨量站中“多余”的站。

问题求解 假设为使问题简化,特作如下假设

每个观测站具有同等规模及仪器设备;

每个观测站的经费开支均等;

具有相同的被裁可能性。

分析:对上述撤销观测站的问题用基于模糊等价矩阵的模糊聚类方法进行分析,原始数据如上。

三、问题的解决

求解步骤:

1、数据的收集

原始数据如表1所示。

2、建立模糊相似矩阵

利用相关系数法,构造模糊相似关系矩阵,其中

其中12,11

12,11

,代入公式得=0.839,由于运算量巨大用C语言编程计算出其余数值,得模糊相似关系矩阵,具体程序如下

#include

#include

double r[11][11];

double x[11];

void main()

{ int i,j,k; double fenzi=0,fenmu1=0,fenmu2=0,fenmu=0;

int year[10][11]={276,324,159,413, 292 ,258,311,303,175,243,320,

251 ,287,349,344,310,454,285,451,402,307,470,

192 ,433,290,563,479,502,221,220,320,411,232,

246 ,232,243,281,267,310,273,315,285,327,352,

291,311,502,388 ,330,410,352,267,603,290,292,

466 ,158,224,178,164,203,502,320,240,278,350,

258,327,432 ,401,361,381,301,413,402,199,421,

453,365,357 ,452,384,420,482,228,360,316,252,

158 ,271,410,308,283,410,201,179,430,342,185,

324,406,235,520 ,442,520,358,343,251,282,371};

for(i=0;i<11;i++)

{ for(k=0;k<10;k++)

{ x[i]=x[i]+year[k][i];}

x[i]=x[i]/10;

}

for(i=0;i<11;i++)

{for(j=0;j<11;j++)

{ for(k=0;k<10;k++)

{ fenzi=fenzi+fabs((year[k][i]-x[i])*(year[k][j]-x[j]));

fenmu1=fenmu1+(year[k][i]-x[i])*(year[k][i]-x[i]);

fenmu2=fenmu2+(year[k][j]-x[j])*(year[k][j]-x[j]);

fenmu=sqrt(fenmu1)*sqrt(fenmu2);

r[i][j]=fenzi/fenmu;

}

fenmu=fenmu1=fenmu2=fenzi=0;

}}

for(i=0;i<11;i++)

{ for(j=0;j<11;j++)

{printf("%6.3f",r[i][j]);}

printf("\n");}

getchar();

}

得到模糊相似矩阵

1.000 0.839 0.528 0.844 0.828 0.702 0.995 0.671 0.431 0.573 0.712

0.839 1.000 0.542 0.996 0.989 0.899 0.855 0.510 0.475 0.617 0.572

0.528 0.542 1.000 0.562 0.585 0.697 0.571 0.551 0.962 0.642 0.568

0.844 0.996 0.562 1.000 0.992 0.908 0.861 0.542 0.499 0.639 0.607

0.828 0.989 0.585 0.992 1.000 0.922 0.843 0.526 0.512 0.686 0.584

0.702 0.899 0.697 0.908 0.922 1.000 0.726 0.455 0.667 0.596 0.511

0.995 0.855 0.571 0.861 0.843 0.726 1.000 0.676 0.489 0.587 0.719

0.671 0.510 0.551 0.542 0.526 0.455 0.676 1.000 0.467 0.678 0.994

0.431 0.475 0.962 0.499 0.512 0.667 0.489 0.467 1.000 0.487 0.485

0.573 0.617 0.642 0.639 0.686 0.596 0.587 0.678 0.487 1.000 0.688

0.712 0.572 0.568 0.607 0.584 0.511 0.719 0.994 0.485 0.688 1.000

对这个模糊相似矩阵用平方法作传递闭包运算,求

3、聚类

注:是对称矩阵,故只写出它的下三角矩阵

0.996,则

在置信水平为0.996的阈值下相似度为1,故同属一类,所以此时可以将观测站分为9{ },{}{}{},{},{}{}{},{}

降低置信水平,对不同的作同样分析,得到:

0.995时,可分为8类,即{,},{}{},{},{}{}{},{}

=0.994时,可分为7{,},{,}{} ,{ }{}{},{}

=0.962时,可分为6{,},{,}{ } ,{ } {},{}

0.719时,可分为5{,},{,}{ } ,{ },{}

第二节 成绩评价问题

一、问题的提出

某高中高二有7个班级,学生成绩的好与差,没有明确的评定界限,并且班级间成绩好坏的表现具有一定的模糊不确定性。

二、问题的分析

解决上述问题可运用模糊聚类分析方法。现以7个班级某次其中考试的四门主课成绩为依据,对7个班级成绩好坏的相关程度分类。

7个班级组成一个分类集合:分别代表1班到7班。每个班级成绩均是四门基础课(语文、数学、英语、综合)作为四项统计指标,即有这里表示为第个班级的第门基础课指标。这四项成绩指标为:语文平均成绩,数学平均成绩,英语平均成绩,综合平均成绩。各班级成绩指标值见表1

1 7个班4门基础课的成绩指标

三、问题的解决

1、数据准化[12]

采用极差变换 1

式中是第i个班级第门基础课平均成绩的原始数据,分别为不同班级的同一门基础课平均成绩的最大值和最小值。为第个班级第门基础课平均成绩指标的标准化数值。当时,,当时,

2 平均成绩指标值的标准化数值

2、用最大最小法建立相似矩阵

计算模糊相似矩阵R,根据标准化数值建立各班级之间四门基础课成绩指标的相似关系矩阵,采用最大最小法来计算

其中是表示第个班级与第个班级在四门基础课成绩指标上的相似程度的量。取 =0,其余运算量可以通过MATLAB编程运算,程序如下:[13]

clc

clear all

meanp=[0 0.0273 1 0.6119 0.7368 0.7229 0.2911;

0 0.2553 0.7791 0.8385 0.4587 0.5341 1;

0.4285 0 0.8492 1 0.3966 0.5439 0.9513;

0.6605 0 1 0.4012 0.3488 0.0864 0.7731];%平均成绩指标值的标准化数值

Ca=[0;0;0;0];% 初始化比较的数据

Cb=[0;0;0;0];% 初始化比较的数据

mina=[0];% 初始化比较的数据

maxa=[0];% 初始化比较的数据

for i=1:7

for j=1:7

for m=1:4

Ca=meanp(m,i);

Cb=meanp(m,j);

mina(1,m)=min(Ca,Cb);%计算任意两横的最小值

maxa(1,m)=max(Ca,Cb);%计算任意两横的最大值

end

R(i,j)=sum(mina)/sum(maxa);% 计算,即相似程度的量

end

end

R %显示相似矩阵

得相似矩阵:

3、改造相似关系为等价关系进行聚类分析

矩阵满足自反性和对称性,但不具有传递性,为求等价矩阵,要对进行改造,只需求其传递闭包。由平方法可得

最后可得到

故传递闭包为,它就是模糊等价矩阵。用其可对7个班级进行聚类分析。

1降至0,写出,按分类元素归同一类的条件是

=1,则有

U可分7

降低置信水平,对不同的作同样分析,得到

=0.77 U可分6

=0.73 U可分5

=0.69 U可分4

=0.61 U可分3

=0.36 U可分2

=0.15 U可分1

按不同的置信水平对7个班级进行模糊聚类,将会得到不同的分类结果

模糊聚类分析方法

相关推荐