十分钟带你了解Fisher线性判别

应用统计方法解决模式识别问题时,一再碰到的问题之一就是维度问题。在低维空间里计算上行得通的方法,在高维空间中往往行不通,如维度灾难等问题。因此,降低维数有时就会成为处理实际问题的关键。

简介

前面说到,在处理实际问题时,我们可能需要将维度降低以避免维度灾难等问题。我们不妨考虑把dd维空间的样本投影到一条直线上,形成一维空间,即把维数压缩到一维。当然,即使样本在dd维空间里形成若干紧凑的互相分得开的集群,当把它们投影到一条直线上时,也可能会是几类样本混在一起而变得无法识别。但是,在一般情况下,总可以找到某个方向,使在这个方向的直线上,样本的投影能分得开。那么,如何根据实际情况找到一条最好的、最易于分类的投影线呢?这就是Fisher判别方法所要解决的基本问题。如下图所示。

十分钟带你了解Fisher线性判别

在讨论Fisher线性判别之前,我们不妨先看看样本是如何从dd维空间映射到一维空间的。

假设有一包含NNdd维的样本集合SS,其中N1N_1个属于w1w_1的样本集合记为S1S_1N2N_2个属于w2w_2的样本集合记为S2S_2。若对xi\mathbf{x}_i的分量做线性组合即可得到标量,

yi=wTxi,i=1,2,,Ny_i = \mathbf{w}^{T}\mathbf{x}_i, i = 1, 2, \dots, N

这样,我们便可得到NN个一维样本yiy_i组成的集合,并可分为两个子集S1S_1^{'}S2S_2^{'}

因此,我们只需找到一个矩阵wR1×d\mathbf{w} \in \mathbb{R}^{1\times d}即可将样本从dd维空间降到1维空间。此外,w\mathbf{w}的值是无关紧要的,它仅是一个比例因子重要的是选择w\mathbf{w}的方向。因为,w\mathbf{w}的方向不同,将使样本投影后的可分离程度不同,从而直接影响的分类效果。因此,上述寻找最佳投影方向的问题,在数学上就是寻找最好的变换向量w\mathbf{w}^{*}的问题

Fisher线性判别中的基本参量

在之前的内容,我们讨论了Fisher线性判别的基本概念。这里,在对Fisher线性判别进行详细地数学推导之前,我们先见到介绍一下涉及到的一些基本参量。

  1. ddXX空间

    • 各类样本的均值向量mi\mathbf{m}_i
      mi=1NixSix,i=1,2\mathbf{m}_i = \frac{1}{N_i}\sum_{\mathbf{x} \in S_i}\mathbf{x}, \quad i = 1, 2

    • 样本类内离散度矩阵SiS_i和总样本类内离散度矩阵SwS_w。其中SwS_w是对称半正定矩阵,而且当N>dN>d时通常是非奇异的。
      Si=xSi(xmi)(xmi)T,i=1,2Sw=S1+S2 \begin{aligned} S_i &= \sum_{\mathbf{x} \in S_i}(\mathbf{x} - \mathbf{m}_i)(\mathbf{x} - \mathbf{m}_i)^{T}, \quad i = 1, 2 \\ S_w &= S_1 + S_2 \\ \end{aligned}

    • 样本类间离散度矩阵SbS_b。其中,SbS_b是对称半正定矩阵。
      Sb=(m1m2)(m1m2)TS_b = (\mathbf{m}_1 - \mathbf{m}_2)(\mathbf{m}_1 - \mathbf{m}_2)^{T}

  2. 在1维YY空间

    • 各类样本均值m~i\tilde{m}_i
      m~i=1NiySiy,i=1,2\tilde{m}_i = \frac{1}{N_i}\sum_{y \in S_i^{'}}y,\quad i = 1, 2
    • 样本类内离散度S~i2\tilde{S}_i^{2}和总样本类内离散度S~w\tilde{S}_w
      S~i2=ySi(ym~i)2,i=1,2S~w=S~12+S~22 \begin{aligned} \tilde{S}_i^{2} &= \sum_{y \in S_i^{'}}(y - \tilde{m}_i)^{2}, \quad i = 1, 2 \\ \tilde{S}_w &= \tilde{S}_1^{2} + \tilde{S}_2^{2} \\ \end{aligned}

Fisher准则函数

ok!Fisher线性判别的基本参量已经介绍完毕,接下来就开始进入正题吧。

直观上看,为了样本映射后能线性划分,我们想要同一类的样本彼此靠近,不同类的样本彼此分离。因此,我们不妨定义函数如下,

JF(w)=(m~1m~2)2S~12+S~22J_F(\mathbf{w}) = \frac{(\tilde{m}_1 - \tilde{m}_2)^{2}}{\tilde{S}_1^{2} + \tilde{S}_2^{2}}

其中,m~1m~2\tilde{m}_1 - \tilde{m}_2是两类样本均值之差,S~i2\tilde{S}_i^{2}是样本类内离散度。显然,应该使JF(w)J_F(\mathbf{w})的分子尽可能大而分母尽可能小,即应该尽可能寻找使JF(w)J_F(\mathbf{w})大的w\mathbf{w}作为投影方向。但上式中不显式包含w\mathbf{w}。因此,我们首先需要将JF(w)J_F(\mathbf{w})转换为w\mathbf{w}的显函数。

由各类样本的均值可推出,

m~i=1NiySiy=1NixSiwTx=wTmi\tilde{m}_i = \frac{1}{N_i}\sum_{y \in S_i^{'}}y = \frac{1}{N_i}\sum_{\mathbf{x} \in S_i}\mathbf{w}^{T}\mathbf{x} = \mathbf{w}^{T}\mathbf{m}_i

这样,Fisher准则函数JF(w)J_F(\mathbf{w})的分子可写成,

(m~1m~2)2=(wTm1wTm2)2=wT(m1m2)(m1m2)Tw=wTSbw \begin{aligned} (\tilde{m}_1 - \tilde{m}_2)^{2} &= (\mathbf{w}^{T}\mathbf{m}_1 - \mathbf{w}^{T}\mathbf{m}_2)^{2} \\ &= \mathbf{w}^{T}(\mathbf{m}_1 - \mathbf{m}_2)(\mathbf{m}_1 - \mathbf{m}_2)^{T}\mathbf{w} \\ &= \mathbf{w}^{T}S_b\mathbf{w}\\ \end{aligned}

现在再来考察JF(w)J_F(\mathbf{w})的分母与w\mathbf{w}的关系,

S~i2=ySi(ym~i)2=xSi(wTxwTmi)=wT[xSi(xmi)(xmi)T]w=wTSiw \begin{aligned} \tilde{S}_i^{2} &= \sum_{y \in S_i^{'}}(y - \tilde{m}_i)^{2} \\ &= \sum_{\mathbf{x} \in S_i}(\mathbf{w}^{T}\mathbf{x} - \mathbf{w}^{T}\mathbf{m}_i) \\ &= \mathbf{w}^{T}[\sum_{\mathbf{x} \in S_i}(\mathbf{x} - \mathbf{m}_i)(\mathbf{x} - \mathbf{m}_i)^{T}]\mathbf{w} \\ &= \mathbf{w}^{T}S_i\mathbf{w}\\ \end{aligned}

因此,有S~12+S~22=wT(S1+S2)w=wTSww\tilde{S}_1^{2} + \tilde{S}_2^{2} = \mathbf{w}^{T}(S_1 + S_2)\mathbf{w} = \mathbf{w}^{T}S_w\mathbf{w}

将各式代入准则函数JF(w)J_F(\mathbf{w}),得

JF(w)=wTSbwwTSwwJ_F(\mathbf{w}) = \frac{\mathbf{w}^{T}S_b\mathbf{w}}{\mathbf{w}^{T}S_w\mathbf{w}}

其中,SbS_b为样本类间离散度矩阵,SwS_w为总样本类内离散度矩阵。

w\mathbf{w}^{*}的求取

不难发现,w\mathbf{w}^{*}的求取实际上是一个有条件约束的优化问题。因为,在求解w\mathbf{w}^{*}的过程中,要始终保持wTSww0\mathbf{w}^{T}S_w\mathbf{w} \ne 0。因此,我们需要使用拉格朗日乘子法求解w\mathbf{w}^{*}

令分母为非零常数,即,

wTSww=c0 \mathbf{w}^{T}S_w\mathbf{w} = c \ne 0

定义拉格朗日函数为,

L(w,λ)=wTSbwλ(wTSwwc)L(\mathbf{w}, \lambda) = \mathbf{w}^{T}S_b\mathbf{w} - \lambda(\mathbf{w}^{T}S_w\mathbf{w} - c)

其中,λ\lambda是拉格朗日乘子。将上式对w\mathbf{w}求偏导,得

L(w,λ)w=SbwλSww\frac{\partial L(\mathbf{w}, \lambda)}{\partial \mathbf{w}} = S_b\mathbf{w} - \mathbf{\lambda}S_w\mathbf{w}

令偏导数为零,有,

SbwλSww=0S_b\mathbf{w}^{*} - \lambda S_w\mathbf{w}^{*}= 0

即,

Sbw=λSwwS_b\mathbf{w}^{*} = \lambda S_w\mathbf{w}^{*}

其中,w\mathbf{w}^{*}就是JF(w)J_F(\mathbf{w})的极值解。因为SwS_w非奇异,将上式两边左乘Sw1S_w^{-1},可得

Sw1Sbw=λwS_w^{-1}S_b\mathbf{w}^{*} = \lambda \mathbf{w}^{*}

上式为求一般矩阵Sw1SbS_w^{-1}S_b的特征值问题。利用Sb=(m1m2)(m1m2)TS_b = (\mathbf{m}_1 - \mathbf{m}_2)(\mathbf{m}_1 - \mathbf{m}_2)^{T}的定义,将上式左边的SbwS_b\mathbf{w}^{*}写成,

Sbw=(m1m2)(m1m2)Tw=(m1m2)RS_b\mathbf{w}^{*} = (\mathbf{m}_1 - \mathbf{m}_2)(\mathbf{m}_1 - \mathbf{m}_2)^{T}\mathbf{w}^{*} = (\mathbf{m}_1 - \mathbf{m}_2)R

其中,R=(m1m2)TwR = (\mathbf{m}_1 - \mathbf{m}_2)^{T}\mathbf{w}^{*}是一标量,所以SbwS_b\mathbf{w}^{*}总在向量(m1m2)(\mathbf{m}_1 - \mathbf{m}_2)的方向上。因此,λw\lambda \mathbf{w}^{*}可写成,

λw=Sw1(m1m2)R\lambda \mathbf{w}^{*} = S_w^{-1}(\mathbf{m}_1 - \mathbf{m}_2)R

因此,可有

w=RλSw1(m1m2)\mathbf{w}^{*} = \frac{R}{\lambda}S_w^{-1}(\mathbf{m}_1 - \mathbf{m}_2)

由于我们的目的是寻找最佳的投影方向,w\mathbf{w}^{*}的比例因子对此并无影响,因此可忽略比例因子Rλ\frac{R}{\lambda},有

w=Sw1(m1m2)\mathbf{w}^{*} = S_w^{-1}(\mathbf{m}_1 - \mathbf{m}_2)

总结

  • w\mathbf{w}^{*}是使Fisher准则函数JF(w)J_F(w)取极大值时的解,也就是ddXX空间到一维YY空间的最佳投影方向。有了w\mathbf{w}^{*},就可以把dd维样本x投影到一维,这实际上是多维空间到一维空间的一种映射,这个一维空间的方向w\mathbf{w}^{*}相对于Fisher准则函数JF(w)J_F(w)是最好的。
  • 利用Fisher准则,就可以将dd维分类问题转化为一维分类问题,然后,只要确定一个阈值TT,将投影点yiy_iTT相比较,即可进行分类判别。

参考文献

黄庆明,《第三章.ppt》