MATLAB数据分析方法_判别分析

举报
资源描述
MATLAB数据分析方法数据分析方法 第第4章章 判别分析判别分析 判别分析的基本思想是根据已知类别的样本所提判别分析的基本思想是根据已知类别的样本所提供的信息,总结出分类的规律性,建立判别公式和供的信息,总结出分类的规律性,建立判别公式和判别准则,判别新的样本点所属类型。本章介绍距判别准则,判别新的样本点所属类型。本章介绍距离判别分析、离判别分析、Bayes判别分析极其判别分析极其MATLAB软件的软件的实现。实现。4.1 距离判别分析距离判别分析 4.1.1 判别分析的概念判别分析的概念 在一些自然科学和社会科学的研究中,研究对象在一些自然科学和社会科学的研究中,研究对象用某种方法已划分为若干类型,当得到的一个新样用某种方法已划分为若干类型,当得到的一个新样品数据(通常是多元的),要确定该样品属于已知品数据(通常是多元的),要确定该样品属于已知类型中的哪一类,这样的问题属于判别分析类型中的哪一类,这样的问题属于判别分析.从统计数据分析的角度,可概括为如下模型:从统计数据分析的角度,可概括为如下模型:设有设有k个总体个总体 ,它们都是它们都是p元总体元总体,其数量指标是其数量指标是 1)若总体若总体 的分布函数是已知,对于任一新的分布函数是已知,对于任一新样品数据样品数据 ,判断它来自哪一个判断它来自哪一个总体总体。2)通常各个总体通常各个总体 的分布是未知的,由从各的分布是未知的,由从各个总体取得的样本(训练样本)来估计。一般,个总体取得的样本(训练样本)来估计。一般,先估计各个总体的均值向量与协方差矩阵。先估计各个总体的均值向量与协方差矩阵。原则原则:1.从统计学的角度,要求判别准则在某种准则从统计学的角度,要求判别准则在某种准则下是最优的,例如错判的概率最小等。下是最优的,例如错判的概率最小等。2.根据不同的判别准则,有不同的判别方法,根据不同的判别准则,有不同的判别方法,这里主要介绍距离判别和这里主要介绍距离判别和Bayes判别判别 4.1.2 距离的定义距离的定义 1.闵可夫斯基距离闵可夫斯基距离设有设有n维向量维向量 称称绝对距离绝对距离 称称 称称为为n维向量维向量x,y之间的闵可夫斯基距离,其中之间的闵可夫斯基距离,其中 为常数。为常数。欧氏距离欧氏距离 显然,当显然,当r=2和和1时闵可夫斯基距离分别为欧氏距时闵可夫斯基距离分别为欧氏距离和绝对距离离和绝对距离.(1)同一总体的两个向量之间的马氏距离同一总体的两个向量之间的马氏距离 其中其中 为总体协方差矩阵,通常取为总体协方差矩阵,通常取 为实对称正定为实对称正定矩阵矩阵.显然,当显然,当 为单位矩阵时马氏距离就是欧氏距离为单位矩阵时马氏距离就是欧氏距离.设有设有n维向量维向量 ,则称则称为为n维向量维向量x,y之间的马氏距离之间的马氏距离.2.马氏距离马氏距离 马氏距离是由印度统计学家马哈拉诺比斯马氏距离是由印度统计学家马哈拉诺比斯(PC Mahalanobis)提出的,由于马氏距离具有统计意义,提出的,由于马氏距离具有统计意义,在距离判别分析时经常应用马氏距离:在距离判别分析时经常应用马氏距离:(4.1.1)(2)一个向量到一个总体的马氏距离一个向量到一个总体的马氏距离 总体总体G 的均值向量为的均值向量为,协方差矩阵为,协方差矩阵为.则称则称为为n维向量维向量x与总体与总体G的马氏距离的马氏距离.MATLAB中有一个命令:中有一个命令:d=mahal(Y,X),计算,计算X矩阵每一个点(行)至矩阵每一个点(行)至Y矩阵中每一个点(行)的矩阵中每一个点(行)的马氏距离。其中马氏距离。其中Y的列数必须等于的列数必须等于X的列数,但它们的列数,但它们的行数可以不同。的行数可以不同。X的行数必须大于列数。输出的行数必须大于列数。输出d是是距离向量。距离向量。(4.1.2)(3)两个总体之间的马氏距离两个总体之间的马氏距离 设有两个总体设有两个总体G1,G2,两个总体的均值向量分别,两个总体的均值向量分别为为 ,协方差矩阵相等,皆为,协方差矩阵相等,皆为,则两个总体之则两个总体之间的马氏距离为间的马氏距离为 通常,在判别分析时不采用欧氏距离的原因在通常,在判别分析时不采用欧氏距离的原因在于,该距离与量纲有关于,该距离与量纲有关.例如平面上有例如平面上有A,B,C,D四个四个点,横坐标为代表重量(单位:点,横坐标为代表重量(单位:kg),纵坐标代表),纵坐标代表长度(单位:长度(单位:cm),如下页图。),如下页图。(4.1.3)这时这时显然显然 ABCD 如果现在长度用如果现在长度用mm为单位,重量的单位保持不变,为单位,重量的单位保持不变,于是于是A点的坐标为点的坐标为(0,50),B点的坐标为点的坐标为(0,100),此,此时计算线段的长度为时计算线段的长度为此时,此时,ABCD 这表明欧氏距离有一个缺陷,当向量的分量是不这表明欧氏距离有一个缺陷,当向量的分量是不同的量纲时欧氏距离的大小竟然与指标的单位有关同的量纲时欧氏距离的大小竟然与指标的单位有关.而马氏距离则与量纲无关而马氏距离则与量纲无关.4.1.3 两总体的距离判别分析两总体的距离判别分析 先考虑两个总体的情况。设先考虑两个总体的情况。设 ,为两个不同为两个不同的的p元已知总体,元已知总体,的均值向量是的均值向量是 ,的的协方差矩阵是协方差矩阵是 ,.设设 是一个待判样品,距离判别准则为是一个待判样品,距离判别准则为(4.1.4)即当即当 到到 的马氏距离不超过到的马氏距离不超过到 的马氏距的马氏距离时,判离时,判 来自来自 ;反之,判来自;反之,判来自 .由于马氏距离与总体的协方差矩阵有关,所以利由于马氏距离与总体的协方差矩阵有关,所以利用马氏距离进行判别分析需要分别考虑两个总体的用马氏距离进行判别分析需要分别考虑两个总体的协方差矩阵是否相等协方差矩阵是否相等.1.两个总体协方差矩阵相等的情况两个总体协方差矩阵相等的情况 设有两个总体设有两个总体G1,G2,均值分别为,均值分别为 ,协方协方差矩阵相等为差矩阵相等为。考虑样品。考虑样品x到两个总体的马氏距离到两个总体的马氏距离平方差:平方差:其中其中 ,令,令于是距离判别准则为于是距离判别准则为(4.1.6)由于总体的均值、协方差矩阵通常是未知的,数据由于总体的均值、协方差矩阵通常是未知的,数据资料来自两个总体的训练样本,于是用样本的均值、样资料来自两个总体的训练样本,于是用样本的均值、样本的协方差矩阵代替总体的均值与协方差本的协方差矩阵代替总体的均值与协方差.注意:注意:若若S1,S2分别为两个样本的协方差矩阵,则在两个总分别为两个样本的协方差矩阵,则在两个总体协方差矩阵相等时,总体的协方差矩阵估计量体协方差矩阵相等时,总体的协方差矩阵估计量其中其中n1,n2分别为两个样本的容量分别为两个样本的容量.得到教材中判得到教材中判别法则:别法则:(4.1.11)(4.1.9)matlab判别步骤:判别步骤:1.计算计算A、B两类的均值向量与协方差阵两类的均值向量与协方差阵;ma=mean(A),mb=mean(B),S1=cov(A),S2=cov(B)2.计算总体的协方差矩阵计算总体的协方差矩阵其中其中n1,n2分别为两个样本的容量分别为两个样本的容量.3.计算未知样本计算未知样本x到到A,B两类马氏平方距离之差两类马氏平方距离之差 d=(x-ma)S-1(x-ma)-(x-mb)S-1(x-mb)4.若若d0,则则x属于属于B类类上述公式可以化简为:上述公式可以化简为:W(x)=(ma-mb)S-1(x-(ma+mb)/2)若若W(x)0,x属于属于G1;若若W(x)0,x属于属于G2注意:注意:1.此处此处ma,mb都是行向量;都是行向量;2.当当x是一个矩阵时,则用是一个矩阵时,则用ones矩阵左乘矩阵左乘(ma+mb)/2以以后,方可与后,方可与x相减相减.Matlab中直接进行数据的判别分析命令为中直接进行数据的判别分析命令为classify,其调用格式,其调用格式class=classify(sample,training,group type)例例4.1.1(1989年国际数学竞赛年国际数学竞赛A题题)蠓的分类蠓的分类 蠓是一种昆虫,分为很多类型,其中有一种名为蠓是一种昆虫,分为很多类型,其中有一种名为Af,是能传播花粉的益虫;另一种名为是能传播花粉的益虫;另一种名为Apf,是会传播是会传播疾病的害虫,这两种类型的蠓在形态上十分相似,很疾病的害虫,这两种类型的蠓在形态上十分相似,很难区别难区别.现测得现测得6只只Apf和和9只只Af蠓虫的触角长度和翅蠓虫的触角长度和翅膀长度数据膀长度数据Apf:(1.14,1.78),(1.18,1.96),(1.20,1.86),(1.26,2.00),(1.28,2.00),(1.30,1.96);Af:(1.24,1.72),(1.36,1.74),(1.38,1.64),(1.38,1.82),(1.38,1.90),(1.40,1.70),(1.48,1.82),(1.54,1.82),(1.56,2.08).若两类蠓虫协方差矩阵相等,试判别以下的三个若两类蠓虫协方差矩阵相等,试判别以下的三个蠓虫属于哪一类?蠓虫属于哪一类?(1.24,1.8),(1.28,1.84),(,(1.4,2.04)解:假定两总体的协方差相等,源程序如下:解:假定两总体的协方差相等,源程序如下:apf=1.14,1.78;1.18,1.96;1.20,1.86;1.26,2.;1.28,2;1.30,1.96;af=1.24,1.72;1.36,1.74;1.38,1.64;1.38,1.82;1.38,1.90;1.40,1.70;1.48,1.82;1.54,1.82;1.56,2.08;x=1.24,1.8;1.28,1.84;1.4,2.04;%输入原始数据输入原始数据m1=mean(apf);m2=mean(af);s1=cov(apf);s2=cov(af);s=(5*s1+8*s2)/13;%计算样本均值与协方差矩阵计算样本均值与协方差矩阵for i=1:3 W(i)=(x(i,:)-1/2*(m1+m2)*inv(s)*(m1-m2);%计算判别函数值计算判别函数值 end;输出结果为:输出结果为:W=2.1640 1.3568 1.9802由判别准则由判别准则(4.1.11)可知,三只蠓虫均属于可知,三只蠓虫均属于Apf.直接直接调调用用MATLAB的判的判别别分析命令分析命令classify。apf=1.14,1.78;1.18,1.96;1.20,1.86;1.26,2.;1.28,2;1.30,1.96;%总总体体apfaf=1.24,1.72;1.36,1.74;1.38,1.64;1.38,1.82;1.38,1.90;1.40,1.70;1.48,1.82;1.54,1.82;1.56,2.08;%总总体体aftraining=apf;af;%合并两个合并两个总总体形成体形成训练训练集集n1=size(apf,1);%总总体体apf中中样样本的行数本的行数n2=size(af,1);%总总体体af中中样样本的行数本的行数group=ones(1,n1),2*ones(1,n2);%apf中中样样本与本与af中中样样本本类类属属x=1.24,1.8;1.28,1.84;1.4,2.04;%输输入原始待判数据即入原始待判数据即sampleclass=classify(x,training,group)%判判别别分析分析输出结果为:输出结果为:class=1 1 1由判别准则由判别准则(4.1.11)可知,三只蠓虫均属于可知,三只蠓虫均属于Apf.2.两个总体协方差矩阵不相等两个总体协方差矩阵不相等样样品品 到两个到两个总总体的体的马马氏距离平方分氏距离平方分别为别为:令令 则判别准则:则判别准则:(4.1.13)当两个总体的协方差矩阵不等时,可以建立当两个总体的协方差矩阵
展开阅读全文
温馨提示:
金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
相关搜索

当前位置:首页 > 商业/管理/HR > 商业计划书


电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号