LDA简介

LDA

LDA的全称是Linear Discriminant Analysis(线性判别分析),是一种supervised learning。LDA的原理是,将带标签的数据(点),通过投影的方法,投影到维度更低的空间中,使得投影后的点,会形成按类别区分,相同类别的点,将会在投影后的空间中更接近。要说明白LDA,首先得弄明白线性分类器(Linear Classifier):因为LDA是一种线性分类器。对于K-分类的一个分类问题,会有K个线性函数:

image_1bmm1qol8t62138j1s28n1darh9.png-4kB

当满足条件:对于所有的j,都有Yk > Yj,的时候,我们就说x属于类别k。对于每一个分类,都有一个公式去算一个分值,在所有的公式得到的分值中,找一个最大的,就是所属的分类了。

上式实际上就是一种投影,是将一个高维的点投影到一条高维的直线上,LDA最求的目标是,给出一个标注了类别的数据集,投影到了一条直线之后,能够使得点尽量的按类别区分开,当k=2即二分类问题的时候,如下图所示:

image_1bmm1snljalr125it1t1heghe8m.png-10kB
下面推到一下二分类LDA问题的公式:

假设用来区分二分类的直线(投影函数)为:
image_1bmm1v7clj34b09tn11r9o199i1j.png-1.9kB

LDA分类的一个目标是使得不同类别之间的距离越远越好,同一类别之中的距离越近越好(即需要找一个最佳的w的值),所以我们需要定义几个关键的值。

类别i的原始中心点为:(Di表示属于类别i的点)

image_1bmm1vuunkht1k31d7a1eim1hlo20.png-3.5kB

类别i投影后的中心点为:

image_1bmm20a7j618lkv1e7m6vlukn2d.png-3kB

衡量类别i投影后,类别点之间的分散程度(方差)为:

image_1bmm21d15d0c1ofslo7139dldk2q.png-5.4kB

最终我们可以得到一个下面的公式,表示LDA投影到w后的损失函数:

image_1bmm21pht1m7j1mb8n6daf61vir37.png-6.4kB

我们分类的目标是,使得类别内的点距离越近越好(集中),类别间的点越远越好。分母表示每一个类别内的方差之和,方差越大表示一个类别内的点越分散,分子为两个类别各自的中心点的距离的平方,我们最大化J(w)就可以求出最优的w了。想要求出最优的w,可以使用拉格朗日乘子法,但是现在我们得到的J(w)里面,w是不能被单独提出来的,我们就得想办法将w单独提出来。

我们定义一个投影前的各类别分散程度的矩阵,矩阵的含义是,如果某一个分类的输入点集Di里面的点距离这个分类的中心店mi越近,则Si里面元素的值就越小,如果分类的点都紧紧地围绕着mi,则Si里面的元素值越更接近0.

image_1bmm2sifg106s1dogsm0hqagub3k.png-6kB

Si称作散列矩阵(scatter matrix)

同时定义 ,Sw叫做within-class scatter matrix

带入Si,将J(w)分母化为:(图片中应为si的平方)

image_1bmm2t0hb1f402duls016te146l41.png-19.7kB

image_1bmm2t9ubs3hj3n110huimvtm4e.png-8.5kB

同样的将J(w)分子化为:

image_1bmm2ukpr1b8d1vleu6df1718vt4r.png-10kB

成为Between-class-scatter,是一个秩为1的矩阵

这样损失函数可以化成下面的形式:

image_1bmm34d9m14e712h9h71f651ups58.png-5.6kB

然后就可以求导来求J(w)的最大值从而得到最佳的w。在我们求导之前,需要对分母进行归一化,因为不做归一的话,w扩大任何倍,都成立,我们就无法确定w。因此我们打算令

image_1bmm35ngg1ojf5ov19sug1vict5l.png-17.5kB

其中用到了矩阵微积分,求导时可以简单的把 看作

如果 可逆,两边同乘 得到

w就是矩阵 的特征向量

这个公式称为Fisher linear discrimination。

将前面已知的 公式带入得到

由于对w扩大缩小任何倍不影响结果,因此可以约去两边的未知常数 ,得到

image_1bmm8p66f1lvh1vtr11hg3nrdm57f.png-1.2kB

至此,我们只需要求出原始样本的均值和方差就可以求出最佳的方向w

对于N(N>2)分类的问题,结论:

image_1bmm60u3911kd135lnpno661kq572.png-13.9kB

参考:
http://www.cnblogs.com/LeftNotEasy/archive/2011/01/08/lda-and-pca-machine-learning.html

http://blog.csdn.net/ffeng271/article/details/7353834