在模式识别中,费雪线性判别(Fisher's linear discriminant)是一种线性判别方法,其意图是在分类类别为c类时,将d维空间(样品点是d维向量)中的数据点投影到c-1维空间上去,使得不同类的样本点在这个空间上的投影尽量分离,同类的尽量紧凑。
两类情况
在二类判别时,费雪线性判别将d维空间中的数据点投影到一条直线上去,使得不同类的样本点在这条直线上的投影尽量分离,同类的样本点在这条直线上尽量紧凑。假设有两类样本集的类别为ω1,样本数为n1,的类别为ω2,样本数为n2。定义样本均值mi和类内散布Si。
投影直线的方向向量为w,样本投影在直线上的值为y。则可得两类样本投影后的均值和类内散布为和,i=1,2。
要使不同类的样本点的投影尽量分离,同类尽量紧凑,可以使两类的投影的均值的差异尽量大,其方差的和尽量小,也就是要求最大化。
可以证明当w满足,即w的方向与相同时,J(w)取得最大值。剩下的问题就是如何求解阈值w0,也就是在这个一维空间中把两类分开的那个点的位置。当J(w)超过w0就判决为某一类别ω,否则就判决为另一类别。然而目前并没有一个通用的选取方法。
在两个类别的分布是多元正态分布,且协方差矩阵相同时,根据贝叶斯决策理论,,并且w0是一个与w和先验概率有关的常数。我们可以用样本均值与样本协方差去估计ui和Σ。更一般地说,如果我们对投影后的数据进行平滑,或用一维高斯函数进行拟合,ω0就位于使两类的后验概率相同的位置上。
多类情况
费雪线性判别在面对二类判别时,将两类样本向一条直线投影,也就是将数据从d维空间向1维空间投影。这样在面对c个类的判别时,所要做就是将数据从d维空间向c-1维空间投影。这就需要推广投影方程、类间散布矩阵SB和类内散布矩阵SW。从d维空间向c-1维空间的投影是通过c-1投影方程进行的:
这里的为第i类的样本集。设,c-1个方程可以更简练地表达:
这里的为第i类的样本的投影向量集。类间散布矩阵SB和类内散布矩阵SW可以由总体散布矩阵ST和总体均值向量m推导得到:
由此定义类间散布矩阵SB和类内散布矩阵SW:
那么样本数据的投影向量的类间散布矩阵和类内散布矩阵:即为:
与两类情况类似,要找到某一W使得类内散布尽量小,类间散布尽量大。但这里的类内散布和类间散布不再是一个值,而是一个矩阵。矩阵的行列式是矩阵的特征值的乘积,也就是数据在各个主要方向的方差的积,相当于类别散布超椭球体的体积的平方。故使用行列式来度量散布,这样判别函数即为
可以证明,当W的列向量wi是的广义特征向量时,可以使得J(w)最大。因为SB中c个秩为1或0的矩阵相加,而且其中只有c-1个矩阵是相互独立的。所以SB的秩最多为c-1。所以最多只有c-1个特征向量是非零的。
应用
人脸识别
在人脸识别中,每一个人脸图像具有大量的像素点。LDA主要用来将特征减少到一个可以处理的数目在进行分类。每一个新的维度都是原先像素值的线性组合,这就构成了一个模板。这样获得的线性组合被称为Fisher faces,而通过主成分分析获得的则称为特征脸。
参考文献
- Duda, R. O.; Hart, P. E.; Stork, D. H. Pattern Classification 第2版. 机械工业出版社. 2004. ISBN 7-111-13687-X.