Fisher判别分析

合集下载

LDA线性判别分析

LDA线性判别分析

LDA线性判别分析LDA(Linear Discriminant Analysis),也被称为Fisher线性判别分析,是一种经典的统计模型和机器学习算法,常用于降维和模式识别任务。

LDA的目标是寻找一个线性变换,将高维数据投影到一个低维子空间上,使得在该子空间上的投影具有最优的数据分离性能。

换句话说,LDA希望找到投影方式,使得不同类别的数据在低维子空间上的投影显著分离,并且同一类别内部的数据尽可能地紧密聚集。

LDA的基本思想是通过计算类间离散度矩阵和类内离散度矩阵来得到最佳的投影方向。

类间离散度矩阵度量的是不同类别数据分布之间的差异,而类内离散度矩阵度量的是同一类别内部数据之间的差异。

LDA目标函数可以表示为J(w)=w^T*Sw*w/(w^T*Sb*w),其中w是投影方向,Sw为类内离散度矩阵,Sb为类间离散度矩阵。

在实际应用中,我们需要先计算类内离散度矩阵Sw和类间离散度矩阵Sb,然后通过求解J(w)的最大值来得到最佳的投影方向w。

通常情况下,可以通过特征值分解或者广义特征值分解来求解最优的投影方向。

LDA的应用非常广泛,特别是在模式识别和计算机视觉领域。

它可以用于人脸识别、手写数字识别、垃圾邮件过滤等任务。

LDA的优点是在高维数据集中可以找到最优的投影方向,具有很好的数据分离性能。

而且LDA不需要事先假设数据分布的形式,适用于各种分布情况。

然而,LDA也存在一些限制。

首先,LDA假设数据满足多元正态分布,如果数据违反了该假设,那么LDA的判别性能可能会下降。

其次,LDA投影到的低维子空间的维度最多等于类别数减一,这可能导致信息丢失。

此外,当类别样本数量不平衡时,LDA的效果可能会受到影响。

为了克服LDA的局限性,人们提出了一些改进的方法。

例如,局部判别分析(Local Discriminant Analysis)可以在局部区域内构建LDA模型,适用于非线性可分的数据。

深度学习的发展也为LDA的改进提供了新的思路和方法,如稀疏表示LDA和核LDA等。

费歇尔判别法

费歇尔判别法

费歇尔判别法费歇尔判别法(Fisher's Discriminant Analysis)是一种统计学中的方法,用于寻找两个或多个分类变量中最能有效区分它们的线性组合。

这种方法最初是由英国统计学家罗纳德·费歇尔(Ronald A. Fisher)在1936年所提出。

费歇尔判别法的目标是通过将数据投影到低维空间来确定样本类别之间最明显的分离平面。

这个方法假设所有数据员来自正态分布,这使得它的结果具有很高的概率。

此外,这种方法特别适用于小样本数据,在这种情况下,其它多变量方法往往受到数据不足或对角线矩阵估计的影响。

费歇尔判别法通过将多维数据投影到一维空间上,找到最能表示数据差异的线性变量。

具体步骤如下:1. 定义问题在进行费歇尔判别分析之前,首先需要定义问题。

这个问题可以是不同的变量之间的分类问题,或者是同一变量在不同条件下的分类问题。

例如,可以通过费歇尔判别分析找到两个组的区别,这两个组的特征可以用来预测其他类似两个组。

2. 构造分类变量在对数据进行投影之前,需要将分类变量定义为正态分布。

这种变量通常为两个或更多个。

3. 计算均值和方差计算每个分类变量的均值和方差,以用于后面的投影计算。

4. 计算类内离散度矩阵类内离散度矩阵是指每个类别内所有点与该类别均值之间的距离的累加和。

这个矩阵用来衡量类的内部分散程度,通常使用矩阵的矩阵乘法来进行计算。

5. 计算类间离散度矩阵类间离散度矩阵是指不同类别均值之间的距离的累加和。

这个矩阵用来衡量类别之间的分散程度,也通常使用矩阵的矩阵乘法来进行计算。

6. 计算特征值和特征向量计算类内离散度矩阵和类间离散度矩阵的特征值和特— 1 —征向量。

这些值可以使用线性代数中的方法计算。

一般来说,特征向量是正交(perpendicular)的。

7. 选取最大特征值从计算出的特征值中找到最大特征值,找到最大特征值所对应的特征向量。

这个特征向量就是数据的主要方向,也被称为“判别变量”。

fisher判别的基本步骤

fisher判别的基本步骤

Fisher判别是一种基于线性判别分析的分类方法,用于将样本分为不同的类别。

其基本步骤如下:
1. 确定判别变量:首先需要确定用于判别的变量,即用于分类的特征。

2. 计算判别函数:根据样本数据,计算出判别函数,即用于将样本分为不同类别的函数。

3. 确定判别类别:根据判别函数,将样本分为不同的类别。

4. 计算判别准确率:计算分类准确率,即正确分类的样本数与总样本数之比。

5. 优化判别函数:根据判别准确率,调整判别函数,以提高分类准确率。

6. 重复步骤3~5:重复以上步骤,直到达到所需的分类准确率。

在Fisher判别中,判别函数是基于Fisher线性判别的,即对于每个类别,计算出一个线性函数,使得属于该类别的样本与属于其他类别的样本的距离最大化。

这个过程可以通过矩阵运算和求导来实现。

总之,Fisher判别是一种基于线性判别分析的分类方法,其基本步骤包括确定判别变量、计算判别函数、确定判别类别、计算判别准确率、优化判别函数和重复步骤3~5,直到达到所需的分类准确率。

Fisher判别-jing

Fisher判别-jing

i 1
综上(1),(2) Fisher最优判别准则为函数
L(l1 , l2 , l p ) ( y 0 y 1 )2
(y
i 1
s
0 i
y ) ( yi1 y 1 ) 2
0 2 i 1
t
越大越好。从而最优判别函数的系数 c1 , c2 , c p 为函数 L(l1 , l2 ,l p ) 的极大值点。由微分学可知, 1 , c2 , c p 为方 c 程组
编号 1 购 买 者 2 3 4 5 6
式样X1 包装X2 耐久 性X3
编号 8 非 9 购 买 10 者 11
式样X1 包装X2
耐久 性X3
0 0 ( x11 , x12 , x10p )
1 1 1 ( x11 , x12 , x1 p )
组A的数据
0 0 0 ( x21 , x22 , x2 p )

0 ( xs01 , xs02 , xsp )
组B的数据
( x1 , x1 , x1 p ) 21 22 2

1 ( xt11 , xt12 , xtp )
组B的数据矩阵
1 x11 1 1 x21 W 1 xt1
1 1 x12 x1 p x1 x1 p 22 2 1 1 xt 2 xtp
矩阵 W 和 W
0
1
的列平均数分别为 ( x10 , x20 , x p0 ) 和 ( x1 , x2 , x p )
判别分析分为两组判别分析和多组判别分析, 两组判别分析就是将要判别的对象分为两组,例 如,判别一个地区的消费者对某种产品的反应是 “喜欢”还是“不喜欢”,判别一种产品在某地 区是处于“饱和”状态还是“有需求”,多组判 别分析则是将要判别的对象分为三组或更多组, 例如某种产品的市场潜力可分为:“大”,“一 般”,“没有”三种。 判别分析的方法很多,我们这里只涉及 Fisher判别方法,且重点放在两组判别问题上。

4-3_Fisher判别

4-3_Fisher判别

整性。
在解决实际问题时,当总体参数未知,需要通过样本来估计,
我们仅对 k2 的情形加以说明。设样本分别为
X(1) 1
,
X(1) 2
,
X(1) n1

X(2) 1
,
X(2) 2
,
X(2) n2
,则
X n1X(1) n2X(2) n1 n2
X(1) X n2 (X(1) X(2) ) n1 n2
方法回顾
距离判别法 优点:简单,便于使用。 不足之处:
第一,判别方法与总体各自出现的概率的大小无关; 第二,判别方法与错判之后所造成的损失无关。 Bayes判别法 优点:错判率较小。 不足之处: 需要获取总体的分布及参数值,实现困难。 实际问题中有时也没必要知道其分布。
第四节 费歇(Fisher)判别法
E(uX) E(uX | Gi ) uE(X | Gi ) uμi i , i 1,2
D(uX) D(uX | Gi ) uD(X | Gi )u uΣiu

2 i

i 1,2
在求线性判别函数 时,尽量使得总体之间差异大,也就是要求
uμ1 uμ2 尽可能的大,即 1 2 变大;同时要求每一个总体内
的离差平方和最小,即

2 1


2 2
,则我们可以建立一个目标函数
(u) (1 2 )

2 1


2 2
(4.20)
这样,我们就将问题转化为,寻找 u 使得目标函数 (u) 达到
最大。从而可以构造出所要求的线性判别函数。
2、针对多个总体的情形
假设有 k 个总体 G1, G2 ,, Gk ,其均值和协方差矩阵分别为 μ i

判别分析公式Fisher线性判别二次判别

判别分析公式Fisher线性判别二次判别

判别分析公式Fisher线性判别二次判别判别分析是一种常用的数据分析方法,用于根据已知的类别信息,将样本数据划分到不同的类别中。

Fisher线性判别和二次判别是两种常见的判别分析方法,在实际应用中具有广泛的应用价值。

一、Fisher线性判别Fisher线性判别是一种基于线性变换的判别分析方法,该方法通过寻找一个合适的投影方向,将样本数据投影到一条直线上,在保持类别间离散度最大和类别内离散度最小的原则下实现判别。

其判别函数的计算公式如下:Fisher(x) = W^T * x其中,Fisher(x)表示Fisher判别函数,W表示投影方向的权重向量,x表示样本数据。

具体来说,Fisher线性判别的步骤如下:1. 计算类别内离散度矩阵Sw和类别间离散度矩阵Sb;2. 计算Fisher准则函数J(W),即J(W) = W^T * Sb * W / (W^T * Sw * W);3. 求解Fisher准则函数的最大值对应的投影方向W;4. 将样本数据投影到求得的最优投影方向上。

二、二次判别二次判别是基于高斯分布的判别分析方法,将样本数据当作高斯分布的观测值,通过估计每个类别的均值向量和协方差矩阵,计算样本数据属于每个类别的概率,并根据概率大小进行判别。

二次判别的判别函数的计算公式如下:Quadratic(x) = log(P(Ck)) - 0.5 * (x - μk)^T * Σk^-1 * (x - μk)其中,Quadratic(x)表示二次判别函数,P(Ck)表示类别Ck的先验概率,x表示样本数据,μk表示类别Ck的均值向量,Σk表示类别Ck的协方差矩阵。

具体来说,二次判别的步骤如下:1. 估计每个类别的均值向量μk和协方差矩阵Σk;2. 计算每个类别的先验概率P(Ck);3. 计算判别函数Quadratic(x);4. 将样本数据划分到概率最大的类别中。

判别分析公式Fisher线性判别和二次判别是常见的判别分析方法,它们通过对样本数据的投影或概率计算,实现对样本数据的判别。

判别分析(2)费希尔判别

判别分析(2)费希尔判别

两总体的Fisher判别法 判别法 两总体的
其中, 其中,S 即
jl
= ∑ ( x Aij − x Aj )( x Ail − x Al ) + ∑ ( x Bij − x Bj )( x Bil − x Bl )
i =1 i =1
na
nb
F = ∑ ∑ c j c l s jl
j =1 l =1
Fisher判别 判别
内容:
1、建立判别准则; 2、建立判别函数 3、回代样本; 4、估计回代的错误率; 5、判别新的样本。
Fisher判别 判别
y 是线性函数, 由于 ( X ) 是线性函数,一般可将 y( X )表示为
(4.2) ) 对于线性函数 y( X ) ,它的几何表示就是空间中 的一条直线或平面,或超平面, 的一条直线或平面,或超平面,如果我们把两 B 看成空间的两个点集, 总体 A、 看成空间的两个点集,该平面所起的 B 分开, 作用就是尽可能将空间两个点集 A 、 分开,如 所示。 图4.1所示。 所示
Fisher判别 判别
Fisher判别 判别
Fisher判别 判别
费希尔判别的基本思想是投影(或降维)
Fisher方法是要找到一个(或一组)投 影轴w使得样本投影到该空间后能 在保证方差最小的情况下,将不同 类的样本很好的分开。并将度量类 别均值之间差别的量称为类间方差 (或类间散布矩阵);而度量这些均值 周围方差的量称为类内方差(或类内 散布矩阵)。Fisher判决的目标就是: 寻找一个或一组投影轴,能够在最 小化类内散布的同时最大化类间布。
两总体的Fisher判别法 判别法 两总体的
两总体的Fisher判别法 判别法 两总体的
max I = max ( ya − yb )

(完整版)判别分析中Fisher判别法的应用

(完整版)判别分析中Fisher判别法的应用

1 绪论1.1课题背景随着社会经济不断发展,科学技术的不断进步,人们已经进入了信息时代,要在大量的信息中获得有科学价值的结果,从而统计方法越来越成为人们必不可少的工具和手段。

多元统计分析是近年来发展迅速的统计分析方法之一,应用于自然科学和社会各个领域,成为探索多元世界强有力的工具。

判别分析是统计分析中的典型代表,判别分析的主要目的是识别一个个体所属类别的情况下有着广泛的应用。

潜在的应用包括预测一个公司是否成功;决定一个学生是否录取;在医疗诊断中,根据病人的多种检查指标判断此病人是否有某种疾病等等。

它是在已知观测对象的分类结果和若干表明观测对象特征的变量值的情况下,建立一定的判别准则,使得利用判别准则对新的观测对象的类别进行判断时,出错的概率很小。

而Fisher判别方法是多元统计分析中判别分析方法的常用方法之一,能在各领域得到应用。

通常用来判别某观测量是属于哪种类型。

在方法的具体实现上,采用国内广泛使用的统计软件SPSS(Statistical Product and Service Solutions),它也是美国SPSS公司在20世纪80年代初开发的国际上最流行的视窗统计软件包之一1.2 Fisher判别法的概述根据判别标准不同,可以分为距离判别、Fisher判别、Bayes判别法等。

Fisher 判别法是判别分析中的一种,其思想是投影,Fisher判别的基本思路就是投影,针对P维空间中的某点x=(x1,x2,x3,…,xp)寻找一个能使它降为一维数值的线性函数y(x):()j j xy=x∑C然后应用这个线性函数把P维空间中的已知类别总体以及求知类别归属的样本都变换为一维数据,再根据其间的亲疏程度把未知归属的样本点判定其归属。

这个线性函数应该能够在把P维空间中的所有点转化为一维数值之后,既能最大限度地缩小同类中各个样本点之间的差异,又能最大限度地扩大不同类别中各个样本点之间的差异,这样才可能获得较高的判别效率。

R语言中Fisher判别的使用方法

R语言中Fisher判别的使用方法

R语⾔中Fisher判别的使⽤⽅法最近编写了Fisher判别的相关代码时,需要与已有软件⽐照结果以确定⾃⼰代码的正确性,于是找到了安装⽅便且免费的R。

这⾥把R中进⾏Fisher判别的⽅法记录下来。

1. 判别分析与Fisher判别不严谨但是通俗的说法,判别分析(Discriminant Analysis)是⼀种多元(多个变量)统计分析⽅法,它根据样本的多个已知变量的值对样本进⾏分类的⽅法。

⼀般来说,判别分析由两个阶段构成——学习(训练)和判别。

在学习阶段,给定⼀批已经被分类好的样本,根据它们的分类情况和样本的多个变量的值来学习(训练)得到⼀种判别⽅法;在判别阶段⽤前⼀阶段得到的判别⽅法对其他样本进⾏判别。

Fisher判别(Fisher Discrimination Method)⼜被称为线性判别(LDA,Linear Discriminative Analysis),是判别分析的⼀种,历史可以追溯到1936年。

它的核⼼思想是将多维数据(多个变量)投影(使⽤线性运算)到⼀维(单⼀变量)上,然后通过给定阈值将样本根据投影后的单⼀变量进⾏分类。

Fisher判别的学习(训练)阶段,就是找到合适的投影⽅式,使得对于已经被分类好的样本,同⼀类的样本被投影后尽量扎堆。

学习阶段的结果是找到⼀系列的系数(Coeffcient),构成形如y=a1 * x1 + a2 * x2 + a3 * x3 + ... + an * xn其中:a1,a2,... an是系数,x1,x2,... ,xn是变量值。

的判别式和阈值。

⽽判别阶段可以根据这个判别式计算出y,并根据阈值将样本进⾏分类。

2. 在R中使⽤Fisher判别R中使⽤Fisher判别说起来很简单,但是我当初也放狗搜索了不短的时间才搞明⽩如何使⽤。

⾸先,它在R⾥不叫Fisher,⽤Fisher搜索多半误⼊歧途。

在R中,它叫LDA(Linear Discriminative Analysis)。

fisher判别法

fisher判别法

fisher判别法Fisher判别分析的基本思想:选取适当的投影方向,将样本数据进行投影,使得投影后各样本点尽可能分离开来,即:使得投影后各样本类内离差平方和尽可能小,而使各样本类间的离差平方和尽可能大。

为了克服“维数灾难”,人们将高维数据投影到低维空间上来,并保持必要的特征,这样,一方面数据点变得比较密集一些,另一方面,可以在低维空间上进行研究。

fisher判别法是判别分析的方法之一,它是借助于方差分析的思想,利用已知各总体抽取的样品的p维观察值构造一个或多个线性判别函数y=l′x其中l= (l1,l2…lp)′,x= (x1,x2,…,xp)′,使不同总体之间的离差(记为B)尽可能地大,而同一总体内的离差(记为E)尽可能地小来确定判别系数l=(l1,l2…lp)′。

数学上证明判别系数l恰好是|B-λE|=0的特征根,记为λ1≥λ2≥…≥λr>0。

所对应的特征向量记为l1,l2,…lr,则可写出多个相应的线性判别函数,在有些问题中,仅用一个λ1对应的特征向量l1所构成线性判别函数y1=l′1x不能很好区分各个总体时,可取λ2对应的特征向量l′2建立第二个线性判别函数y2=l′2x,如还不够,依此类推。

有了判别函数,再人为规定一个分类原则(有加权法和不加权法等)就可对新样品x判别所属。

Fisher判别法是根据方差分析的思想建立起来的一种能较好区分各个总体的线性判别法,由Fisher在1936年提出。

该判别方法对总体的分布不做任何要求。

Fisher判别法是一种投影方法,把高维空间的点向低维空间投影。

在原来的坐标系下,可能很难把样品分开,而投影后可能区别明显。

一般说,可以先投影到一维空间(直线)上,如果效果不理想,在投影到另一条直线上(从而构成二维空间),依此类推。

每个投影可以建立一个判别函数。

fisher得分法

fisher得分法

fisher得分法
Fisher得分法又称为Fisher线性判别分析法,是一种用于多元分类和数据降维的统计分析方法。

它是由英国统计学家R.A. Fisher于1936年提出的,用于解决二分类问题和多分类问题。

Fisher得分法的核心思想是要找到一个投影方向,使得经过此方向投影后,不同类别之间的距离尽量大,同类之间的距离尽量小。

这个方向可以用一个向量表示,称为Fisher判别向量或Fisher判别式。

Fisher得分法的具体步骤如下:
1. 计算每个类别的均值向量和协方差矩阵;
2. 计算总体的均值向量和总体协方差矩阵;
3. 求出Fisher判别向量,使得通过该向量进行投影后,不同类别之间的距离尽量大,同类之间的距离尽量小;
4. 根据Fisher判别向量,将样本进行投影,得到一维数据;
5. 根据投影得到的一维数据,进行分类。

在实际应用中,Fisher得分法经常被用于图像识别、模式识别、信号处理、数据降维等领域。

它的优点是能够最大程度地保留原始数据的信息,同时可以实现较好的分类效果。

但是,在统计样本数量较少时,Fisher得分法的效果可能会受到限制。

fisher判别法

fisher判别法

1 实验1 Fisher 线性判别实验一、实验目的应用统计方法解决模式识别问题的困难之一是维数问题,在低维空间行得通的方法,在高维空间往往行不通。

因此,降低维数就成为解决实际问题的关键。

Fisher 的方法,实际上涉及维数压缩。

如果要把模式样本在高维的特征向量空间里投影到一条直线上,实际上就是把特征空间压缩到一维,这在数学上容易办到。

问题的关键是投影之后原来线性可分的样本可能变得混杂在一起而无法区分。

在一般情况下,总可以找到某个最好的方向,使样本投影到这个方向的直线上是最容易分得开的。

如何找到最好的直线方向,如何实现向最好方向投影的变换,是Fisher 法要解决的基本问题。

这个投影变换就是我们寻求的解向量*w本实验通过编制程序体会Fisher 线性判别的基本思路,理解线性判别的基本思想,掌握Fisher 线性判别问题的实质。

二、实验原理1.线性投影与Fisher 准则函数各类在d 维特征空间里的样本均值向量:∑∈=i k X x k i i x n M 1,2,1=i (4.5-2)通过变换w 映射到一维特征空间后,各类的平均值为:∑∈=i k Y y k i i y n m 1,2,1=i (4.5-3)映射后,各类样本“类内离散度”定义为:22()k i i k i y Y S y m ∈=-∑,2,1=i (4.5-4)显然,我们希望在映射之后,两类的平均值之间的距离越大越好,而各类的样本类内离散度越小越好。

因此,定义Fisher 准则函数:2122212||()F m m J w s s -=+ (4.5-5) 使F J 最大的解*w 就是最佳解向量,也就是Fisher 的线性判别式。

2.求解*w从)(w J F 的表达式可知,它并非w 的显函数,必须进一步变换。

2 已知:∑∈=i k Y y k ii y n m 1,2,1=i , 依次代入(4.5-1)和(4.5-2),有: i T X x k i T k X x T i i M w x n w x w n m i k i k ===∑∑∈∈)1(1,2,1=i (4.5-6) 所以:221221221||)(||||||||M M w M w M w m m T T T -=-=- w S w w M M M M w b T T T =--=))((2121 (4.5-7) 其中:T b M M M M S ))((2121--= (4.5-8) b S 是原d 维特征空间里的样本类内离散度矩阵,表示两类均值向量之间的离散度大小,因此,b S 越大越容易区分。

Fisher线性判别分析

Fisher线性判别分析

Fisher线性判别分析
Fisher线性判别分析
1、概述
在使⽤统计⽅法处理模式识别问题时,往往是在低维空间展开研究,然⽽实际中数据往往是⾼维的,基于统计的⽅法往往很难求解,因此降维成了解决问题的突破⼝。

假设数据存在于d维空间中,在数学上,通过投影使数据映射到⼀条直线上,即维度从d维变为1维,这是容易实现的,但是即使数据在d维空间按集群形式紧凑分布,在某些1维空间上也会难以区分,为了使得数据在1维空间也变得容易区分,需要找到适当的直线⽅向,使数据映射在该直线上,各类样本集群交互较少。

如何找到这条直线,或者说如何找到该直线⽅向,这是Fisher线性判别需要解决的问题。

2、从d维空间变换到1维空间
3、介绍⼏个基本的参量
A. 在d维原始空间
B. 在1维映射空间
4、Fisher准则函数
5、学习算法推导
6、决策分类。

第二节判别分析

第二节判别分析

判别式系数
确定的原则:使两组间的组
间离差最大,而每个组的组内离差最小。
(二)费歇判别的数学原理
假设线性判别函数: 把两个总体的所有样品代入上面的判别式
分别对上面两式左右相加,再除以样品个数, 可得两个总体的重心:
最佳的线性判别函数:两个重心的距离越 大越好,两个组内的离差平方和越小越好。
组间差异为:
16.7
22.8
29.3 3.017 26.6
7
22.0
7.8
9.9
10.2
12.6
17.6 0.847 10.6
8
48.4
13.4
10.9
9.9
10.9
13.9 1.772 17.8
9
40.6
19.1
19.8
19.0
29.7
39.6 2.449 35.8
10
24.8
8.0
9.8
8.9
11.9
16.2 0.789 13.7
(
)
41
XTX是对称矩阵,线性代数理论告诉我们,对于一个 实对称矩阵,必 存 在一个正交矩阵A,能够将该矩 阵化成标准型,即:
42
正交矩阵A的第 i 列向量刚好可取为主成分向量 线性表达式系数:
那么矩阵
的特征向量和特征值分别为
挑选主要向量的标准:向量的大小,即向量的模作 为衡量依据。
43
由线性代数知:
33
如果这些数据形成一个椭圆形状的点阵(这在变量的
二维正态的假定下是可能的),那么这个椭圆有一个
长轴和一个短轴。
x2
F 1
F2
•• •••
•• •• •
•• • • •

Fisher判别

Fisher判别

两类Fisher判别示意图
Y
G1
G2
L=b111 x1 l12 x 2 l1m x m y l x l x l x L1 1 L2 2 Lm m L
将原来m个变量综合成L个新变量
Fisher判别法
Fisher判别法(先进行投影)
• 所谓Fisher判别法,就是一种先投影的方法。 • 考虑只有两个(预测)变量的判别分析问题。 • 假定这里只有两类。数据中的每个观测值是二维空间的 一个点。见图(下一张幻灯片)。 • 这里只有两种已知类型的训练样本。其中一类有38个 点(用“o”表示),另一类有44个点(用“*”表示)。 按照原来的变量(横坐标和纵坐标),很难将这两种点 分开。 • 于是就寻找一个方向,也就是图上的虚线方向,沿着这 个方向朝和这个虚线垂直的一条直线进行投影会使得这 两类分得最清楚。可以看出,如果向其他方向投影,判 别效果不会比这个好。 • 有了投影之后,再用前面讲到的距离远近的方法来得到 判别准则。这种首先进行投影的判别方法就是Fisher判 别法。

Fisher线性判别分析实验报告

Fisher线性判别分析实验报告

Fisher 线性判别分析实验报告一、摘要Fisher 线性判别分析的基本思想:通过寻找一个投影方向(线性变换,线性组合),将高维问题降低到一维问题来解决,并且要求变换后的一维数据具有性质:同类样本尽可能聚集在一起,不同类样本尽可能地远。

Fisher 线性判别分析,就是通过给定的训练数据,确定投影方向w 和阈值y0,即确定线性判别函数,然后根据这个线性判别函数,对测试数据进行测试,得到测试数据的类别。

二、算法的基本原理及流程图1 基本原理 (1) W 的确定各类样本均值向量 mi样本类内离散度矩阵iS 和总类内离散度矩阵w S12wS S S =+样本类间离散度矩阵b S在投影后的一维空间中,各类样本均值 T i i m '= W m样本类内离散度和总类内离散度 T T i i w w S ' = W S W S ' = W S W 样本类间离散度 T b b S ' = W S WFisher 准则函数满足两个性质:投影后,各类样本内部尽可能密集,即总类内离散度越小越好。

投影后,各类样本尽可能离得远,即样本类间离散度越大越好。

根据这个性质确定准则函数,根据使准则函数取得最大值,可求出wT x S (x m)(x m ), 1,2iiii X i ∈=--=∑T 1212S (m m )(m m )b =---1w12W = S(m - m)(2)阈值的确定实验中采取的方法:012y = (m' + m') / 2(3) Fisher线性判别的决策规则对于某一个未知类别的样本向量 x,如果y = W T x >y0, 则x∈w1否则x∈w22流程图方差标准化(归一化处理)一个样本集中,某一个特征的均值与方差为:归一化:三、实验结果分析1男女同学身高体重,训练数据和测试数据都是50当采用StudentData1作为训练数据,StudnetData2作为测试数据时男孩类的错误率女孩类的错误率总的错误率0.04 0.14 0.09当采用StudnetData2作为训练数据,StudentData2作为测试数据时男孩类的错误率女孩类的错误率总的错误率0.02 0.06 0.042IonoSphere数据G类错误率B类错误率总的类错误率第一组数据0.31 0.29 0.30第二组数据0.32 0.27 0.30第三组数据0.31 0.28 0.29第四组数据0.30 0.37 0.32第五组数据0.30 0.31 0.31第六组数据0.78 0.27 0.60第七组数据0.42 0.25 0.36第八组数据0.30 0.31 0.30第九组数据0.29 0.40 0.33第十组数据0.34 0.25 0.31考虑到第一组数据训练数据多,下面的实验以第一组数据的训练数据作为训练数据,分别用其他组的测试数据进行测试G类错误率B类错误率总的类错误率第一组数据0.31 0.29 0.30第二组数据0.31 0.26 0.29第三组数据0.32 0.26 0.30第四组数据0.31 0.26 0.29第五组数据0.31 0.26 0.29从实验结果看,Fisher线性判别用于两类的判别决策时,拥有不错的效果,并且当有足量的训练数据时,效果更好。

Fisher判别分析

Fisher判别分析

机器学习笔记-----Fisher 判别式本文申明:本系列文章为本人原创,如有转载请注明文章原地址。

今天我们机器学习老师在说到周志华老师的《机器学习》这本书的时候,p60页讲到了LDA ,但是其中的公式推导省略了很多,现在我来补充一下。

一:LDA 的思想给定两个数据集一个是XX 一个是OO ,然后我们把XXOO 投影到一条直线上,但是啊,这个人是很坏的,人家XXOO 本来想分配到一起,但是你非要让人家两类离得越远越好,相同的呢离得越近越好,美其名:异性只是繁衍,同性才是真爱。

哎,你说这不是泯灭人性么,好吧,我们先不扯蛋了。

说正题:1.1首先我们定义m i ,它表示这个i 类样本d 维空间的均值。

也就是这个分别代表类xx 和oo 。

m i 表示如下。

1i x i m X n δ∈=∑那么我们既然知道了这个,我们是不是也要找一个投影到这条直线上的代表点啊,所以就有了:*11T T i i y i y i m y w X W m n n γγ∈∈===∑∑那么现在我们就可以知道两个分类之间的距离了:**1211||||||()||T m m W m m -=-从上述式子我们可以看出,改变直线的斜率,也就是方向,可以改变两者之间的大小。

刚刚我们说了我们的准则就是让类内之间的距离最小,这是不是有点像我们之前的指示函数,那么如下图公式:*2*2()i i y i s y m γ∈=-∑我们前面已经说过,这是一个二分类问题,现在已经给了一般形式的离散度(我们叫他离散度,其实就是真实值与预测值(这里用平方表示预测值)的平方),那我们是不是要把这个两个离散度相加,然后让这个达到最小?总得离散度为:*2*212all s s s =+为了让类内的距离越小,类间的距离越大,我给出下面的判别式。

你们看,能不能满足。

**211*2*211||||()m m J W s s -=+,现在只要让J(W)达到极大,是不是就可以让我们前面说的两个要求满足?那就让我们来求出J(W)的极大值。

Fisher线性判别原理(实例论证解析)

Fisher线性判别原理(实例论证解析)

Fisher 线性判别原理原始数据:111212122212p p n n np n px x x x x x X x x x ⨯⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎣⎦ 寻找关于X 的线性组合,使得Y Xa =,其中121p p a a a a ⨯⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎣⎦为p 维列向量。

使得111212111212222211221p p p p n n p np n n a x a x a x y a x a x a x y Y Xa a x a x a x y ⨯+++⎡⎤⎡⎤⎢⎥⎢⎥+++⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥+++⎢⎥⎣⎦⎣⎦对于Y 中的每个分量来说,离差平方和为:22211()nniii i y y yny ==-=-∑∑令11111n n n H I n⨯⨯'=-,则有:[][][][]121212121212100101011(111)0011111111111111n n n n n n y y Y HY y y y n y n n n y y y y y n nn y nn n y y y y y y y y y ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥'=-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦⎡⎤---⎢⎥⎡⎤⎢⎥⎢⎥⎢⎥---⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎢⎥---⎢⎥⎣⎦⎡⎤⎢⎥⎢⎥=---⎢⎥⎢⎣⎦22211()n nii i i y ny y y ==⎥=-=-∑∑而21()()nii y y Y HY Xa HXa a X HXa a Ta ='''''-====∑若n 个原始数据X 来自J 个不同的组,每个组有j n 个数据,12++J n n n n +=。

将X ,Y 重新标记为:111(1)(1)(1)11121(1)(1)(1)21222(1)(1)(1)12()()()11121()()()21222()()()12J J J pp n n n p J J J p J J J p J J J n n n p n p x x x x x x x x x X x x x x x x x x x ⨯⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦1(1)1(1)2(1)()1()2()J n J J J n y y y Y y y y ⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦,Y Xa = 其中(j)表示其属于第j 组的数据。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

对案例中小企业的破产模型做Fisher判别分析
江义114113001059
一问题:对企业的运行状态利用Fisher判别进行分类
选取四个经济指标用于判断企业处于破产状态还是正常运行状态,具体数据如下,其中类别1表示破产状态,类别2表示正常运行状态
X1总负债率X2收益率指

X3短期
支付能

X4生产
效率指

类别
-0.45 -0.41 1.09 0.45 1 -0.56 -0.31 1.51 0.16 1
0.06 0.02 1.01 0.4 1
-0.07 -0.09 1.45 0.26 1
0.38 0.11 3.27 0.55 2
0.19 0.05 2.25 0.33 2
0.32 0.07 4.24 0.63 2
0.04 0.01 1.5 0.71 2
-0.06 -0.06 1.37 0.4 1
0.07 -0.01 1.37 0.34 2
-0.13 -0.14 1.42 0.44 1
0.15 0.06 2.23 0.56 2
0.16 0.05 2.31 0.2 2
0.29 0.06 1.84 0.38 带测定
0.54 0.11 2.33 0.48 带测定
二、程序如下:(R语言)
> data=read.table("E:/bac/qiye.txt",header=T)
> data1=c(rep(1,6),rep(2,7))
> data2=as.factor(data1)
> data$class=data2
> attach(data)
> names(data)
[1] "X1" "X2" "X3" "X4" "class"
> library(MASS)
> data.lda=lda(class~X1+X2+X3+X4)
> data.lda
Call:
lda(class ~ X1 + X2 + X3 + X4)
Prior probabilities of groups:
1 2
0.4615385 0.5384615
Group means:
X1 X2 X3 X4
1 -0.07500000 -0.105000000 1.763333 0.3583333
2 0.0785714
3 -0.002857143 2.062857 0.4685714
Coefficients of linear discriminants:
LD1
X1 -7.9358690
X2 15.8747840
X3 0.1653748
X4 5.0408074
> newdata=data.frame(X1=c(0.29,0.54),X2=c(0.06,0.11),X3=c(1.84,2.33),X4=c(0.38,0.48))
> predict(data.lda,newdata=newdata)
三、运行结果
$class
[1] 1 1
Levels: 1 2
$posterior
1 2
1 0.6249180 0.3750820
2 0.7540681 0.2459319
$x
LD1
1 -0.6981236
2 -1.3032372
四、
$class显示,最后两组数据均属于第一类别,如下表:
X1 X2 X3 X4 类别
0.29 0.06 1.84 0.38 1
0.54 0.11 2.33 0.48 1
四、总结
判别分析是多元统计分析中较为成熟的一种分类方法,根据已知类别的若干样本数据,总结出客观事物分类的规律性。

例如上述问题中,利用Fisher判别,就可以判别最后两个未知类别的企业运行状态,从而达到一定的经济效益。

相关文档
最新文档