目录
想查找相关内容也可在页面按ctrl+F搜索文字
一、聚类分析/判别分析
二、分类数的确定原则
三、Matlab系统聚类
四、K-均值聚类(K-means聚类)
五、Matlab判别分析
1.距离判别法
2.贝叶斯判别
Demirmen,1972年提出根据树形图来分类的四准则:
示例:
X = rand(100,2);
Y = pdist(X,'euclidean');
Z = linkage(Y,'average');
%默认尽可能多类
subplot(1,2,1),dendrogram(Z)
%划分5类
subplot(1,2,2),dendrogram(Z,5)
另有clusterdata函数,调用格式:T=clusterdata(X,cutoff)
等价于Y=pdist(X,’euclid’); Z=linkage(Y,’single’); T=cluster(Z,cutoff)
示例:
X = [randn(100,2)+ones(100,2);
randn(100,2)-ones(100,2)];
[idx,ctrs] = kmeans(X,2); %分二类,返回类别标号,类心坐标
plot(X(idx==1,1),X(idx==1,2),'r.',X(idx==2,1),X(idx==2,2),'b.')
hold on
plot(ctrs(:,1),ctrs(:,2),'kx', ctrs(:,1),ctrs(:,2),'ko')
class=classify(sample,training,group,'type')
示例:
load fisheriris %装入费歇尔的经典花萼尺寸、种类数据
SL = meas(:,1);SW=meas(:,2);group = species;
X=meas([4,54,124],1);Y=meas([4,54,124],2);
[C,err,P,logp,coeff] = classify([X Y],[SL SW], group,'linear');
nb=NaiveBayes.fit(training, group)
cpre=predict(nb,test) % test为待测试判别的数据