线性判别分析(LDA)

 

说明 :本文为个人随笔记录,目的在于简单了解LDA的原理,为后面详细分析打下基础。

 

一、LDA的原理

LDA的全称是Linear Discriminant Analysis(线性判别分析),是一种supervised learning。

LDA的原理:将带上标签的数据(点),通过投影的方法,投影到维度更低的空间中,使得投影后的点,会形成按类别区分,一簇一簇的情况,相同类别的点,将会在投影后的空间中更接近。因为LDA是一种线性分类器。对于K-分类的一个分类问题,会有K个线性函数:

                                                                                     

 

 

当满足条件:对于所有的j,都有Yk > Yj,的时候,我们就说x属于类别k。

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

                                                                           

 

 上图提供了两种方式,哪一种投影方式更好呢?从图上可以直观的看出右边的比左边的投影后分类的效果好,因此右边的投影方式是一种更好地降维方式。

 LDA分类的一个目标是使得不同类别之间的距离越远越好,同一类别之中的距离越近越好。

 

 二、LDA算法流程

输入:数据集 D = {(x1, y1), (x1, y1), ... ,(xm, ym)},任意样本xi为n维向量,yi∈{C1, C2, ... , Ck},共k个类别。现在要将其降维到d维;
输出:降维后的数据集D'。

  • (1)计算类内散度矩阵 SB;
  • (2)计算类间散度矩阵 SW;
  • (3)将 SB 和 SW 代入上面公式计算得到特征值 λ 和特征向量 w,取前面几个最大的特征值向量λ'与特征向量相乘得到降维转换矩阵 λ'w;
  • (4)将原来的数据与转换矩阵相乘得到降维后的数据 (λ'w)Tx ;
 
三、LDA优缺点分析

LDA算法既可以用来降维,又可以用来分类,但是目前来说,主要还是用于降维。在我们进行图像识别图像识别相关的数据分析时,LDA是一个有力的工具。下面总结下LDA算法的优缺点。

    LDA算法的主要优点有:

    1)在降维过程中可以使用类别的先验知识经验,而像PCA这样的无监督学习则无法使用类别先验知识。

    2)LDA在样本分类信息依赖均值而不是方差的时候,比PCA之类的算法较优。

    LDA算法的主要缺点有:

    1)LDA不适合对非高斯分布样本进行降维,PCA也有这个问题。

    2)LDA降维最多降到类别数k-1的维数,如果我们降维的维度大于k-1,则不能使用LDA。当然目前有一些LDA的进化版算法可以绕过这个问题。

    3)LDA在样本分类信息依赖方差而不是均值的时候,降维效果不好。

    4)LDA可能过度拟合数据。


参考资料:
1、线性判别分析(LDA):https://www.jianshu.com/p/13ec606fdd5f
2、机器学习中的数学(LDA、PCA): https://www.cnblogs.com/LeftNotEasy/archive/2011/01/08/lda-and-pca-machine-learning.html
3、线性判别LDA原理总结:https://www.cnblogs.com/pinard/p/6244265.html
 
posted @ 2020-12-24 16:51  wdkdyx  阅读(1138)  评论(0)    收藏  举报