视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
LDA算法详解
2025-09-25 23:19:15 责编:小OO
文档
线性鉴别分析法

线性鉴别分析(Linear Discriminant Analysis, LDA),有时也称Fisher线性判别(Fisher Linear Discriminant ,FLD), 这种算法是Ronald Fisher 于 1936年发明的,是模式识别的经典算法[]。在1996年由Belhumeur引入模式识别和人工智能领域的。性鉴别分析的基本思想是将高维的模式样本投影到最佳鉴别矢量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保证模式样本在新的子空间有最大的类间距离和最小的类内距离,即模式在该空间中有最佳的可分离性。因此,它是一种有效的特征抽取方法。使用这种方法能够使投影后模式样本的类间散布矩阵最大,并且同时类内散布矩阵最小。就是说,它能够保证投影后模式样本在新的空间中有最小的类内距离和最大的类间距离,即模式在该空间中有最佳的可分离性。

3.2.1 Fisher线性判别准则

假设有一组属于两个类的n个d维样本,...,,其中前个样本属于类 ,后面个样本属于类,均服从同协方差矩阵的高斯分布。各类样本均值向量(i=1,2)如式(3-15):

=     i=1,2                     (3-15)

样本类内离散度矩阵和总的类内离散度矩阵如式(3-16)、式(3-17): 

   i=1,2           (3-16)

=+                               (3-17)

t样本类间离散度矩阵如式(3-18): 

                    (3-18)

现寻找一最佳超平面将两类分开,则只需将所有样本投影到此超平面的法线方向上,||w||=1:

        i=1,…,n                     (3-19)

得到n个标量,...,∈R,这n个标量相应的属于集合和,并且和能很好的分开。

为了能找到这样的能达到最好分类效果的投影方向w,Fisher规定了一个准则函数:要求选择的投影方向W能使降维后和两类具有最大的类间距离与类内距离比:

                        (3-20)

其中类间距离用两类均值和之间的距离表示,类内距离用每类样本距其类均值距离的和表示,在式中为+。

其中(i=1,2)为降维后各类样本均值:

=      i=1,2                     (3-21)

(i=1,2)为降维后每类样本类内离散度,+为总的类内离散度:

,     i=1,2                  (3-22)

=+                           (3-23)

类间离散度表示为。但式(3-20)Fisher准则函数并不是w的显示函数,无法根据此准则求解W,因此需要对Fisher准则函数形式进行修改:

因        i=1,…,n ,则

===     i=1,2            (3-24)

==      (3-25)

=

同样(i=1,2)也可推出与w的关系:

=

==             (3-26)

因此

+ =                (3-27)

则最终可表示为: 

 =                 (3-28)

根据式(3-28)Fisher准则函数,要寻找一投影向量W,使最大化,则需对按变量W求导并使之为零:

      (3-29)

则需 

()()=0

=                       (3-30)

令,则

                         (3-31)

这是一个广义特征值问题,若非奇异,则

                          (3-32)

因此可以通过对进行特征值分解,将最大特征值对应的特征向量作为最佳投影方向W。

以上Fisher准则只能用于解决两类分类问题,为了解决多类分类问题,Dudal提出了判别矢量集的概念,被称为经典的Fisher线性判别分析方法。

Duda指出,对于c类问题,则需要c-1个上节的用于两类分类的Fisher线性判别函数,即需要由c-1个投影向量W组成一个投影矩阵W∈,将样本投影到此投影矩阵上,从而可以提取c-1维的特征矢量。针对c类问题,则样本的统计特性需要推广到c类上。

样本的总体均值向量:

          i=1,…,c            (3-33)

样本的类内离散度矩阵:

                (3-34)

样本的类间离散度矩阵:

                 (3-35)

将样本空间投影到投影矩阵W上,得到C-1维的特征矢量y:

                           (3-36)

其中,y∈。投影后的样本统计特性也相应的推广到c类:

投影后总样本均值向量:

            i=1,…c     (3-37)

样本的类内离散度矩阵:

               (3-38)

样本的类间离散度矩阵: 

                   (3-39)

Fisher准则也推广到c类问题: 

                      (3-40)

为使Fisher准则取得最大值,类似两类分类问题,W需满足:

                            (3-41)

若非奇异,则,则W的每一列为的前c-1个较大特征值对应的特征向量。

3.2.2 基于LDA的人脸特征提取

线性判别式分析[](Linear Discriminant Analysis, LDA),也叫做Fisher线性判别(Fisher Linear Discriminant ,FLD),是模式识别的经典算法,它是在1996年由Belhumeur引入模式识别和人工智能领域的。性鉴别分析的基本思想是将高维的模式样本投影到最佳鉴别矢量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保证模式样本在新的子空间有最大的类间距离和最小的类内距离,即模式在该空间中有最佳的可分离性。因此,它是一种有效的特征抽取方法。使用这种方法能够使投影后模式样本的类间散布矩阵最大,并且同时类内散布矩阵最小。就是说,它能够保证投影后模式样本在新的空间中有最小的类内距离和最大的类间距离,即模式在该空间中有最佳的可分离性。LDA算法的思想如下:

假设对于一个空间有m个样本分别为 即每个是一个n行的矩阵,其中表示属于i类的样本个数,假设有一个有c个类,则。是类间离散度矩阵,是类内离散度矩阵,是属于i类的样本个数,是第i个样本,是所有样本的均值,是类i的样本均值。那么类i的样本均值为

                     (3-42)

同理我们也可以得到总体样本均值为

                      (3-43)

根据类间离散度矩阵和类内离散度矩阵定义,可以得到如下式子

                (3-44)

            (3-45)

当然还有另一种类间类内的离散度矩阵表达方式

               (3-46)(3-47)

其中是指i类样本的先验概率,即样本中属于i类的概率( )。

LDA作为一个分类的算法,我们当然希望它所分的类之间耦合度低,类内的聚合度高,即类内离散度矩阵的中的数值要小,而类间离散度矩阵中的数值要大,这样的分类的效果才好。这里我们引入Fisher鉴别准则表达式:

                   (3-48)

通过最优化下面的准则函数找到有一组最优鉴别矢量构成的投影矩阵,

           (3-49)

可以证明,当为非奇异(一般在实现LDA算法时,都会对样本做一次PCA算法的降维,消除样本的冗余度,从而保证是非奇异阵,当然即使为奇异阵也是可以解的,可以把或对角化,这里不做讨论,假设都是非奇异的情况)时,最佳投影矩阵的列向量恰为下来广义特征方程

                        (3-50)

由(3-50)式可以推导出

                       (3-51)

又由于,再结合以上两式可以求出

        (3-52)

根据公式意义来看,要使得最大,则只要取即可,所以可得出结论:投影矩阵的列向量为个最大特征值所对应的特征向量,其中。

3.3 Fisherface人脸识别方法

Fisherface方法也称为Fisher线性判别分析(Fisher Linear Discriminant

Analysis,FLDA),是由P.N.Belhumeur等人在1997年提出的。研究者注意到特征值大的特征向量(即特征脸)并不一定是分类性能最好的方向, Fisherface方法的目的就是要从高维特征空间里提取出最具有判别能力的低维特征,这些特征能帮助将同一个类别的所有样本聚集在一起,而不同类别的样本尽量的分开,也就是说,它选择使得样本类间离散度和样本类内离散度的比值最大的特征。

Fisherface方法的实现是在PCA数据重构的基础上完成的,首先利用PCA将高维数据投影到低维特征脸子空间,然后再在这个低维特征脸子空间上用LDA特征提取方法得到相关特征参数[]。程序中使用参数寻优的方法来寻找最佳投影维数,以达到比较理想的识别效果。

Fisherface采用PCA 和LDA 相结合的方法,实验证明此方法识别率比较高。由于PCA 方法存在着缺陷,图像中所有的像素都被赋予了同等的地位,角度、光照、尺寸及表情等会导致识别率下降。LDA 的计算过程要反复做矩阵操作,计算量非常的大,而且计算复杂,容易引起累计误差,影响计算的精度,并且由于在正常的情况下人脸识别问题总是一个小样本问题,训练样本数比图像向量的维数要小很多,所以类内散布矩阵总为奇异阵而使此方法的求解变得很困难。因此,我们采用将PCA 和LDA 算法相结合的Fisherface人脸识别方法[]。

对于上节介绍的Fisher准则,当非奇异,可以通过对进行特征值分解,从而求出最佳投影方向W。但是当LDA用于人脸特征提取时,因图像转换为列向量维数太大,往往远大于样本数,造成奇异,则很难根据求解最佳投影方向,即小样本问题。如一幅168×192的人脸图像,转换为列向量变为168×192=32256维,则为32256×32256的矩阵,但是因由样本计算而来,秩最大为(N为总样本数,C为类别数),因<<32256,造成奇异。

因为的秩为N-C,为使非奇异,Fisherfaces 首先利用PCA技术将样本降到N-c维,这样经PCA降维后样本的类内离散度矩阵可逆。此时可以对经PCA降维后的样本直接利用标准的LDA技术将维数降到c-1维。算法具体步骤如下:

(1)将所有的axb的训练图像转换为列向量,并对其中心化:均减去总训练图像的均值。计算其类内离散度矩阵,类间离散度矩阵。

(2)计算样本的协方差矩阵,并对其特征值分解,将特征向量按照其特征值的大小进行降序排列。取前N-c个特征向量组成dx(N-c)的投影矩阵。

(3)计算投影到投影矩阵上的样本的类内离散度矩和类间离散度矩阵:

              (3-52)

(4)此时因非奇异,可逆,所以可以按照标准LDA,通过对进行特征值分解,寻找最佳投影子空间。

(5)将的特征向量按其特征值进行降序排列。根据矩阵论:

           (3-54)

因的秩最大为c-1,的秩为N-c,而一般N-c>c-1,则的秩最大为c-1。取的前c-1个较大特征值对应的特征向量组成投影矩阵。

(6)将作为最终投影矩阵

(7)将所有样本中心化后,经投影变换全部投影到W上,从而为每个样本提取了c-1个特征得到:

              (3-55)

(8)将测试图像经中心化,同样投影到W上,提取到c-1个特征得:

                (3-56)

(9)选择合适的分类器,利用提取的特征对测试图像进行分类。下载本文

显示全文
专题