机器学习基础---降维方法---线性判别分析(LDA)推导

线性判别分析(LDA)

算法描述

核心思想:
  • LDA方法属于有监督降维,其需要由标签信息输入
  • 算法目标是将样本矩阵X经过线性映射W投影到子空间,使降维后样本类间距离尽可能远,类内方差足够小(最大化类间距离,最小化类内距离
相关定义:
  • 输入数据集 X = [ x 1 , x 2 , . . . , x N ] X=[x_1,x_2,...,x_N] X=[x1,x2,...,xN]

  • 定义指示矩阵F,矩阵大小为N*C(样本数*类别数);该矩阵每个行向量 F i F_i Fi与样本 x i x_i xi对应,当 x i x_i xi为第c类样本, F i c = 1 F_{ic}=1 Fic=1 F i F_i Fi其他元素为0

    • 有关F的计算:

      • F T F C ∗ C = [ n 1 0 . . . 0 0 n 2 . . . 0 . . . . . . . . . . . . 0 0 . . . n c ] ( n i 为 第 i 类 样 本 的 数 量 ) \underset{C*C}{F^TF}=\left[ \begin{matrix} n_1 & 0 & ... & 0\\ 0 & n_2 & ...& 0\\ ... & ... & ... & ...\\ 0 & 0 & ... & n_c \end{matrix} \right]\\ (n_i为第 i类样本的数量) CCFTF=n10...00n2...0............00...nc(nii)

      • X F = [ ∑ j x j 1 , ∑ j x j 2 , . . . , ∑ j x j C ] ( x j c 代 表 第 c 类 的 第 j 个 样 本 ; X F 的 列 向 量 X _ j 代 表 第 j 类 样 本 向 量 之 和 ) XF=[\sum_jx_j^1, \sum_jx_j^2,...,\sum_jx_j^C]\\ (x_j^c代表第c类的第j个样本;XF的列向量X_{\_j}代表第j类样本向量之和) XF=[jxj1,jxj2,...,jxjC](xjccjXFX_jj)

      • M = X F ( F T F ) − 1 = [ u 1 , u 2 , . . . u c ] ( u i 为 第 i 类 样 本 均 值 ) M=XF(F^TF)^-1=[u_1, u_2,...u_c]\\ (u_i为第i类样本均值) M=XF(FTF)1=[u1,u2,...uc](uii)

      • M F T = [ u c 1 , u c 2 , . . . , u c n ] ( u c i 代 表 第 i 个 样 本 对 应 类 别 的 均 值 ) MF^T=[u_{c1},u_{c2},...,u_{cn}]\\ (u_{ci}代表第i个样本对应类别的均值) MFT=[uc1,uc2,...,ucn](ucii)

  • 瑞利商:

    • 函数 R ( A , x ) = x T A x x T x R(A,x)=\frac{x^TAx}{x^Tx} R(A,x)=xTxxTAx称作广义瑞利商
    • 有性质:瑞利商最大值等于矩阵A最大的特征值,最小值等于矩阵A的最小的特征值
  • 广义瑞利商:

    • 函数 R ( A , B , x ) = x T A x x T B x R(A,B,x)=\frac{x^TAx}{x^TBx} R(A,B,x)=xTBxxTAx称作广义瑞利商

    • 标准化,令: x = B − 1 2 x ′ x=B^{-\frac12}x' x=B21x,得:
      x T B x = x ′ T ( B − 1 2 ) T B B − 1 2 x ′ = x ′ T B − 1 2 B B − 1 2 x ′ = x ′ T x ′ x T A x = x ′ T B − 1 2 A B − 1 2 x ′ x^TBx=x'^T(B^{-\frac12})^TBB^{-\frac12}x'=x'^TB^{-\frac12}BB^{-\frac12}x'=x'^Tx'\\ x^TAx=x'^TB^{-\frac12}AB^{-\frac12}x' xTBx=xT(B21)TBB21x=xTB21BB21x=xTxxTAx=xTB21AB21x

      R ( A , B , x ) = x ′ T B − 1 2 A B − 1 2 x ′ x ′ T x ′ R(A,B,x)=\frac{x'^TB^{-\frac12}AB^{-\frac12}x'}{x'^Tx'} R(A,B,x)=xTxxTB21AB21x

    • 结合瑞利商性质,R(A,B,x′)R(A,B,x′)的最大值为矩阵 B − 1 2 A B − 1 2 B^{-\frac12}AB^{-\frac12} B21AB21最大特征值,最小值为矩阵 B − 1 2 A B − 1 2 B^{-\frac12}AB^{-\frac12} B21AB21的最小特征值

  • 类间散度矩阵 S b S_b Sb

    • 目的是令各类之间尽可能分开,可以用各类样本中心方差表示:

    S w = ∑ i = 1 C n i ( u i − u ˉ ) ( u i − u ˉ ) T S_w=\sum_{i=1}^Cn_i(u_i-\bar u)(u_i-\bar u)^T Sw=i=1Cni(uiuˉ)(uiuˉ)T

    • 矩阵形式:
      S w = ( X − X F ( F T F ) − 1 F T ) ( X − X F ( F T F ) − 1 F T ) T = ( X − M F T ) ( X − M F T ) T = X X T − M F T X T = X X T − X F ( F T F ) − 1 F T X T ( M = X F ( F T F ) − 1 ) \begin{aligned} S_w &=(X-XF(F^TF)^{-1}F^T)(X-XF(F^TF)^{-1}F^T)^T\\ &= (X-MF^T)(X-MF^T)^T\\ &= XX^T-MF^TX^T\\ &= XX^T-XF(F^TF)^{-1}F^TX^T\\ &(M=XF(F^TF)^{-1}) \end{aligned} Sw=(XXF(FTF)1FT)(XXF(FTF)1FT)T=(XMFT)(XMFT)T=XXTMFTXT=XXTXF(FTF)1FTXT(M=XF(FTF)1)
  • 类内散度矩阵 S w S_w Sw

    • 目的是同类之间尽可能集中,因此可以用各类样本方差 S w i S_{wi} Swi之和表示:

    S b = ∑ i = 1 C S w i = ∑ i = 1 C ∑ j = 1 N i ( x i j − u i ) ( x i j − u i ) T S_b=\sum_{i=1}^CS_{w_i}=\sum_{i=1}^C\sum_{j=1}^{N_i}(x_i^j-u_i)(x_i^j-u_i)^T Sb=i=1CSwi=i=1Cj=1Ni(xijui)(xijui)T

    • 矩阵形式:
      S b =   S t − S w = X F ( F T F ) − 1 F T X T \begin{aligned} S_b&=\ S_t-S_w=XF(F^TF)^{-1}F^TX^T \end {aligned} Sb= StSw=XF(FTF)1FTXT
  • S w 与 S b S_w与S_b SwSb满足: S t = W W T = S b + S w S_t=WW^T=S_b+S_w St=WWT=Sb+Sw

    证明:
    S t − S w = ∑ i = 1 N ( x i − x ˉ ) ( x i − x ˉ ) T − ∑ i = 1 C ∑ j = 1 N j ( x j − x i ˉ ) ( x j − x i ˉ ) T = ∑ i = 1 C ∑ j = 1 N j [ ( x j − x ˉ ) ( x j − x ˉ ) T − ( x j − x i ˉ ) ( x j − x i ˉ ) T ] = ∑ i = 1 C ∑ j = 1 N j [ x j x j T − x j x ˉ T − x ˉ x j T + x ˉ x ˉ T − x j x j T + x j x i ˉ T + x i ˉ x j − x i ˉ x i ˉ T ] = ∑ i = 1 C ∑ j = 1 N j [ − x j x ˉ T − x ˉ x j T + x ˉ x ˉ T + x j x i ˉ T + x i ˉ x j − x i ˉ x i ˉ T ] \begin{aligned} S_t-S_w &= \sum_{i=1}^N(x_i-\bar{x})(x_i-\bar{x})^T-\sum_{i=1}^C\sum_{j=1}^{N_j}(x_j-\bar{x_i})(x_j-\bar{x_i})^T\\ &= \sum_{i=1}^C\sum_{j=1}^{N_j}[(x_j-\bar{x})(x_j-\bar{x})^T-(x_j-\bar{x_i})(x_j-\bar{x_i})^T]\\ &= \sum_{i=1}^C\sum_{j=1}^{N_j}[x_jx_j^T-x_j\bar{x}^T-\bar{x}x_j^T+\bar{x}\bar{x}^T-x_jx_j^T+x_j\bar{x_i}^T+\bar{x_i}x_j-\bar{x_i}\bar{x_i}^T]\\ &= \sum_{i=1}^C\sum_{j=1}^{N_j}[-x_j\bar{x}^T-\bar{x}x_j^T+\bar{x}\bar{x}^T+x_j\bar{x_i}^T+\bar{x_i}x_j-\bar{x_i}\bar{x_i}^T]\\ \end{aligned} StSw=i=1N(xixˉ)(xixˉ)Ti=1Cj=1Nj(xjxiˉ)(xjxiˉ)T=i=1Cj=1Nj[(xjxˉ)(xjxˉ)T(xjxiˉ)(xjxiˉ)T]=i=1Cj=1Nj[xjxjTxjxˉTxˉxjT+xˉxˉTxjxjT+xjxiˉT+xiˉxjxiˉxiˉT]=i=1Cj=1Nj[xjxˉTxˉxjT+xˉxˉT+xjxiˉT+xiˉxjxiˉxiˉT]
    ​ 取第i类:
    − ∑ j = 1 N i x j x ˉ T − ∑ j = 1 N i x ˉ x j T + ∑ j = 1 N i x ˉ x ˉ T + ∑ j = 1 N i x j x i ˉ T + ∑ j = 1 N i x i ˉ x j − ∑ j = 1 N i x i ˉ x i ˉ T = − N i x i ˉ x ˉ − N i x ˉ x i ˉ + N i x ˉ x ˉ T + N i x i ˉ x i ˉ T + N i x i ˉ x i ˉ T − N i x i ˉ x i ˉ T = N i ( − x i ˉ x ˉ T − x ˉ x i ˉ T + x ˉ x ˉ T + x i ˉ x i ˉ T ) = N i ( x i ˉ − x ˉ ) ( x i ˉ − x ˉ ) T \begin{aligned} & -\sum_{j=1}^{N_i}x_j\bar{x}^T-\sum_{j=1}^{N_i}\bar{x}x_j^T+\sum_{j=1}^{N_i}\bar{x}\bar{x}^T+\sum_{j=1}^{N_i}x_j\bar{x_i}^T+\sum_{j=1}^{N_i}\bar{x_i}x_j-\sum_{j=1}^{N_i}\bar{x_i}\bar{x_i}^T\\ &= -N_i\bar{x_i}\bar{x}-N_i\bar{x}\bar{x_i}+N_i\bar{x}\bar{x}^T+N_i\bar{x_i}\bar{x_i}^T+N_i\bar{x_i}\bar{x_i}^T-N_i\bar{x_i}\bar{x_i}^T\\ &= N_i(-\bar{x_i}\bar{x}^T-\bar{x}\bar{x_i}^T+\bar{x}\bar{x}^T+\bar{x_i}\bar{x_i}^T)\\ &= N_i(\bar{x_i}-\bar{x})(\bar{x_i}-\bar{x})^T\\ \end{aligned} j=1NixjxˉTj=1NixˉxjT+j=1NixˉxˉT+j=1NixjxiˉT+j=1Nixiˉxjj=1NixiˉxiˉT=NixiˉxˉNixˉxiˉ+NixˉxˉT+NixiˉxiˉT+NixiˉxiˉTNixiˉxiˉT=Ni(xiˉxˉTxˉxiˉT+xˉxˉT+xiˉxiˉT)=Ni(xiˉxˉ)(xiˉxˉ)T
    ​ 累加得:
    S t − S w = ∑ i = 1 C N i ( x i ˉ − x ˉ ) ( x i ˉ − x ˉ ) T = S b \begin{aligned} S_t-S_w &= \sum_{i=1}^CN_i(\bar{x_i}-\bar{x})(\bar{x_i}-\bar{x})^T =S_b \end{aligned} StSw=i=1CNi(xiˉxˉ)(xiˉxˉ)T=Sb

目标优化推导:
  • 优化目标

    对线性映射 Y = W T X Y=W^TX Y=WTX,优化的方向是:

    • 同类样本投影后尽可能接近 ==> 对同类样本,投影后的 W T x i W^Tx_i WTxi之间方差尽可能小

      • 最大化目标:
        ∑ i = 1 C W T X i X i T W = S w = ∑ i = 1 C W T ∑ i W = W T S w W \sum_{i=1}^CW^TX_iX_i^TW=S_w=\sum_{i=1}^CW^T∑_iW=W^TS_wW i=1CWTXiXiTW=Sw=i=1CWTiW=WTSwW
    • 异类样本投影后尽可能远离 ==> 对异类样本,投影后样本中心点 W T u i W^Tu_{i} WTui之间方差尽可能大

      • 最小化目标:
        ∑ i = 1 C ∑ j = 1 N i ( W T x i j − W T u i ) ( W T x i j − W T u i ) T = W T S b W \sum_{i=1}^C\sum_{j=1}^{N_i}(W^Tx_i^j-W^Tu_i)(W^Tx_i^j-W^Tu_i)^T=W^TS_bW i=1Cj=1Ni(WTxijWTui)(WTxijWTui)T=WTSbW
    • 可以定义优化目标为:
      a r g m a x W J ( W ) = a r g m a x W ∏ d i a g ( W T S b W ) ∏ d i a g ( W T S w W ) \underset{W}{argmax}J(W)=\underset{W}{argmax}\frac{\prod_{diag}(W^TS_bW)}{\prod_{diag}(W^TS_wW)}\\ WargmaxJ(W)=Wargmaxdiag(WTSwW)diag(WTSbW)
      J ( W ) J(W) J(W)可转化为广义瑞利商的乘积:
      J ( W ) = ∏ d i a g ( W T S b W ) ∏ d i a g ( W T S w W ) = ∏ i = 1 m w i T S b w ∏ i = 1 m w i T S w w = ∏ i = 1 m w i T S b w w i T S w w J(W)=\frac{\prod_{diag}(W^TS_bW)}{\prod_{diag}(W^TS_wW)}=\frac{\prod_{i=1}^mw_i^TS_bw}{\prod_{i=1}^mw_i^TS_ww}=\prod_{i=1}^m\frac{w_i^TS_bw}{w_i^TS_ww} J(W)=diag(WTSwW)diag(WTSbW)=i=1mwiTSwwi=1mwiTSbw=i=1mwiTSwwwiTSbw
      根据广义瑞利商性质,有:

      w i T S b w w i T S w w \frac{w_i^TS_bw}{w_i^TS_ww} wiTSwwwiTSbw最大值m个为矩阵 S w − 1 S b S_w^{-1}S_b Sw1Sb的最大m个特征值,此时m个特征值对应的m个特征向量张成矩阵W

  • 矩阵形式推导

    • 定义目标函数:
      a r g m a x W J ( W ) = a r g m a x    W t r ( W T S b W ) t r ( W T S w W ) \underset{W}{argmax}J(W)=\underset{W}{argmax\ \ }\frac{tr(W^TS_bW)}{tr(W^TS_wW)} WargmaxJ(W)=Wargmax  tr(WTSwW)tr(WTSbW)

      约束 t r ( W T S w W ) = n tr(W^TS_wW)=n tr(WTSwW)=n,即 W T S w W = I W^TS_wW=I WTSwW=I

      此时优化目标为:
      m a x W   t r ( W T S b W ) s . t .   W T S w W = I \underset{W}{max}\ tr(W^TS_bW)\\ s.t.\ W^TS_wW=I Wmax tr(WTSbW)s.t. WTSwW=I
      使用拉格朗日乘子法,将目标转换为:
      L = t r ( W T S b W ) − t r ( Λ ( W T S w W − I ) ) L = tr(W^TS_bW)-tr(\Lambda(W^TS_wW-I)) L=tr(WTSbW)tr(Λ(WTSwWI))
      求导,令对W偏导为0,得:
      2 S b W − 2 Λ S m W = 0 得 : S b W = Λ S m W 有 : S m − 1 S b W = Λ W 2S_bW-2\Lambda S_mW=0\\ 得:S_bW=\Lambda S_m W\\ 有:S_m^{-1}S_bW=\Lambda W 2SbW2ΛSmW=0SbW=ΛSmWSm1SbW=ΛW
      与先前在PCA过程中的推导类似,得到W由 S m − 1 S b S_m^{-1}S_b Sm1Sb的特征向量作为列向量构成,且为了最大化目标函数,选取的特征向量应该是最大m个特征值对应的特征向量

算法流程

1)输入:样本向量集 X = [ x 1 , x 2 , . . . , x n ] X=[x_1,x_2,...,x_n] X=[x1,x2,...,xn];样本标签 Y = [ y 1 , y 2 , . . . , y n ] T Y=[y_1,y_2,...,y_n]^T Y=[y1,y2,...,yn]T y i ∈ { c 1 , c 2 , . . . , c C } y_i\in \{c_1,c_2,...,c_C\} yi{c1,c2,...,cC};目标维度m

2)计算类内散度矩阵 S w S_w Sw,类间散度矩阵 S b S_b Sb

3)计算 S w − 1 S b S_w^{-1}S_b Sw1Sb,并进行特征值分解,得到最大m个特征值与对应特征向量 w 1 , w 2 , . . . , w m w_1,w2,...,w_m w1,w2,...,wm

4)对 W = [ w 1 , w 2 , . . . , w m ] W=[w_1,w_2,...,w_m] W=[w1,w2,...,wm],对原样本集进行变换,得到 Y ′ = W T X Y'=W^TX Y=WTX,完成降维

参考资料

【1】线性判别分析LDA原理总结

【2】《统计学习方法》李航

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值