Fisher判别分析

将高维度空间的样本投影到低维空间上,使得投影后的样本数据在新的子空间上有最小的类内距离以及最大的类间距离,使得在该子空间上有最佳的可分离性
Fisher判别分析详解
可以看出右侧投影后具有更好的可分离性。

Fisher判别分析和PCA差别

刚学完感觉两个很类似,实际上两个方法是从不同的角度来降维。

Fisher判别分析详解
PCA是找到方差尽可能大的维度,使得信息尽可能都保存,不考虑样本的可分离性,不具备预测功能。
LAD(线性判别分析) 是找到一个低维的空间,投影后,使得可分离性最佳,投影后可进行判别以及对新的样本进行预测。

Fisher判别详解

Fisher判别分析是要实现有最大的类间距离,以及最小的类内距离
Fisher判别分析详解
用二分类来分析,设样本数据集为D={(X,Y)}Xiii{ 0,1}D=\{(X,Y)\},X_i是第i类样本的集合,i\in\{\ 0,1\} ,要找的最佳投影为WW

μi\mu_i为第i类样本质心,NiN_i为第i类的数量μi=1NixXix\mu_i=\frac{1}{N_i}\sum_{x\in X_i} x

  1. 最大的类间距离
    即要投影后两个样本的质心离得越远越好,那么就能得到
    J0=(WTμ1WTμ0)2=(WT(μ1μ0))2=(WT(μ1μ0))(WT(μ1μ0))T=WT(μ1μ0)(μ1μ0)TWJ_0=(W^T\mu_1-W^T\mu0)^2=(W^T(\mu_1-\mu0))^2=(W^T(\mu_1-\mu0))(W^T(\mu_1-\mu0))^T=W^T(\mu_1-\mu0)(\mu_1-\mu0)^TW
    S0=(μ1μ0)(μ1μ0)TS_0=(\mu_1-\mu0)(\mu_1-\mu0)^T ,那么 J0=WTS0WJ_0=W^TS_0W
  2. 最小的类内距离
    即要使得投影后同一类的样本点尽可能聚拢在一起,离质心越近越好。
    J1=xXi(WTxWTui)2=xXi(WT(xui))(WT(xui))T=xXiWT(xui)(xui)TWJ1=\sum_{x\in X_i} (W^Tx-W^Tu_i)^2=\sum_{x\in X_i} (W^T(x-u_i))(W^T(x-u_i))^T=\sum_{x\in X_i} W^T(x-u_i)(x-u_i)^TW
    S1=xXi(xui)(xui)TS_1=\sum_{x\in X_i}(x-u_i)(x-u_i)^T,那么J1=WTS1WJ1=W^TS_1W

那么我们现在要使得J0J0尽可能大,J1J_1尽可能小,那么就是最大化J=J0J1=WTS0WWTS1WJ=\frac{J_0}{J_1}=\frac{W^TS_0W}{W^TS_1W}

分式上下都有W,那么W和αW\alpha W效果是一样的,不妨令WTS1W=1W^TS_1W=1,那么优化条件变成
J=WTS0W,s.t.:WTS1W=1J=W^TS_0W,s.t. :W^TS_1W=1

拉格朗日乘子法求解,L(W,λ)=WTS0Wλ(WTS1W1)L(W,\lambda)=W^TS_0W-\lambda(W^TS_1W-1)
dL=(dw)TS0W+WTS0dWλ((dw)TS1W+WTS1dW)dL=(dw)^TS_0W+W^TS_0dW-\lambda((dw)^TS_1W+W^TS_1dW)
=WTS0TdW+WTS0dWλ(WTS1TdW+WTS1dW)=W^TS_0^TdW+W^TS_0dW-\lambda(W^TS_1^TdW+W^TS_1dW)
=(2WTS02λWTS1)dW=(2W^TS_0-2\lambda W^TS_1)dW

运算过程是用到矩阵求导,S0T=S0S_0^T=S_0
那么LW=(2WTS02λWTS1)T=2S0W2λS1W\frac{\partial L}{\partial W}=(2W^TS_0-2\lambda W^TS_1)^T=2S_0W-2\lambda S_1W ,导数为0处,S0W=λS1WS_0W=\lambda S_1W
S1S_1可逆的时候,λW=S11S0W\lambda W=S_1^{-1}S0W,那么最优的WW即为S11S0S_1^{-1}S_0的最大的特征向量。
如果要将XRnX\in R^n投影到Rd(d<n)R^d (d<n)的子空间中,则取前d个特征向量。

注意点:

1.LDA处理后的维度要小于类别数C,Sb的秩肯定小于等于C-1。
2.Sw矩阵不可逆情况很多,可以先用PCA处理成C-1维后再用LDA,效果挺好的
3.多分类情况下Sb用全局离散度矩阵减去类内离散度矩阵

参考博客:

线性分类器之Fisher线性判别
线性判别分析(Linear Discriminant Analysis)(一)
数模系列(7):Fisher判别分析(Fisher Discriminant Analysis)

相关文章: