前言
前文中提到 PCA是用于降维的一种方法,在降维后尽可能的保留样本最大的特征,即保证降维后方差最大化(按照这个特性,它也可以用于分类)。而LDA也是用于降维的一种方法,但它是在降维后尽可能保证其类内距离小,类间距离大。GDA就是先用核技巧映射到feature space,再进行LDA(类似KPCA)
LDA
LDA – Linear Discriminant Analysis线性判别分析,又称Fisher分类器。
目标是降维后,使得类间距最大,类内距最小
表达出类内距离和类间距离
和PCA一样这边以二维降到一维做例子 。
xj是样本中的其中一个样本(二维特征),要投影到一维上就是线v上,投影坐标 vT(xj),(s.t. ||v|| = 1 )这个不懂可以看上一章PCA的。
求投影后的样本均值:
上图中x的上标代表类别共L类,下标代表每类的样本数。(vT)mi 表示第i类的样本均值
类间距离
每类有样本均值代表
这边表示每两类间的距离平方乘上这两类的权重(因为可能有些类样本多,有些类样本少,所以乘个权重 当前类的样本数/总样本数)在全部加起来。
比如图上有三类,那就应该 1和2类的距离平方和乘上他们的权重 + 1和3类。。。+2和3类。。。。
化简 SbLDA
原先比如说是1-2,2-3,1-3的类间距离和,现在变成1/2的1-2,2-1,1-3,3-1,2-3,3-2的类间距离和。变成下图:
整理,变成下图:
圈起来的可以看出等于1:
且中间两项通过下面化简后等于所有样本均值m0:
于是出现下式:
化简整理:
在经过处理
变成:
这两个相等的理由是上式可以等于下式等于上上式
所以最后SbLDA =
即:
第一个式子是绿色的方差和 = 第二个式子红色的方差和。
类内距离
类内距离这边是这么定义:将每个样本和该样本所属类的均值点距离平方加起来取平均。
数学模型:
令,Max(类间距离/类内距离),让类内距离等于一,加一个拉格朗日条件(这个不知道原理),其中SwLDA要可逆(一般实际情况都可逆),第二个方框内的式子左乘vT即可得到最后面的式子。
也就是说要求使得λ最大的v
也就是求下面两式,还要满足第二个条件所以v=。。。。。u
LDA步骤
1.求出SwLDA(可逆),SbLDA
2.求(SwLDA的逆)*SbLDA = w
3.w的最大特征值对应的特征向量u(降到二维就是前二大的特征值对应的特征向量)
这边的u主要是要方向 求出来就好了
学校步骤
文章还有误区 以后用了再改