这一篇会接着介绍硬分类模型-线性判别分析(LDA),也称为fisher判别分析
同样以二分类为出发点, 数据集 ,
是列向量,维度为p, 定义
,
, 表示标签是1的样本集, 同理,
,
,
线性判别分析的思想,就是找到一个方向, 使得样本沿着这个方向投影(注意是沿着这个方向投影),使得类内的样本距离要近, 不同类别的距离要远, 即高内聚,松耦合,思想很简单。
二维示意图
首先数据是, 投影方向是
(不需要考虑截距项,因为不会影响方向), 那么
顺着
方向投影的结果就是,。样本数据集的所有样本,都有一个投影后的结果
,表示类别1投影后的均值,
, 是类别1样本投影后的方差
同理可以定义类别2的
现在我们把类间的松耦合, 用 来表示, 类内的高聚合, 用
来表示
现在我们可以定义目标函数了, ,
把变量都带进去, 分子
我们先化简下分母中的s1,
, 这里的
就是类别1样本的协方差矩阵
所以目标函数可以写成
表示类间,
表示类内
现在我们来求解
x是p*1的, w是p*1的, Sw是p*p的, 所以和
都是实数
我们关注的是w的方向, 大小没有意义,
回顾一下, ,
是一个一维实数,与方向没有关系, 所以我们就得到了
,即找到了投影方向。
我们只需要设置z的阈值作为分类的标准, 就可以对样本进行分类了。
LDA是可以作数据降维的, 降维的具体内容,会在之后篇章中进行详细的介绍,这边只要有个基本概念,比如上述的推导,把所有样本降维到了z轴这一维上,拿LDA作降维的话,降维后的维数,最多是样本类别数-1。
转载请注明,谢谢