- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于MATLAB的模糊聚类分析及应用
杨 珅,刘 洪
(辽宁科技大学,鞍山,114051)
摘要:将MATLAB应用于模糊聚类分析,给出求解模糊相似矩阵和传递闭包的算法,为模糊聚类分析的应用提供了一种简便运算的方法。
关键词:模糊数学;聚类分析;MATLAB
The fuzzy clustering analysis and application by MATLAB
YANG Shen,LIU Hong
University of Science and Technology LiaoNing, AnShan 114051
Abstract: In this paper, the MATLAB for fuzzy clustering analysis is given, fuzzy similar matrix and relay closure, the algorithm for the application of fuzzy clustering analysis provides a simple operation method.
Keywords: fuzzy mathematics; Clustering analysis; MATLAB
1 引言
模糊聚类是数理统计中研究多元统计分析方法,它可根据样本的属性或特征,用数学方法定量确定样本间的类同关系,从而客观的分型划类。它已广泛应用于天气预报、地震预测、地质勘探、环境保护、图像及语言识别、故障诊断、经济规划以及农业、林业、化学、医学等领域中。但是该方法中的某些算法需要进行复杂的矩阵运算,容易出差错,增加了数据处理的难度 。MATLAB是日前国际上流行的科学计算软件,它具有强大的矩阵计算和数据可视化能力,可实现数值计算、图形处理、白动控制、信官、处理等多种功能.本文讨论在模糊聚类分析中,使用MATLAB编程求解模糊相似矩阵和传递闭包的简单方法。
2模糊聚类分析
采用模糊数学语言对事物按一定的要求进行描述和分类的数学方法称之为模糊聚类分析。聚类分析主要经过标定和聚类两个步骤,其中,繁琐的工作是求模糊相似矩阵和计算传递闭包。
2.1标定(建立模糊相似矩阵)
设样本集合,为样本数目,设每一个样本由一组特征数据表示。
建立模糊相似矩阵,主要是确定其相似系数,即:与的相似程度.求相似系数的方法很多,在此,使用绝对值减数法:
其中,适当选取值,使得在中分散开来。
2.2聚类(对样本集合进行分类)
首先,定义矩阵的模糊乘法“”,运算规则如下:
设是阶矩阵,是阶矩阵,则是阶矩阵,.其中为两数取大运算(逻辑加),为两数取小运算(逻辑乘)。
其次,使用传递闭包法聚类:对模糊相似矩阵R,依次用平方计算,…,当第一次出现时,则称为传递闭包。记为。
在传递闭包中,,令为中某一值(从高到低取值),记,其中
称为的截矩阵,的列向量对应样本集合中的元素。中某些样本为同一类,必须且仅须中对应的列向量相等。
3 MATLAB在模糊聚类分析中的应用
对五个城市进行环境质量评估,每个城市的环境污染指标有空气,水,上壤,噪声,分为5个级别:1级优;2级良;3级一般;4级轻微污染;5级严重污染。有如下数据:
城市
空气
水
土壤
噪声
A
5
5
3
2
B
2
3
4
5
C
4
4
3
2
D
1
5
3
1
E
2
4
5
1
其中样本集,,为空气污染指标,为水污染指标,为土壤污染指标,为噪声污染指标。
3.1求模糊相似矩阵
取,按绝对值减数法进行标定,得到模糊相似矩阵R:
程序算法如下:
X=[5,5,3,2;2,3,4,5;4,4,3,2;1,5,3,1;2,4,5,1]; % 输入样本矩阵
I=ones(5,5); % I是元素全为1的矩阵
for i=1:5
for j=1:5
Y(i,j)=(abs(X(i,1)-X(j,1))+abs(X(i,2)-X(j,2))+abs(X(i,3)-X(j,3))+abs(X(i,4)-X(j,4)));
%绝对值减数标定算法
end
end
R=round((I-0.1*Y)*100)/100 %得到模糊相似矩阵R
3.2 计算R的传递闭包
经过计算得到传递闭包:
程序算法如下:
flag=0; %设置标志
C=R;
B=R;
while flag==0
for i=1:5
for j=1:5
文档评论(0)