老齐
2022/12/17阅读:36主题:科技蓝
费雪的线性判别分析
有朋友问:为什么感觉对机器学习和神经网络,似乎总是隔着一层纱那样,不清晰,虽然能跑代码,但总是不放心,不知道自己做的是否有根据。 这是因为:和机器学习之间,缺少了一个数学。
费雪的线性判别分析
1. 缘起
对于线性判别分析的介绍,在网上或者有关书籍中,均能找到不少资料。但是,诸多内容中,未能给予线性判别分析完整地讲解,本文不揣冒昧,斗胆对其中的一部分内容,即费雪的线性判别分析进行整理,权当自己的学习笔记,在这里发布出来,供朋友们参考。
2. 费雪的线性判别分析
英国统计学家费雪(Ronald Fisher)提出的专门为含有两个类别样本的有监督的降维方法,称为“费雪的线性判别分析(Fisher Linear Discriminant Analysis)。
费雪的线性判别分析基本思想是(如图1所示):

获得数据在某直线(超平面)上的投影,并同时要求:
-
类内散度最小 -
类间散度最大
多数资料中介绍线性判别分析的时候,都是按照上述费雪所提出的线性判别分析思想讲解的。
本文也首先介绍上述基本思想,而后引申出其他相关问题。
注意:以下内容是以数学推导为主,对此方面如读者有感不足,请参阅:《机器学习数学基础》的书籍或视频课程
2.1 二分类的样本数据
设数据样本 ,样本大小为 ,特征数(维数)是 。
假设此样本分为两类,类别 ,样本数为 ;类别 ,样本数量为 。并且 。
2.2 问题:投影可能重叠
设有一条直线 L ,用单位向量 ( )表示此直线的方向。
若将样本中的任意一个向量 向此直线投影,得到投影量 ,其中 表示投影的大小(长度)。
由于 与单位向量 正交,即: ,所以:
故样本中每个样本
将
根据(2)式结果,可以得到
令
由于可以用均值表示数据的集中趋势
于是得到两个类别投影中心的距离:
(5)式说明,类别投影中心的距离(
数据点与数据点之间的距离,表征了数据的分散程度,统计学中使用方差衡量数据的分散程度 (样本方差:
散度与方差有相同的地方,都表示了数据相对平均值的分散程度。图 2 左边表示了散度较大,右边较小。

根据前述费雪的线性判别基本思想,要找到一条适合的直线,用作样本数据投影,并且要能够满足类间散度最大 ,即找到适合的
下面使用拉格朗日乘数法
定义拉格朗日函数:
其中
要实现(7)是中第一个式子的最小化,须令
因为
这说明直线 L 的方向与两个类别中心的距离矢量方向平行。
但是,如果按照(11)式的方式确定直线 L 方向,样本的投影有可能出现图 1 所示的重叠现象。
从降维的角度看,假设是将高维数据降到一维,图 1 演示的降维效果并不会有利于后续分类过程。
对此,费雪提出,应该兼顾类别之间和同一类别之内的样本投影的方差:
-
不同类别之间的样本投影的方差越大越好(如以上说明) -
同一类之内的样本投影的方差越小越好
这样,在直线(或超平面)上的投影,不同的类别投影中心的距离就尽可能大;同一类别之内的样本的投影尽可能聚集在一起。
2.3 费雪准则
前面已经确定,可以用类别的样本数据的平均数表示每个类别的样本数据的中心(即类别中心):
以下将
在直线 L 上,类别同样中心用的样本投影的平均数表示:
以下将
仿照方差的定义形式,定义
前述(6)式定义了
根据费雪的思想,既要实现
2.4 散度矩阵
以下分别写出
-
-
-
其中
-
根据(14)式和(2)、(13)式,
故:
于是,(16)式的费雪准则,可以用(21)式和(22)式的结果表示为:
由(17)和(18)式可知,
由(19)式可知,
2.5 最优化问题求解
对(23)式的最大化求解,可以有多种方法:
-
法1:直接计算 -
法2:用线性代数方法:因为(23)式也称为广义瑞利商,故可以根据冠以特征值求解 -
法3:拉格朗日乘数法:参考资料 [1] 中使用的这个方法,但推导过程不详细。
法1:
最直接的思路: