本文介绍LDA线性判别分析。
LDA线性判别分析
LDA线性判别分析(Linear Discriminant Analysis, 以下简称LDA)是一种监督学习的降维技术,也就是说它的数据集的每个样本是有类别输出的。PCA是不考虑样本类别输出的无监督降维技术。 投影后类内方差最小,类间方差最大
LDA原理
数据集:D=(x1,y1),(x2,y2),…,((xm,ym)) 任意样本:xi为n维向量,yi∈0,1 第j类样本的个数: Nj(j=0,1) 第j类样本的均值向量: μj(j=0,1) 第j类样本的协方差矩阵(严格说是缺少分母部分的协方差矩阵): ∑j(j=0,1)
μj=1Nj∑x∈Xjx(j=0,1)
Σj=∑x∈Xj(x−μj)(x−μj)T(j=0,1)
由于是两类数据,因此我们只需要将数据投影到一条直线上即可。 投影直线:向量w, 任意一个样本本: xi 投影:wTxi 两个类别的中心点在直线w的投影:wTμ0和wTμ1。
优化目标:
argmax⏟wJ(w)=||wTμ0−wTμ1||22wTΣ0w+wTΣ1w=wT(μ0−μ1)(μ0−μ1)TwwT(Σ0+Σ1)w我们一般定义类内散度矩阵Sw为: Sw=Σ0+Σ1=∑x∈X0(x−μ0)(x−μ0)T+∑x∈X1(x−μ1)(x−μ1)T 同时定义类间散度矩阵Sb为: Sb=(μ0−μ1)(μ0−μ1)T 这样我们的优化目标重写为: argmax⏟wJ(w)=wTSbwwTSww
由于w的缩放不会影响最终解,可增加约束$ | w^TS_ww | =1$,加入拉格朗日函数后得到: |
Sbw=λSww⟹S−1wSbw=λw w为S−1wSb的特征向量,求解即可得解。
进一步简化问题,简化问题,因此Sbw=Sb=(μ0−μ1)(μ0−μ1)T,其方向始终为(μ2−μ1) ,故可以用 λ(μ2−μ1) 来表示,因此我们可以得到:
w=S−1w(μ0−μ1)
Related Issues not found
Please contact @buaawht to initialize the comment