MATLAB判别分析-----2019/8/26

判别分析

  • 判别分析是根据所研究的个体的观测指标来推断该个体所属类型的一种统计方法
    判 别 方 法 { 距 离 判 别 ( 适 用 于 连 续 性 随 机 变 量 的 判 别 类 ) B a y e s 判 别 ( 适 用 于 假 定 对 研 究 的 对 象 已 经 有 一 定 的 认 识 , 这 种 认 识 常 用 先 验 概 率 来 描 述 ) F i s h e r 判 别 ( 适 用 于 两 总 体 的 均 值 向 量 必 须 有 显 著 的 差 异 ) 判别方法\begin{cases} 距离判别 (适用于连续性随机变量的判别类) \\ Bayes 判别 (适用于假定对研究的对象已经有一定的认识,这种认识常用先验概率来描述)\\ Fisher判别(适用于两总体的均值向量必须有显著的差异) \end{cases} BayesFisher
  • 距离判别
  1. Mahalanobis 距离的概念
    通常我们定义的距离是 Euclid 距离(简称欧氏距离)。但在统计分析与计算中,Euclid 距离就不适用了。
    x , y x, y x,y 是从均值为 μ μ μ ,协方差为 Σ Σ Σ 的总体 A A A 中抽取的样本,则总体 A A A 内两点 x x x y y y M a h a l a n o b i s Mahalanobis Mahalanobis 距离(简称马氏距离)定义为
    d ( x , y ) = ( x − y ) T ∑ ( x − y ) d(x,y)=\sqrt{\frac{(x-y)^T}{\sum(x-y)}} d(x,y)=(xy)(xy)T
    定义样本 x x x 与总体 A A A M a h a l a n o b i s Mahalanobis Mahalanobis 距离为
    d ( x , y ) = ( x − μ ) T ∑ ( x − μ ) d(x,y)=\sqrt{\frac{(x-\mu)^T}{\sum(x-\mu)}} d(x,y)=(xμ)(xμ)T
  2. 距离判别的判别准则和判别函数
    两个总体的距离判别,分协方差相同和协方差不同两种进行讨论:
    (1)协方差相同
    即:
    μ 1 ≠ μ 2 , , Σ 1 = Σ 2 = Σ \mu_1≠\mu_2 , ,Σ _1=Σ_2 =Σ μ1̸=μ2,Σ1=Σ2=Σ
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    (2)协方差不同:
    即:
    μ 1 ≠ μ 2 , , Σ 1 ≠ Σ 2 \mu_1≠\mu_2 , ,Σ _1≠Σ_2 μ1̸=μ2,Σ1̸=Σ2
    对于样本 x x x ,在方差不同的情况下,判别函数为:
    w ( x ) = ( x − μ 2 ) T Σ 2 − 1 ( x − μ 2 ) − ( x − μ 1 ) T Σ 1 − 1 ( x − μ 1 ) w(x)=(x-\mu_2)^TΣ_2^{-1}(x-\mu_2)-(x-\mu_1)^TΣ_1^{-1}(x-\mu_1) w(x)=(xμ2)TΣ21(xμ2)(xμ1)TΣ11(xμ1)
    在实际计算中总体的均值与协方差是未知的,同样需要用样本的均值与协方差来代替。
    w ^ ( x ) = ( x − x ‾ ( 2 ) ) T Σ ^ 2 − 1 ( x − x ‾ ( 2 ) ) − ( x − x ‾ ( 1 ) ) T Σ ^ 1 − 1 ( x − x ‾ ( 1 ) ) \hat{w}(x)=(x-\overline{x}^{(2)})^T\hat{Σ}_2^{-1}(x-\overline{x}^{(2)})-(x-\overline{x}^{(1)})^T\hat{Σ}_1^{-1}(x-\overline{x}^{(1)}) w^(x)=(xx(2))TΣ^21(xx(2))(xx(1))TΣ^11(xx(1))
    其中:
    Σ ^ i = 1 n i − 1 ∑ j = 1 n i ( x j ( i ) − x ‾ ( i ) ) ( x j ( i ) − x ‾ ( i ) ) T = 1 n i − 1 S i , i = 1 , 2. \hat{Σ}_i=\frac{1}{n_i-1}\sum_{j=1}^{n_i}(x_j^{(i)}-\overline{x}^{(i)})(x_{j}^{(i)}-\overline{x}^{(i)})^T=\frac{1}{n_i-1}S_i,i=1,2. Σ^i=ni11j=1ni(xj(i)x(i))(xj(i)x(i))T=ni11Si,i=1,2.
  • F i s h e r Fisher Fisher 判别

    在这里插入图片描述
    在这里插入图片描述
    当总体的参数未知时,我们用样本对 μ 1 , μ 2 及 Σ μ_1 , μ_2 及 Σ μ1,μ2Σ 进行估计,注意到这里的 F i s h e r Fisher Fisher判别与距离判别一样不需要知道总体的分布类型,但两总体的均值向量必须有显著的差异才行,否则判别无意义。
  • Bayes 判别
    B a y e s Bayes Bayes 判别和 B a y e s Bayes Bayes 估计的思想方法是一样的,即假定对研究的对象已经有一定的认识,这种认识常用先验概率来描述,当我们取得一个样本后,就可以用样本来修正已有的先验概率分布,得出后验概率分布,再通过后验概率分布进行各种统计推断。
    1.误判概率与误判损失
     设有两个总体 X 1 X1 X1 X 2 X2 X2 ,根据某一个判别规则,将实际上为 X 1 X1 X1的个体判为 X 2 X2 X2 或者将实际上为 X 2 X2 X2 的个体判为 X 1 X1 X1 的概率就是误判概率.一个好的判别规则应该使误判概率最小。除此之外还有一个误判损失问题或者说误判产生的花费(cost)问题,如把 X 1 X1 X1的个体误判到 X 2 X2 X2 的损失比 X 2 X2 X2 的个体误判到 X 1 X1 X1 严重得多,则人们在作前一种判断时就要特别谨慎。因此一个好的判别规则还必须使误判损失最小。
    在这里插入图片描述
    在这里插入图片描述
    2.两总体的 Bayes 判别(做题准则,重点)
    由上面叙述知道,我们要选择样本空间 Ω Ω Ω 的一个划分: R 1 R1 R1 R 2 = Ω − R 1 R2 = Ω − R1 R2=ΩR1 使得平均损失(56)式达到极小
    在这里插入图片描述
    损失和先验概率以比值的形式出现是很重要的,因为确定两种损失的比值(或两总
    体的先验概率的比值)往往比确定损失本身(或先验概率本身)来得容易。下面列举(57)
    的三种特殊情况:
    在这里插入图片描述
      对于具体问题,如果先验概率或者其比值都难以确定,此时就利用规则(58),同样如误判损失或者其比值都是难以确定,此时就利用规则(59),如果上述两者都难以确定则利用规则(60),最后这种情况是一种无可奈何的办法,当然判别也变得很简单:若 f 1 ( x ) ≥ f 2 ( x ) f_1(x) \geq f_2(x) f1(x)f2(x) ,则判$x ∈ X_1 ,否则判 x ∈ X 2 x ∈X_2 xX2
    将上述的两总体 B a y e s Bayes Bayes 判别应用于正态总体 X i ∼ N p ( μ i , Σ i ) ( i = 1 , 2 ) X_i \sim N_p (μ_i,Σ_i) (i =1,2) XiNp(μi,Σi)(i=1,2),分两种情况讨论
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    解:
a=[24.8 24.1 26.6 23.5 25.5 27.4 
-2.0 -2.4 -3.0 -1.9 -2.1 -3.1];
b=[22.1 21.6 22.0 22.8 22.7 21.5 22.1 21.4 
-0.7 -1.4 -0.8 -1.6 -1.5 -1.0 -1.2 -1.3];
 p1=6/14;
 p2=8/14;
 %p1,p2是先验概率,题中已给
train=[a';b']; 
%train 为已知样本 
n1=size(a,2);
 n2=size(b,2);
group=[ones(n1,1);2*ones(n2,1)]; 
%已知样本类别标识 
prior=[p1; p2]; 
%已知样本的先验概率 
sample=train;
 %sample 一般为未知样本,这里是准备回代检验误判 
[x1,y1]=classify(sample,train,group,'linear',prior) 
%线性分类
[x2,y2]=classify(sample,train,group,'quadratic',prior) 
%二次分类 
%函数 classify 的第二个返回值为误判率

在这里插入图片描述
解:

train=[9 7 8 8 9 8 7 4 3 6 2 1 
8 6 7 5 9 9 5 4 6 3 4 2 
7 6 8 5 3 7 6 4 6 3 5 2]'; 
sample=[6 4 5; 8 1 3; 2 4 5]; 
group=[ones(7,1);2*ones(5,1)]; 
%已知样本的分类 
[x1,y1]=classify(sample,train,group,'mahalanobis') 
%马氏距离分类 
[x2,y2]=classify(sample,train,group,'linear') 
%线性分类 
[x3,y3]=classify(sample,train,group,'quadratic') 
%二次分类 
%函数classify的第二个返回值为误判率
  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值