线性判别函数

xiaoxiao2025-11-20  7

回顾模式分类的途径

思路一:估计条件概率密度函数,然后利用贝叶斯公式求出后验概率进行决策。而概率密度函数的估计有参数估计和分参数估计两种方式。其中参数估计有最大似然估计和贝叶斯估计,非参数估计有Parzen窗估计和KNN估计。思路二:直接用KNN算出后验概率即可进行决策思路三:直接找到可用于分类的判别函数。

这篇文章,我们主要讨论思路三,直接通过数据确定线性判别函数的参数,进而分类决策。我们的基本想法是:

给定一个线性判别函数,并且函数的参数形式已知。

采用训练样本的方法来确定判别函数的参数。

通过我们的判别函数对新样本进行决策

从最简单的二分类问题入手

对于一个两类问题,已知样本空间中的n个d维数据及其对应的类别。类与类之间是线性可分的。现假设某一个别类的线性判别函数的基本形式为 g ( x ) = w T x + w 0 g(x)=w^Tx+w_0 g(x)=wTx+w0 然后利用样本数据对参数 w T w^T wT和偏置 ω 0 \omega_0 ω0进行训练。

训练的标准是 { g ( x i ) &gt; 0 ,    x i ∈ ω 1 g ( x i ) &lt; 0 ,    x i ∈ ω 2 \begin{cases} g(x_i)&gt;0 , \ \ x_i \in \omega_1 \\ g(x_i)&lt;0, \ \ x_i \in \omega_2 \end{cases} {g(xi)>0,  xiω1g(xi)<0,  xiω2 直观地理解是我们给x的每一个分量乘以一个权重系数,求和之后与阈值 ω 0 \omega_0 ω0进行比较,进行二值分类。

几何解释

可以从几何的角度给出更形象的解释,如图所示 平面g(x)=0为两类别的决策面H,将样本空间V分割成两部分,即第一类的决策域R_1和第二类的决策域R_2

显然,w和平面H正交。证明:若 x 1 , x 2 ∈ H x_1,x_2 \in H x1,x2H,则 w T x 1 + ω 0 = w T x 2 + ω 0 w^T x_1+\omega_0=w^Tx_2+\omega_0 wTx1+ω0=wTx2+ω0所以 w T ( x 1 − x 2 ) = 0 w^T(x_1-x_2)=0 wT(x1x2)=0,即w与H面上任一个向量正交,因此,w与平面H正交

由上图可知 x = x p + r w ∣ ∣ w ∣ ∣ x=x_p+r\frac{w}{||w||} x=xp+rww 其中,x_p是x在H上的投影向量,r是x到H的代数距离,其正负对应两个不同的决策域。

因为x_p在H上,因此 g ( x p ) = w T x p + ω 0 = 0 g(x_p)=w^Tx_p+\omega_0=0 g(xp)=wTxp+ω0=0 由以上两个式子可得 g ( x ) = w T x + ω 0 = r ∣ ∣ w ∣ ∣ g(x)=w^Tx+\omega_0=r||w|| g(x)=wTx+ω0=rw 显然,g(x)可以表示x到H的某种距离。而且原点到平面的距离为 r 0 = g ( 0 ) ∣ ∣ w ∣ ∣ = ω 0 ∣ ∣ w ∣ ∣ r_0=\frac{g(0)}{||w||}=\frac{\omega_0}{||w||} r0=wg(0)=wω0

样本的齐次化处理

对于判别函数 g ( x ) = w T x + w 0 g(x)=w^Tx+w_0 g(x)=wTx+w0 通过对样本数据x的处理,可以使得上述判别函数等价于齐次形式。如果把 ω 0 \omega_0 ω0当做一个样本数据,且其加权系数为1,即 g ( x + ) = w + T x + g(x_+)=w_+^Tx_+ g(x+)=w+Tx+ x + = [ ω 0 x ] x_+= \begin{bmatrix} \omega_0 \\ x \end {bmatrix} x+=[ω0x] w + = [ 1 w T ] , w_+= \begin{bmatrix} 1 \\ w^T \end {bmatrix}, w+=[1wT], 显然,判别函数变成了齐次的,方便计算

样本的规范化处理

对于两类问题 g ( x i ) &gt; 0     w h e n x i ∈ ω 1 g ( x i ) &lt; 0     w h e n x i ∈ ω 2 g(x_i)&gt;0 \ \ \ when x_i \in \omega_1\\ g(x_i)&lt;0\ \ \ when x_i \in \omega_2 g(xi)>0   whenxiω1g(xi)<0   whenxiω2 如果将属于第二类的样本取相反数,与第一类样本一起构成新的样本y,则 g ( y ) = a T y &gt; 0 g(y)=a^Ty&gt;0 g(y)=aTy>0 这个过程,成为齐次样本的规范化处理。

从上述的齐次规范化样本的判别函数可以直观地看出

每一个样本y_i都是解a的一个约束,即 a T y i &gt; 0 a^Ty_i&gt;0 aTyi>0;任何一个样本点y_i均可以确定一个超平面H_i: a T y i = 0 a^Ty_i=0 aTyi=0,其法向量为 y i y_i yi。如果解向量 a ∗ a^* a存在,即存在,即 ( a ∗ ) T y i &gt; 0 (a^*)^Ty_i&gt;0 (a)Tyi>0,显然,两者同向。

因此,根据两个的同向关系可以确定解空间。如下图 v 从图中可以直观地看出,解向量只要在解区内就能满足只要在解区内就能满足 ( a ∗ ) T y &gt; 0 (a^*)^Ty&gt;0 (a)Ty>0,但是这样的,但是这样的a^*有无穷多个,因此需要引入一个标准,来衡量有无穷多个,因此需要引入一个标准,来衡量 a ∗ a^* a的好坏。

很自然地,我们认为令分类的错诶率最小的 a ∗ a^* a为做好。即 L ( a ) = ∑ y ∈ e r r o r ( − a T y ) a = a r g m i n a L ( a ) L(a)=\sum\limits_{y\in error}(-a^Ty) \\ a =arg min_a L(a) L(a)=yerror(aTy)a=argminaL(a) 下面就可以用最优化的理论对a进行求解了。

梯度下降算法

这里我们提供一种梯度下降算法

先对 L ( a ) L(a) L(a)求偏导,得 ∂ L ( a ) ∂ a = − ∑ y ∈ e r r o r y \frac{\partial L(a)}{\partial a}=-\sum\limits_{y \in error }y aL(a)=yerrory 因此,a的更新原则为 a k + 1 = a k + η k ∑ y ∈ e r r o r y a_{k+1}=a_k+\eta_k\sum\limits_{y \in error}y ak+1=ak+ηkyerrory a k + 1 a_{k+1} ak+1是当前迭代的结果, a k a_k ak是前一次迭代的结果, η k \eta_k ηk是步长因子

一种特殊情况

​ 在应用的过程中,可能会遇到这样的问题:当a的初始值为0向量时,改变步长 η k \eta_k ηk(固定值)对收敛的速度没有影响。

​ 原因:由齐次规范化增广样本的更新规则 a k + 1 = a k + η k ∑ y ∈ e r r o r y a_{k+1}=a_k+\eta_k\sum\limits_{y \in error}y ak+1=ak+ηkyerrory ​ 取两个不同的 η 1 , η 2 \eta_1,\eta_2 η1,η2进行比较 a 1 = 0 ;   a 1 ′ = 0 a 2 = η 1 ∑ y η 1 ∈ e r r o r y ;   a 2 ′ = η 2 ∑ y η 2 ∈ e r r o r y . . . a_1=0;\ a&#x27;_1=0\\ a_2=\eta_1\sum\limits_{y_{\eta_1}\in error}y;\ a&#x27;_2=\eta_2\sum\limits_{y_{\eta_2}\in error}y\\ ... a1=0; a1=0a2=η1yη1errory; a2=η2yη2errory... ​ 显然,两个不同 η \eta η的错分样本空间始终相等,两者的权向量始终是同向的,而这一点成立的前提是: a 1 = a 1 ′ = 0 a_1=a&#x27;_1=0 a1=a1=0

MSE多类扩展

针对C类问题,如果如果存在线性不可分的样本,可以考虑MES方法进行分类 y i = W i T x + b i y_i=W_i^Tx+b_i\\ yi=WiTx+bi y i y_i yi表示数据x在第i类得到的值 y = W T x + b y=W^Tx+b y=WTx+b 则,y是一个包含C个值的列向量。

决策的准则是 r e s u l t = a r g m a x i ( y i ) result=argmax _i(y_i) result=argmaxi(yi) 构造 y i = [ 0 , . . . , 0 , 1 , 0 , . . . , 0 ] T y_i=[0,...,0,1,0,...,0]^T yi=[0,...,0,1,0,...,0]T即,第i个元素为1,其余元素为0。比如: y i = [ 1 , 0 , . . . , 0 ] y_i=[1,0,...,0] yi=[1,0,...,0]

目标函数为均方误差 L ( a ) = ∑ i = 1 n ∣ ∣ ( W T x + b − y i ) ∣ ∣ 2 2 L(a)=\sum\limits_{i=1}^n||(W^Tx+b-y_i)||_2^2 L(a)=i=1n(WTx+byi)22 因为y是一个包含C数的列向量,构造的y_i也是一个包含C个数的列向量,因此 W T x + b − y i W^Tx+b-y_i WTx+byi是一个列向量,其各个元素的平方和就是该向量二范数的平方。 l e t { W ^ = [ W , b T ] T ∈ R ( d + 1 ) × c x ^ = [ x , 1 ] T ∈ R d + 1 X ^ = ( x 1 ^ , x 2 ^ , . . . , x n ^ ) ∈ R ( d + 1 ) × n Y = [ y 1 , y 2 , . . . , y n ] , n = n u m b e r   o f   s a m p l e s let \begin{cases} \hat{W}=[W,b^T]^T \in R^{(d+1)\times c} \\ \hat{x}=[x,1]^T\in R^{d+1}\\ \hat{X}=(\hat{x_1},\hat{x_2},...,\hat{x_n})\in R^{(d+1)\times n} \\ Y=[y_1,y_2,...,y_n],n =number \ of \ samples \end{cases} letW^=[W,bT]TR(d+1)×cx^=[x,1]TRd+1X^=(x1^,x2^,...,xn^)R(d+1)×nY=[y1,y2,...,yn],n=number of samples 可得 L ( a ) = ∣ ∣ W ^ T X ^ − Y ∣ ∣ F 2 L(a)=||\hat{W}^T\hat{X}-Y||_F^2 L(a)=W^TX^YF2 因为 ∣ ∣ A ∣ ∣ F = ( t r ( A H A ) ) 1 2 ||A||_F=(tr(A^HA))^{\frac{1}{2}} AF=(tr(AHA))21 结合矩阵的求导公式可得 ∂ L ( a ) ∂ W ^ = ( X ^ X ^ T ) − 1 X ^ Y T \frac{\partial L(a)}{\partial \hat{W}}=(\hat{X}\hat{X}^T)^{-1}\hat{X}Y^T W^L(a)=(X^X^T)1X^YT 由于L(a)是凸函数,因此其一阶零点一定是其最优解,即使误差最小的权重系数。

转载请注明原文地址: https://www.6miu.com/read-5039955.html

最新回复(0)