a 目的 :识别一个个体所属类别
b 适用 :被解释对象是非度量变量(nonmetric),解释变量是度量变量;分组类型2组以上,每组样品>1。
c 应用 :归类、预测
d 判别分析与聚类分析 :
i 聚类分析前,我们并不知道应该分几类,分类工作;
ii 判别分析时,样品的分类已事先确定,需要利用训练样 本建立判别准则,对新样品所属类别进行判定,归类工作。
a 假设1:每一个判别变量(解释变量)不能是其他判别变量的线性组合。避免多重共线性问题。
b 假设2:如果采用线性判别函数,还要求各组变量协方差矩阵相等----线性判别函数使用起来最方便、在实际 中使用最广。
c 假设3:各判别变量遵从多元正态分布,可精确的计算 显著性检验值和归属概率,不然计算概率不准。
协方差相等/协方差不等
协方差相等/协方差不等
优点 :
i 距离判别只要求知道总体的特征量(即参数)---均值和协差阵,不涉及总体的分布类型
ii 当参数未知时,就用样本均值和 样本协差阵来估计
iii 距离判别方法简单,结论明确,是很实用的方法
ii 缺点
i 该判别法与各总体出现的机会大小(先验概率)完全无关
ii 判别方法没有考虑错判造成的损失,这是不合理的
v 贝叶斯判别 的基本思想
i 假定对研究对象已经有了一定的认识,这种认识可以用 先验概率 来描述,当取得样本后,就可以利用 样本来修正 已有的 先验概率分布,得到 后验概率 分布,再通过后验概率分布进 行各种统计推断。
ii 贝叶斯判别属于 概率判别法。
iii 判别准则:
i 个体归属某类的概率(后验概率)最大
ii 错判总平均损失最小为标准。
vi 贝叶斯判别的后验概率最大
i 贝叶斯(Bayes)判别要变量服从 正态分布 类型。
ii 、贝叶斯(Bayes)判别的判别准则是以个体归属某类的概率最大或 错判总平均损失 最小为标准。弥补了 距离判别和费歇(Fisher)判别的缺点。
51费歇(Fisher)判别核心思想 :
i 通过多维数据投影到一维度直线上,将k组m维数据投影到 某一个方向,使得投影后组与组之间尽可能地分开。而衡量组 与组之间是否分开的方法借助于一元方差分析的思想
ii 费歇(Fisher)判别是一种确定性判别。
52费歇(Fisher)判别小结 :
i 费歇(Fisher)判别对判别变量的分布类型并无要求, 而贝叶斯(Bayes)判别要变量服从正态分布类型。因此, Fisher类判别较Bayes类判别简单一些。
ii 当两个总体时,若它们的协方差矩阵相同,则距离判 别和Fisher判别等价。 当变量服从正态分布时,它们还 和Bayes判别等价。
iii 与距离判别一样,费歇判别与各总体出现的机会大小 (先验概率)完全无关;也没有考虑错判造成的损失。
如何从m个变量中挑选出对区分k个总体有显 著判别能力的变量,来建立判别函数,用以判别归类。
1忽略主要的指标;
凡是具有筛选变量能力的判别方法统称为逐步判别法。
i 保留判别能力显著的变量
ii 剔除判别能力不显著的变量
i 逐步筛选变量
i 根据各变量对区分k个总体的判别能力的大小,利用向 前选入、向后剔除或逐步筛选的方法来选择区分k个总体的 最佳变量子集。
ii 判别归类
i 对已选出变量子集,使用三大判别方法(距离判别、 Bayes判别、Fisher判别)对样品进行判别归类。
y=a1x1+a2x2+……+anxn(a1为系数,Xn为变量)。事先非常明确共有几个类别,目的是从已知样本中训练出判别函数
1各自变量为连续性或有序分类变量
2自变量和因变量符合线性假设
3各组的协方差矩阵相等,类似与方差分析中的方差齐
4变量间独立,无共线性
注:违反条件影响也不大,主要看预测准不准,准的话违反也无所谓
1对客户进行信用预测;2寻找潜在客户等
1最大似然法
适用于 自变量均为分类变量 的情况,算出这些情况的概率组合,基于这些组合大小进行判别
2距离判别
对新样品求出他们离各个类别重心的距离远近,适用于 自变量均为连续变量 的情况, 对变量分布类型无严格要求
3Fisher判别法
与主成份分析有关,对分布、方差等都没有什么限制,按照类别与类别差异最大原则提取公因子然后使用公因子判别
4Bayes判别
强项是进行多类判别,要求总体呈多元正态分布 。利用贝叶斯公式,概率分布逻辑衍生出来一个判别方法,计算这个样本落入这个类别的概率,概率最大就被归为一类
在spss中一般用Fisher判别即可,要考虑概率及误判损失最小的用Bayes判别,但变量较多时,一般先进行逐步判别筛选出有统计意义的变量,但通常在判别分析前我们已经做了相关的预分析,所以不推荐使用逐步判别分析(采用步进法让自变量逐个尝试进入函数式,如果进入到函数式中的自变量符合条件,则保留在函数式中,否则,将从函数式中剔除)。
都是研究分类的。聚类分析,对总体到底有几种类型不知道(研究分几类较为合适需从计算中加以调整)。判别分析则是在总体类型划分已知,对当前新样本判断它们属于哪个总体。如我们对研究的多元数据的特征不熟悉,当然要进行聚类分析,才能考虑判别分析问题。
1自身验证(拿训练数据直接预测验证,但是对预测样本预测好不代表对新样本预测好)
2外部数据验证(收集新的数据来验证,这是最客观最有效的,但是麻烦而且两次收集的数据不一定是同质的)
3样本二分法(一般划分2/3为训练集,1/3为验证集,但是浪费了1/3的样本)
4交互验证(Cross-Validation)----刀切法(10分法,数据划分为10个集合,每次挑选一个出来做验证集,其余9个做训练集,可以做10次,因为验证集可换10种可能)
在spss软件中通过分析—留一分类获得此项结论。
下面采用实例来说明。
如下图-1数据集包含了刚毛、变色、弗吉尼亚这三种鸢尾花的花萼长、宽和花瓣长、宽,分析目的是希望能够使用这4个变量来对花的种类进行区分。spno为事先的分组,度量标准设为名义。
主要是对假设条件的检验,在spss中 分析—描述统计—描述 ,如图-2
如图-3可以看到数据的分布没有特别的离异点,也没有缺失值和不合理的分布,从而可以用该数据做接下来的判别分析。
1)选择分类变量及其范围:如图-4所示
分组变量矩形框中选择表明已知的观测量所属类别的变量(一定是离散变量),在定义范围框最小值中输入该分类变量的最小值,最大框中输入该分类变量的最大值。
2) 指定判别分析的自变量
3) 选择观测量
如果希望使用一部分观测量进行判别函数的推导而且有一个变量的某个值可以作为这些观测量的标识,则用Select 功能进行选择,键入标识参与分析的观测量所具有的该变量值, 一般均使用数据文件中的所有合法观测量此步骤可以省略。
4) 选择分析方法:如图-5所示
一起输入自变量 选项,当认为所有自变量都能对观测量特性提供丰富的信息时,使用该选择项。选择该项将不加选择地使用所有自变量进行判别分析,建立全模型,不需要进一步进行选择。
使用步进式方法 选项,当不认为所有自变量都能对观测量特性提供丰富的信息时,使用该选择项。因此需要判别贡献的大小,再进行选择当鼠标单击该项时方法按钮加亮,可以进一步选择判别分析方法。一般我们做判别分析前已经做了相关的预分析(不推荐)。
如图-6所示方法选项:步进法让自变量逐个尝试进入函数式,如果进入到函数式中的自变量符合条件,则保留在函数式中,否则,将从函数式中剔除。可供选择的判别分析方法有:
1Wilks'lambda 选项,它是组内平方和与总平方和之比,用于描述各组的均值是否存在显著差别,当所有观测组的均值都相等时,Wilks’lambda值为1;当组内变异与总变异相比很小时,表示组件变异较大,表示组间变异较大,系数接近于0。系统默认选项。
2未解释方差。 它指把计算残余最小的自变量优先纳入到判别函数式中。
3Mahalanobis’距离 。它把每步都使靠得最近的两类间的马氏距离最大的变量进入判别函数
4最小 F值。它把方差差异最大的自变量优先纳入到判别函数中。
5Rao’s V 。劳氏增值法:它把劳氏统计量V产生最大增值的自变量优先纳入到判别函数中。可以对一个要加入到模型中的变量的V 值指定一个最小增量。选择此种方法后,应该在该项下面的V-to-enter 后的矩形框中输入这个增量的指定值。当某变量导致的V值增量大于指定值的变量后进入判别函数。
标准:选择逐步判别停止的判据
1使用F值。系统默认的判据。当加人一个变量(或剔除一个变量)后,对在判别函数中的变量进行方差分析。当计算的F值大于指定的进入值时,该变量保留在函数中。默认值是384:当该变量使计算的F值小于指定的删除值时,该变量从函数中剔除。默认值为271。即当被加入的变量F 值为384 时才把该变量加入到模型中,否则变量不能进入模型;或者,当要从模型中移出的变量F值<271时,该变量才被移出模型,否则模型中的变量不会被移出设置这两个值时应该注意进入值>删除值。
2使用F检的概率。决定变量是否加入函数或被剔除的概率而不是用F值。加入变量的F值概率的默认值是005(5%),移出变量的F值概率是010(10%)。删除值(移出变量的F值概率) >进入值(加入变量的F值概率)。
输出:对于逐步选择变量的过程和最后结果的显示可以通过输出栏中的两项进行选择:
1步进摘要。要求在逐步选择变量过程中的每一步之后显示每个变量的统计量。
2两两组间距离的F值。要求显示两两类之间的两两F值矩阵。
这里我们选择建立全模型,所以不用对方法进行设置。
如图-7所示statistics选项:可以选择的输出统计量分为以下3 类:
(1) 描述性
1平均值。可以输出各类中各自变量的均值、标准差和各自变量总样本的均值和标准差。
2单变量ANOVA复选项。对各类中同一自变量均值都相等的假设进行检验,输出单变量的方差分析结果。
3Box’s M 复选项。对各组的协方差矩阵相等的假设进行检验。如果样本足够大,差异不显著的p值表明矩阵差异不明显。
(2)函数系数栏:选择判别函数系数的输出形式
1Fisherh’s。给出Bayes判别函数的系数。对每一类给出一组系数,并给出该组中判别分数最大的观测量。(注意:这个选项不是要给出Fisher判别函数的系数。这个复选框的名字之所以为Fisher’s,是因为按判别函数值最大的一组进行归类这种思想是由Fisher提出来的。这里极易混淆,请注意辨别。)
2未标准化。给出未标准化的判别函数(即典型判别函数)的系数(SPSS默认给出标准化的判别函数信息)。
(3)矩阵
1组内相关。即类内相关矩阵,它是根据在计算相关矩阵之前将各组(类)协方差矩阵平均后计算类内相关矩阵。
2组内协方差。即计算并显示合并类内协方差矩阵,是将各组(类)协方差矩阵平均后计算的。区别于总协方差阵。
3分组协方差。对每类输出显示一个协方差矩阵。
4总体协方差。计算并显示总样本的协方差矩阵。
如图-8所示分类选项:
(1) 先验概率:两者选其一
1所有组相等。各类先验概率相等。若分为m类,则各类先验概率均为1/m。系统默认
2根据组大小计算。由各类的样本量计算决定,即各类的先验概率与其样本量成正比。
(2) 使用协方差矩阵 :选择分类使用的协方差矩阵
1在组内。指定使用合并组内协方差矩阵进行分类。系统默认
2分组。指定使用各组协方差矩阵进行分类。
由于分类是根据判别函数,而不是根据原始变量,因此该选择项不是总等价于二次判别。
(3) 图:选择要求输出的统计图
1合并组。生成一张包括各类的散点图。该散点图是根据前两个判别函数值作的散点图。如果只有一个判别函数就输出直方图。
2分组。根据前两个判别函数值对每一类生成一张激点图,共分为几类就生成几张散点图。如果只有一个判别函数就输出直方图。
3区域图。生成用于根据函数值把观测量分到各组中去的边界图。此种统计图把一张图的平面划分出与类数相同的区域。每一类占据一个区各类的均值在各区中用号标出。如果仅有一个判别函数,则不作此图。
(4) 输出栏:选择生成到输出窗中的分类结果
1个案摘要。要求输出每个观测量包括判别分数、实际类、预测类(根据判别函数求得的分类结果)和后验概率等。选择此项还可以选择其附属选择项:将个案限制在前,并在后面的小矩形框中输入观测量数n选择。此项则仅对前n个观测量输出分类结果。观测数量大时可以选择此项。
2摘要表。要求输出分类的小结,给出正确分类观测量数(原始类和根据判别函数计算的预测类相同)和错分观测量数和错分率。
3不考虑该个案时的分类(留一分类)。输出对每个观测量进行分类的结果,所依据的判别是由除该观测量以外的其他观测量导出的,也称为交互校验结果。建议勾选
(5)使用均值替换缺失值:即用该类变量的均值代替缺失值。缺失值缺失大于10%,不介意勾选
本例中如图-8中勾选。
如图-9所示保存选项:指定生成并保存在数据文件中的新变量
1预测组成员。要求建立一个新变量,预测观测量的分类。是根据判别分数把观测量按后验概率最大指派所属的类。每运行一次Discriminant过程,就建立一个表明使用判别函数预测各观测量属于哪一类的新变量。第1 次运行建立新变量的变量名为dis_l,如果在工作数据文件中不把前一次建立的新变量删除,第n次运行Descriminant 过程建立的新变量默认的变量名为dis_n。
2判别分数。要求建立fisher判别分数的新变量。该分数是由未标准化的判别系数乘自变量的值,将这些乘积求和后加上常数得来。每次运行Discriminant过程都给出一组表明判别分数的新变量,建立几个判别函数就有几个判别分数变量。
3 组成员概率。Bayes后验概率值。有m类,对一个观测量就会给出m个概率值,因此建立m个新变量。
本例不勾选。
下面为最重要的结果,可在撰写结论使用。把4维的x向量X=(x1,x2,x3,x4),拓展成14维的向量(x1,x2,x3,x4,x1x1,x1x2,x1x3,x1x4,x2x2,x2x3,x2x4,x3x3,x3x4,x4x4),可以把原问题化简为老师提示的问题,从而进行求解 楼主学过模式识别(Pattern Recognition)里的LDA(Linear Discriminant Analysis)算法吗中文叫线性判别分析LDA算法基本就是求解这么个问题: minimize t subject to Ax=-1 (数值) LDA算法是模式识别里的经典算法,它有很成熟的解析解,你随便网上搜搜,就能得到很详细的解答 楼主本身的这个问题,算是QDA算法(Quadratic Discriminant Analysis),中文叫二次项判别分析因为QDA带了二次项,因此比LDA本身要复杂一些 但是QDA问题可以简化成LDA算法,具体方法就是把4维向量X=(x1,x2,x3,x4),扩展成如下的14维向量Y=(x1,x2,x3,x4,x1x1,x1x2,x1x3,x1x4,x2x2,x2x3,x2x4,x3x3,x3x4,x4x4) 这样XTAX+bTX+c,就可以化为dTY+c的形式了(这个14维向量d和A,b的关系很容易算),然后套用下现成的LDA算法求出d,然后反推出A和b,基本就搞定了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)