做证券考试的网站,门户网站产品设计方案,软文如何推广,西安自适应网站建设一、线性判别分析LDA
线性判别分析是一种经典的线性学习方法#xff0c;在二分类问题上最早是Fisher提出的#xff0c;亦称为Fisher判别分析。
Fisher判别分析是一种用于降维和分类的统计方法#xff0c;旨在找到可以最好区分不同类别的特征。它基于类内方差和类间方差的比…一、线性判别分析LDA
线性判别分析是一种经典的线性学习方法在二分类问题上最早是Fisher提出的亦称为Fisher判别分析。
Fisher判别分析是一种用于降维和分类的统计方法旨在找到可以最好区分不同类别的特征。它基于类内方差和类间方差的比值来选择最佳的投影方向从而实现数据的最佳分类
思想将训练集的样本投影到一条直线上使得正类和反类投影在直线上的距离尽可能的分开。当测试集的样本被投影到直线上的时候通过观察他的位置就可以知道该测试集的样本属于哪一类。
示意图 、 - 分别代表正 例和反例椭圆表 示数据 簇的 外轮 廓虚 线表示投 影 红色实心圆和实心三 角形分 别表示两类 样本投影 后的中心点. 给定一个数据集D{xiyi}XiμiΣi分别表示例数集合均值向量、协方差矩阵
投影之后再直线上的两类样本的中心点就是wTμ0和wTμ1协方差wTΣ0wwTΣ1w
因为投影改变了数据的分布所以协方差会随之改变。
就像我们之前讲到了希望他们同类别的更接近不同类别的就远离。其实就是最大化类中心之间的距离最小化他们的协方差。这两个我们同时考虑的话。
将其定义为 ①类内散度矩阵 ②类间散度矩阵 现在LDA就想要最大化目标Sb和Sw。
也叫做Sb与Sw的‘广义瑞利商’
如何确定w?
先介绍一下拉格朗日乘子法
我的理解就是有变量以及对于发原函数有约束求偏导即求最优解 下面是对w的求解 在求解Sw的时候会使用到奇异值的分解
对于奇异值分解不太理解的可以参考这个
降维算法之奇异值分解SVD7000字长文看这一篇就够了_奇异值分解降维-CSDN博客
二、多分类LDA
新定义了一个St全局散度矩阵 同样的要求解W
这里采用的是优化目标 tr·代表矩阵的迹是矩阵的主对角线上元素的总和。
对于多分类LDA的话就是将N个类别的投影到N-1个维度上实现一个降维
因此被视为一种经典的降维技术。
三、多分类学习
利用2分类策略解决多分类问题。
多分类学习的基本思路就是“拆解法“。最经典的有三种一对一O vs O一对多O vs R多对多M vs M.讲到这里说不定你可以想到之前我们学过的也是类似分割的方法对于模型评估那一块有留出法、K折交叉验证法、自助法。
3.1 O vs O
将N个类别两两配对看作排列组合就是那么就会产生NN-1/2个二分类任务。
最终得到NN-1/2个分类结果最终结果通过投票产生即把预测的最多的类别作为最终分类结果 3.2 O vs R
将每一个类的样例作为正例所有其他类的样例作为反类训练N个分类器在测试时若有一个分类器预测为正类则对应的类别标记作为最终的分类结果。丢进去一个样本若有多个分类器预测为正类则通常考虑分类器的阈值置信度选择置信度最大的类别标记作为分类结果。如上图。
其中OVR需要训练N个分类器但是OVO却要训练NN-1/2个人分类器。因此一对一的存储开销和测试时间开销通常比一对多的更大但是在训练的时候一对多的每个分类器会使用全部的训练样本而一对一的仅用到两个类的样本因此在类别很多的时候一对一的训练时间开销通常比一对多的 小。至于预测性能则却决于具体的数据分布在多数情形下两者差不多。
3.3 M vs M
是每次将若干个类作为正类若干个类作为反类。
但是多对多的正类和反类必须要有特殊的设计、不能随意的选取在这里我们就介绍一种技术
纠错输出码ECOC
第一步编码
对N个类别做M次划分每次划分将一部分类别作为正类一部分作为反类从而形成一个二分类发训练集一共产生M个训练集可以训练出M个分类器
第二部解码
M个分类器分别对测试样本进行预测这些预测标记组成一个编码将这个预测编码与每个类别各自的编码进行比较放回其中距离最小的类别作为最终预测结果
类别划分通过“编码矩阵“指定编码矩阵有多种形式常见的主要有——二元编码、三元编码前者将每个类别分别指定为正类和反类后者在正类和反类之外还指定了一个停用类。