模式识别上机作业1doc.docx
- 文档编号:23330322
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:73
- 大小:83.46KB
模式识别上机作业1doc.docx
《模式识别上机作业1doc.docx》由会员分享,可在线阅读,更多相关《模式识别上机作业1doc.docx(73页珍藏版)》请在冰豆网上搜索。
模式识别上机作业1doc
应急预案
模式识别上机作业
队别:
研究生二队
姓名:
孙祥威
学号:
112082
页脚内容1
应急预案
作业一:
1{(0,0),(0,1)},2{(1,0),(1,1)}。
用感知器固定增量法求判别函数,设
w1(1,1,1),
k1。
写程序上机运行,写出判别函数,打出图表。
解答:
1、程序代码如下:
clc,clear
w=[001;
011;
-10-1;
-1-1-1];
W=[111];
rowk=1;
flag=1;
flagS=zeros(1,size(w,1));
页脚内容2
应急预案
k=0;
whileflag
fori=1:
size(w,1)
ifisempty(find(flagS==0))
flag=0;
break;
end
k=k+1;
pb=w(i,:
)*W';
ifpb<=0
flagS(i)=0;
W=W+rowk*w(i,:
);
else
flagS(i)=1;
end
页脚内容3
应急预案
end
end
W,k
wp1=[00;
11;];wp2=[10;
21];plot(wp1(:
1),wp1(:
2),'o')holdonplot(wp2(:
1),wp2(:
2),'*')holdony=-0.2:
1/100:
1.2;plot(1/3*ones(1,size(y)),y,'r-')axis([-0.251.25-0.251.25])
2、判别函数。
计算得到增广权矢量为w*(3,0,1)T,故判别函数表达式为:
页脚内容4
应急预案
3x110
3、分类示意图:
图1感知器算法分类结果图
作业二:
在下列条件下,求待定样本x(2,0)T的类别,画出分界线,编程上机。
1、二类协方差相等;2、二类协方差不等。
训练样
12
12
页脚内容5
应急预案
本号k
3
3
11
-1-1
特征x1
2
-2
1
0
1
0
特征x2
-1
-1
类别
1
2
解答:
经计算,两类的协方差矩阵不相等。
设P
(1)P
(2),计算时相关项直接略去。
1、计算时,参考书中P96页式(4-1-31)等。
程序代码如下:
clc,clear,closeall
D1=[1,1,2;1,0,-1;];
D2=[-1,-1,-2;1,0,-1;];
u1=mean(D1,2);
u2=mean(D2,2);
c1=zeros(size(D1,1),size(D1,1));
页脚内容6
应急预案
fori=1:
size(D1,2)
c1=c1+D1(:
i)*D1(:
i)';
end
c1=c1/size(D1,2)-u1*u1';
c2=zeros(size(D2,1),size(D2,1));
fori=1:
size(D2,2)
c2=c2+D2(:
i)*D2(:
i)';
end
c2=c2/size(D2,2)-u2*u2';
I=eye(size(c1,1),size(c1,1));
ic1=c1\I;
ic2=c2\I;
W1=-0.5*ic1;
W2=-0.5*ic2;
w1=ic1*u1;;
页脚内容7
应急预案
w2=ic2*u2;;
w10=-0.5*log(det(c1))-0.5*u1'*ic1*u1;
w20=-0.5*log(det(c2))-0.5*u2'*ic2*u2;
symsx1x2;
x=[x1;x2];
fprintf('决策界面方程为:
')
D=x'*(W1-W2)*x+(w1-w2)'*x+(w10-w20);
pretty(D)
fprintf('(2,0)代入决策面方程的值为:
')
value=subs(D,{x1,x2},[20])
figure
ezplot(D)
holdon
plot(D1(1,:
),D1(2,:
),'bo')
plot(D2(1,:
),D2(2,:
),'ks')
页脚内容8
应急预案
plot(2,0,'rp')
运行结果显示,决策面方程为:
48x118x1x20。
、计算结果。
从程序运行结果可以看出,
x(2,0)T带入决策界面方程值为
96,可
2
见属于第一类1。
见下图:
图2两类协方差不等分类结果图
图中,黑色方块为第二类2,蓝色圆圈为第一类1,红色五角星即为要判断类别
的x(2,0)T。
绿色交叉的两条直线即为决策面曲线。
左上和右下为第一类,右上和左下为第二类。
作业三:
页脚内容9
应急预案
有训练集资料矩阵如下表所示,现已知,N
9、N1N2
N33、n
2、M
3,
试问,X
(2,2)T应属于哪一类?
训练样本
123123123
号k
-1
-2
特征x1
021
001
-2
-2-1
特征x2
010
10-1
-2
类别
1
2
3
要求:
用两种解法:
a、三类协方差不等;b、三类协方差相等。
编程上机,画出三类的分界线。
解答:
经计算,三类的协方差矩阵不相等。
设P
(1)P
(2)P(3),计算时相关项直接略
去。
1、计算时,参考书中P96页式(4-1-31)等。
程序代码如下:
页脚内容10
应急预案
clc,clear,closeall
D1=[021;010;];
D2=[-1-2-2;10-1;];
D3=[001;-2-1-2];
X=[-22];
u1=mean(D1,2);
u2=mean(D2,2);
u3=mean(D3,2);
c1=zeros(size(D1,1),size(D1,1));
fori=1:
size(D1,2)
c1=c1+D1(:
i)*D1(:
i)';
end
c1=c1/size(D1,2)-u1*u1';
c2=zeros(size(D2,1),size(D2,1));
fori=1:
size(D2,2)
页脚内容11
应急预案
c2=c2+D2(:
i)*D2(:
i)';
end
c2=c2/size(D2,2)-u2*u2';
c3=zeros(size(D3,1),size(D3,1));
fori=1:
size(D3,2)
c3=c3+D3(:
i)*D3(:
i)';
end
c3=c3/size(D3,2)-u3*u3';
I=eye(size(c1,1),size(c1,1));
ic1=c1\I;
ic2=c2\I;
ic3=c3\I;
W1=-0.5*ic1;
W2=-0.5*ic2;
W3=-0.5*ic3;
页脚内容12
应急预案
w1=ic1*u1;
w2=ic2*u2;
w3=ic3*u3;
w10=-0.5*log(det(c1))-0.5*u1'*ic1*u1;
w20=-0.5*log(det(c2))-0.5*u2'*ic2*u2;
w30=-0.5*log(det(c3))-0.5*u3'*ic3*u3;
symsx1x2real;
x=[x1;x2];
D12=x'*(W1-W2)*x+(w1-w2)'*x+(w10-w20);
D13=x'*(W1-W3)*x+(w1-w3)'*x+(w10-w30);
D23=x'*(W2-W3)*x+(w2-w3)'*x+(w20-w30);
fprintf('一、二类决策界面方程为:
')
pretty(D12)
fprintf('一、三类决策界面方程为:
')
pretty(D13)
页脚内容13
应急预案
fprintf('二、三类决策界面方程为:
')
pretty(D23)
DD1=x'*W1*x+w1'*x+w10;
DD2=x'*W2*x+w2'*x+w20;
DD3=x'*W3*x+w3'*x+w30;
value=[];
fprintf(['('num2str(X
(1))','num2str(X
(2))')代入1-2决策面方程的值为:
'])
v1=subs(DD1,{x1,x2},X)
fprintf(['('num2str(X
(1))','num2str(X
(2))')代入1-3决策面方程的值为:
'])
v2=subs(DD2,{x1,x2},X)
fprintf(['('num2str(X
(1))','num2str(X
(2))')代入2-3决策面方程的值为:
'])
v3=subs(DD3,{x1,x2},X)
V=[v1v2v3];
fprintf(['可见('num2str(X
(1))','num2str(X
(2))')属于第'num2str(find(V==max(V)))
'类。
\n'])
页脚内容14
应急预案
figure
holdon
h=ezplot(D12);
set(h,'Color','r')
h=ezplot(D13);
set(h,'Color','b')
h=ezplot(D23);
set(h,'Color','y')
plot(D1(1,:
),D1(2,:
),'ko')
plot(D2(1,:
),D2(2,:
),'ks')
plot(D3(1,:
),D3(2,:
),'kp')
plot(X
(1),X
(2),'r*')
title('分界线及样本点分布')
1-2类决策面方程为:
6x2
9x1x2
33x
6x2
18x
2
240
1
140737488355328
1
2
页脚内容15
应急预案
1-3类决策面方程为:
6x16x212x1x26x2260
2-3类决策面方程为:
12x1x26x12
27x1
25x22
24x2180
2251799813685248
2、计算结果。
从程序运行结果可以看出,x(2,0)T带入三个判决函数(略去P(i)相
关项)计算的值分别为-95.3521、-17.3521、-29.3521,可见属于第二类2。
分类界面参见
下图:
图3三类协方差不等分类结果图
作业四:
页脚内容16
应急预案
样
12345678
本
x1
0
2
1
5
6
5
6
7
x2
0
2
1
3
3
4
4
5
用对分法编程上机,分成两类画出图形。
解答:
1、程序代码如下:
clc,clear,closeall
ExampleData=[0,0,2,2,4,4,5,6,6,7,-4,-2,-3,-3,-5,1,0,0,-1,-1,-3;
6,5,5,3,4,3,1,2,1,0,3,2,2,0,2,1,-1,-2,-1,-3,-5;];
Data=[0,2,1,5,6,5,6,7;
0,2,1,3,3,4,4,5;];
N=size(Data,2);
页脚内容17
应急预案
Data=[1:
N;Data];
G1=Data;
G2=[];N1=size(G1,2);
N2=size(G2,2);
X1=mean(G1,2);X1=X1(2:
end);
X2=[0;0];
E=N1*N2/N*(X1-X2)'*(X1-X2);
RE=[];
ZY=[];
LE=E;
whileLE<=E
LE=E;
n1=size(G1,2);
e1=[];
fori=1:
n1
页脚内容18
应急预案
g1=G1;
g2=G2;
g2=[g2g1(:
i)];
g1(:
i)=[];
nn1=size(g1,2);
nn2=size(g2,2);
x1=mean(g1,2);x1=x1(2:
end);
x2=mean(g2,2);x2=x2(2:
end);
ee1=nn1*nn2/N*(x1-x2)'*(x1-x2);
e1=[e1;ee1];
end
E=max(e1);
RE=[RE;E];
I=find(e1==E);
页脚内容19
应急预案
nzy=G1(1,I);
ZY=[ZY;nzy];
ifLE<=E
G2=[G2G1(:
I)];
G1(:
I)=[];
end
end
RE=[(1:
length(RE))'ZYRE]
figure
plot(G1(2,:
),G1(3,:
),'o')
holdon
plot(G2(2,:
),G2(3,:
),'*')
2、对分法聚类结果。
两类的标样本号分别为:
第一类:
1、2、3
页脚内容20
应急预案
第二类:
4、5、6、7、8
3、对分法聚类结果示意图:
图4对分法聚类结果图
作业五:
已知十个样本,每个样本2个特征,数据如下:
样
1
1
2
3
4
5
6
7
8
9
本
0
页脚内容21
应急预案
x1
x2
0124556111
0113345456
用K次平均算法和ISODATA算法分成3类,编程上机,并画出分类图。
解答:
1、K次平均算法程序代码如下:
clc,clear,closeall
Data=[0124556111;0113345456];
K=3;
N=size(Data,2);
Data=[1:
N;Data];
Z=Data(2:
end,1:
K);W={};
LZ=[];
while~isequal(Z,LZ)
页脚内容22
应急预案
LZ=Z;
fori=1:
K
W{i}=[];
end
fori=1:
N
D=[];
forj=1:
K
d=sqrt(sum((Data(2:
end,i)-Z(:
j)).^2));
D=[D;d];
end
I=find(D==min(D));
W{I
(1)}=[W{I
(1)}Data(1,i)];
end
Z=[];
fori=1:
K
页脚内容23
应急预案
w=W{i};
z=mean(Data(2:
end,w),2);
Z=[Zz];
end
end
Z
figure
bh=['o''*''s''.''d''h''p'];
fori=1:
K
w=W{i}
plot(Data(2,w),Data(3,w),bh(i));
holdon
end
2、K次平均算法聚类结果。
两类的标样本号分别为:
第一类:
1、2、3
页脚内容24
应急预案
第二类:
8、9、10
第三类:
4、5、6、7
3、K次平均算法聚类结果示意图:
图5K次平均算法聚类结果图
4、ISODATA算法实现程序为从网上下载的代码,文件较长,参见附上的源代码。
调用计算作业数据代码如下:
clc,clear,closeall
X=[0124556111];
Y=[0113345456];
页脚内容25
应急预案
ON=1;OC=4;OS=1;k=4;L=1;I=10;NO=1;min=50;
[centro,Xcluster,Ycluster,A,clustering]=isodata(X,Y,k,L,I,ON,OC,OS,NO,min);
clc;
fprintf('聚成类的数目:
%d\n',A);
figure;
holdon;
bh=['o''*''s''.''d''h''p'];
fori=1:
A,
n=find(clustering==i);
p=plot(X(n),Y(n),bh(i));
title(A);
end;
fprintf('聚成类的数目:
%d\n',A);
其中,预期的类数设为4才能得到分成3类的结果。
页脚内容26
应急预案
5、ISODATA算法聚类结果。
两类的标样本号分别为:
第一类:
1、2、3
第二类:
7、9、10
第三类:
4、5、6、8
6、ISODATA算法聚类结果示意图:
图6ISODATA算法聚类结果图
页脚内容27
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模式识别 上机 作业 doc