线性分类器相关概念总结

线性分类器

  • 线性判别法
  • Fisher线性判别法
  • 感知器法
  • 最小平方误差判别法

线性判别法

  • 判别函数的形式为: g ( X ) = W T X + W 0 g(X)=W^TX+W_0 g(X)=WTX+W0,其中 X X X W W W都是向量。分类时,有多少个类,就对应着多少个判别函数。
  • 线性判别函数利用一个超平面判定面把特征空间分割成2个区域,超平面的方向由 W W W决定,位置由 W 0 W_0 W0决定。判别函数 g ( x ) g(x) g(x)正比于 x x x点到超平面的代数距离。当 x x x在超平面 H H H的正侧时, g ( x ) > 0 g(x)>0 g(x)>0,在负侧时 g ( x ) < 0 g(x)<0 g(x)<0
  • 若是对样本进行规范化操作:
    定义一个新的变量 y ′ y' y,使得第一类样本 y ′ = y y'=y y=y,而对第二类样本 y ′ = − y y'=-y y=y,即:
    y i ′ = { y i , y i ∈ w 1 − y i , y i ∈ w 2 i = 1 , 2 , . . . , N y'_i=\left \{ \begin{array}{c} y_i ,y_i\in w_1\\ -y_i ,y_i\in w_2 \end{array} \right. i=1,2,...,N yi={yi,yiw1yi,yiw2i=1,2,...,N
    这样定义的 y ′ y' y称为规范化增广样本向量,仍记为 y i y_i yi
    则样本的可分性条件就变成了存在一个 a a a,使得: a T y i ′ > 0 , i = 1 , 2 , . . . , N a^Ty'_i>0,i=1,2,...,N aTyi>0,i=1,2,...,N。如果一个判别函数 g ( Y ) = a T Y g(Y)=a^TY g(Y)=aTY的权向量 a a a存在,可以使判别器工作,则这些样本 Y Y Y就成为“线性可分”的。

Fisher线性判别法

其主要思想为:选择投影方向,使2类样本投影的均值之差尽量最大,这样就可以使类内样本的离散程度尽可能小。

  • Fisher准则函数为:

m a x J F ( w ) = ( m ‾ 1 − m ‾ 2 ) 2 S ‾ 1 2 + S ‾ 2 2 max J_F(w)=\frac {(\overline m_1-\overline m_2)^2}{\overline S_1^2 + \overline S_2^2} maxJF(w)=S12+S22(m1m2)2
其中类间离散度 = ( m ‾ 1 − m ‾ 2 ) 2 (\overline m_1-\overline m_2)^2 (m1m2)2,总类内离散度 = S ‾ 1 2 + S ‾ 2 2 \overline S_1^2 + \overline S_2^2 S12+S22。最大化Fisher准则函数即使类内数据尽可能聚集,不同的类尽可能远离。

  • 确定判别器的 w w w w 0 w_0 w0

样本在方向上的投影为: y = w T x y=w^Tx y=wTx,则 J F ( w ) = w T S b w w T S w w J_F(w)=\frac {w^TS_bw}{w^TS_ww} JF(w)=wTSwwwTSbw w ∗ = max ⁡ w J F ( w ) w^*=\max_wJ_F(w) w=maxwJF(w),需要求解使得准则函数取得最大值时所对应的 w ∗ w^* w。即,求一个最大的 w T S b w w^TS_bw wTSbw。那么确定方向的 w ∗ = S w − 1 ( m 1 − m 2 ) w^*=S_w^{-1}(m_1-m_2) w=Sw1(m1m2)

当样本数量 N N N和特征维度 d d d都很大时, y y y接近正态分布,可在空间内用贝叶斯分类器。
在两类的协方差相同时,,Fisher线性判别所得的方向实际就是最优贝叶斯决策方向,此时:
w 0 = − 1 2 ( m 1 + m 2 ) T S w − 1 ( m 1 − m 2 ) − l n p ( w 2 ) p ( w 1 ) w_0=-\frac {1}{2}(m_1+m_2)^TS_w^{-1}(m_1-m_2)-ln\frac{p(w_2)}{p(w_1)} w0=21(m1+m2)TSw1(m1m2)lnp(w1)p(w2)
在考虑先验概率的情况下,也可采用如下估计:
w 0 = − 1 2 ( m ‾ 1 + m ‾ 2 ) − 1 N 1 + N 2 + 1 l n p ( w 1 ) p ( w 2 ) w_0=-\frac {1}{2}(\overline m_1+\overline m_2)-\frac {1}{N_1+N_2+1}ln\frac{p(w_1)}{p(w_2)} w0=21(m1+m2)N1+N2+11lnp(w2)p(w1)

  • 决策规律可表示为:

若 g ( x ) = w T x + w 0 { g ( x ) > 0 , x ∈ w 1 g ( x ) < 0 , x ∈ w 2 若g(x)=w^Tx+w_0 \left \{ \begin{array}{c} g(x)>0 ,x\in w_1\\ g(x)<0 ,x\in w_2 \end{array} \right. g(x)=wTx+w0{g(x)>0,xw1g(x)<0,xw2

感知器法

是一种线性判别法,利用梯度下降法进行计算。
设一个线性判别函数为 g ( y ) = a T y g(y)=a^Ty g(y)=aTy,求解不等式 a T y i > 0 a^Ty_i>0 aTyi>0的解所采用的方法是:定义一个准则函数 J ( a ) J(a) J(a),当 a a a是解向量时, J ( a ) J(a) J(a)为最小。

可以采用梯度下降法来寻找一个 J ( a ) J(a) J(a)。从一个随机选择的权向量 a ( 1 ) a(1) a(1)开始,计算其梯度向量 ∇ J ( a ( 1 ) ) \nabla J(a(1)) J(a(1)),下一个值 a ( 2 ) a(2) a(2)由a(1)自a(1)梯度方向移动一小段距离而得到,梯度下降法的表达式为:
α ( k + 1 ) = α ( k ) + − ρ k ∇ J \alpha(k+1)=\alpha(k)+-\rho_k \nabla J α(k+1)=α(k)+ρkJ
其中 ρ k \rho_k ρk就是我们熟知的学习率—— l e a r n i n g − r a t e learning -rate learningrate
而在使用梯度下降法的时候,可以采用固定学习率或者可变学习率的方法。
对于可变学习率,可以用下面的步长来调整学习率:
ρ k = ∣ α ( k ) T y i ∣ ∥ y i ∥ 2 \rho_k=\frac{|\alpha (k)^Ty_i|}{\begin{Vmatrix}y_i\end{Vmatrix}^2} ρk=yi2α(k)Tyi
经过有限的迭代之后,就可以得到一个收敛的解向量 a ∗ a^* a,但是如果样本不是线性可分的,则用感知器算法就不会得到收敛解。

最小平方误差判别法

前一节的方法只能运用于线性可分的情况下,而线性不可分时,就需要用到最小平方误差法,即MSE。

该方法是将求解线性不等式组的问题转化为求解线性线性方程组的问题。
即把 Y a > 0 Ya>0 Ya>0 Y a < 0 Ya<0 Ya<0的问题转化为 Y a = b Ya=b Ya=b的问题。

定义一个误差矢量 e ⃗ \vec e e ,用 e ⃗ \vec e e 的长度的平方作为准则函数: e = Y a − b e=Ya-b e=Yab
准则函数的形式如下:
J s ( α ) = ∥ Y α − b ∥ 2 = ∑ i = 1 N ( α T y i − b i ) 2 J_s(\alpha)=\begin{Vmatrix}{Y\alpha -b}\end{Vmatrix}^2=\sum _{i=1}^N(\alpha ^Ty_i-b_i)^2 Js(α)=Yαb2=i=1N(αTyibi)2
确定参数,使误差长度的平方最小,即使上式最小。也可以使用梯度下降法来求解该问题。
梯度为: ∇ J s ( α ) = 2 Y T ( Y α − b ) \nabla J_s(\alpha)=2Y^T(Y\alpha-b) Js(α)=2YT(Yαb),当梯度具有极小值时,准则函数有最小值。
使用梯度下降法,先给定一个初始权向量 α ( 0 ) \alpha(0) α(0),再按照梯度下降的方向更新权向量(迭代公式为: α ( k + 1 ) = α ( k ) − ρ k Y T ( Y α − b ) \alpha(k+1)=\alpha(k)-\rho_kY^T(Y\alpha-b) α(k+1)=α(k)ρkYT(Yαb)),直到梯度下降到一个接近于0的值为止。

对于 b b b我们可以取其为 b = [ 1 , 1 , . . . , 1 ] T b=[1,1,...,1]^T b=[1,1,...,1]T,当有无穷个样本 N N N时,MSE的解 g ( y ) = α T y g(y)=\alpha ^Ty g(y)=αTy以最小均方误差逼近贝叶斯判别函数,即我们得到的 a a a可以使 e 2 = ∫ ( a T y − g 0 ( x ) ) 2 p ( x ) d x e^2=\int (a^Ty-g_0(x))^2p(x)dx e2=(aTyg0(x))2p(x)dx极小。

你可能感兴趣的:(机器学习,算法,模式识别)