资源描述
作业:在下列条件下,求待定样本x=(2,0)T的类别,画出分界线,编程上机。1、二类协方差相等,2、二类协方差不等。训练样本号k1 2 31 2 3特征x11 1 2-1 -1 -2特征x21 0 -11 0 -1类别 1 21、 二类协方差不等Matlab程序如下: x1=mean(1,1,2),mean(1,0,-1),x2=mean(-1,-1,-2),mean(1,0,-1)x1 = 1.3333 0x2 = -1.3333 0 m=cov(1,1;1,0;2,-1),n=cov(-1,1;-1,0;-2,-1)m = 0.3333 -0.5000 -0.5000 1.0000n = 0.3333 0.5000 0.5000 1.0000 m1=inv(m),n1=inv(n)m1 = 12.0000 6.0000 6.0000 4.0000n1 = 12.0000 -6.0000 -6.0000 4.0000 p=log(det(m)/(det(n)p = 0 q=log(1)q = 0 x=2,0x = 2 0 g=0.5*(x-x1)*m1*(x-x1)-0.5*(x-x2)*n1*(x-x2)+0.5*p-qg = -64(说明:g syms x2; syms x1; w=(12*x1-16+6*x2)*(x1-4/3)+(6*x1-8+4*x2)*x2-(12*x1+16-6*x2)*(x1+4/3)-(-6*x1-8+4*x2)*x2,simplify(w) w = (12*x1-16+6*x2)*(x1-4/3)+(6*x1-8+4*x2)*x2-(12*x1+16-6*x2)*(x1+4/3)-(-6*x1-8+4*x2)*x2 ans = -64*x1+24*x2*x1(说明:则-64x1+24x2x1=0,即x1=0,或者x2=8/3,很显然分界线方程为x1=0,因为x2=8/3连1类与2都分不开)2、二类协方差相等Matlab程序如下: l=m+nl = 0.6667 0 0 2.0000 l1= inv(l)l1 = 1.5000 0 0 0.5000 g1=(x2-x1)*m1*x+0.5*(x1*l1*x1-x2*l1*x2)-qg1 = -64.0000(说明:g1 (x2-x1)*m1ans = -32.0000 -16.0000 syms x11; syms x22; w1=-32*x11+(-16)*x22+0.5*(x1*l1*x1-x2*l1*x2)-q,simplify(w1) w1 = -32*x11-16*x22 ans = -32*x11-16*x22(说明:分界线方程为-32x1-16x2=0,即2x1+x2=0)以下是matlab绘图程序: x1=1;1;2; x2=1;0;-1;plot(x1,x2,mx,markersize,15);axis(-5,5,-5,5);grid on;hold on x1=-1;-1;-2; x2=1;0;-1;plot(x1,x2,m*,markersize,15);axis(-5,5,-5,5);hold on x1=2; x2=0;plot(x1,x2,mp,markersize,15);axis(-5,5,-5,5);hold on x2=-5:0.02:5;x1=0;plot(x1,x2,b);axis(-5,5,-5,5); x1=-5:0.02:5;x2=-2*x1;plot(x1,x2,-.k);axis(-5,5,-5,5);绘图如下:(说明:点为1类的样本点,*点位2类的样本点,五角星为待定样本,实直线为二类协方差不等时的分界线,点划线为二类协方差相等时的分界线。)
展开阅读全文