线性判别分析 (Linear Discriminant Analysis,简称 LDA)是一种经典的线性学习方法。并且LDA是一种监督学习的降维技术。
思想: 给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近、 异类样例 的投影点尽可能远离(有些像中心损失的思想)。 在对新样本进行分类时,将其投影到 同样的这条直线上,再根据投影点的位置来确定新样本的类别。
给定数据集 D ∈ { ( X i , Y i ) } i − 1 m D\in \lbrace(Xi , Yi)\rbrace^m_{i-1} D∈{(Xi,Yi)}i−1m,旦 Y i ∈ { 0 , 1 } Y_i \in\lbrace {0, 1 }\rbrace Yi∈{0,1} , 令 X i , μ i , Σ i X_i,\mu_i,\Sigma_i Xi,μi,Σi 分别表示第 i ∈ { 0 , 1 } i\in \lbrace{0 , 1}\rbrace i∈{0,1} 类样例的集合、均值向量、协方差矩阵。
这里小小的回忆一下协方差与协方差矩阵: 协方差矩阵是一个矩阵,其每个元素是各个向量元素之间的协方差。而协方差描述了向量之间的相关程度(关于协方差,可以看这篇博客写的很好:终于明白协方差的意义了)
若将数据投影到直线 w w w上 ,则两类样本的中心在直线上的投影分别为 w T μ 0 w_Tμ_0 wTμ0 和 w T μ 1 w_Tμ_1 wTμ1
若将所有样本点都投影到直线上,则两类样本的协方差分别为 w T Σ 0 w w_T\Sigma_0w wTΣ0w和 w T Σ 1 w w_T\Sigma_1w wTΣ1w
欲使同类样例的投影点尽可能接近,可以让同类样例投影点的协方差尽可能小:即 w T Σ 0 w + w T Σ 1 w w_T\Sigma_0w+w_T\Sigma_1w wTΣ0w+wTΣ1w 尽可能小
使异类样例的投影点尽可能远离,类中心之间的距离尽可能大,即: ∣ ∣ w T μ 0 − w T μ 1 ∣ ∣ 2 2 ||w_Tμ_0-w_Tμ_1||^2_2 ∣∣wTμ0−wTμ1∣∣22 尽可能大( ∣ ∣ ⋅ ∣ ∣ 2 2 ||\centerdot ||^2_2 ∣∣⋅∣∣22 为L2范数的平方)
同时考虑二者,即最大化下式: 类内散度矩阵:
类问散度矩阵:
故 J J J函数可重写为:
也被称为 S b S_b Sb 与 S w S_w Sw 的"广义瑞利商"
那么 w w w如何求呢?
对于广义瑞利商,分子分母上的 w T ∗ ∗ w w^T**w wT∗∗w,只与其方向有关,我们可以将 w T S w w w^TS_ww wTSww看作1,因此最大化原函数 J J J变为最小化: 由拉格朗日乘子法,上式等价于: S b w S_bw Sbw 的方向恒为 μ 0 − μ 1 μ_0- μ_1 μ0−μ1,令: 故 w w w:
下面是均值向量输出:
[-4.91767118e-01 -4.15692170e-04] [ 0.50795852 -0.12563275]
原始数据分布: 经过LDA后的数据分布: