第四节 判别函数法

判别函数法

  • 两步贝叶斯决策:根据样本估计概率密度函数,再根据概率密度函数求分界面

  • 判别函数法:基于样本直接进行分类器设计

    确定三个基本要素

    1. 分类器(判别函数)的类型
    2. 分类器设计的目标或准则
    3. 利用样本数据设计算法搜索最优的函数参数
  • 贝叶斯分类器的优缺点

    • 优点
      1. 使错误率或风险最小,理论上的最优分类器
      2. 用做评价其它分类器的参照
    • 缺点
      1. 需要已知有关样本总体分布的知识,包括各类的先验概率和类条件概率密度函数
      2. 获取统计分布及其参数这部分是很困难的,实际问题中并不一定具备获取准确统计分布的条件
  • 分类问题特征空间的划分问题

    • 分类器的设计问题:确定分界面的问题
  • 判别函数:表示分界面的函数(线性或非线性)

    分界面的确定:

    1. 函数类型选择:由设计者选择
    2. 最佳参数确定:是依据一定的准则函数,通过一个学习过程来实现优化

4.1 线性判别函数

  • 一般形式

    • d d d维特征空间中:线性判别函数表示为
      g ( x ) = w 1 x 1 + w 2 x 3 + . . . + w d x d + w d + 1 = w T x + w d + 1 g(x)=w_1x_1+w_2x_3+...+w_dx_d+w_{d+1}=w^Tx+w_{d+1} g(x)=w1x1+w2x3+...+wdxd+wd+1=wTx+wd+1
      其中 w w w 为加权向量

    • 增广向量形式 x = ( x 1 , x 2 , . . . , x d , 1 ) T x=(x_1,x_2,...,x_d,1)^T x=(x1,x2,...,xd,1)T w = ( w 1 , w 2 , . . . , w d , w d + 1 ) T w=(w_1,w_2,...,w_d,w_{d+1})^T w=(w1,w2,...,wd,wd+1)T
      g ( x ) = w T x \color{red}g(x)=w^Tx g(x)=wTx

  • 两类问题

    • 分界面 g ( x ) = w T x + w d + 1 = 0 g(x)=w^Tx+w_{d+1}=0 g(x)=wTx+wd+1=0

      相应的分类规则

      1. g ( x ) > 0 g(x)>0 g(x)>0,则决策 x ∈ ω 1 x\in \omega_1 xω1
      2. g ( x ) < 0 g(x)<0 g(x)<0,则决策 x ∈ ω 2 x\in \omega_2 xω2
      3. g ( x ) = 0 g(x)=0 g(x)=0,则可将 x x x 划分到任一类,或拒判

      在高维特征空间中,分界面 g ( x ) = 0 g(x)=0 g(x)=0 是超平面

    • 若两点 X 1 X_1 X1 X 2 X_2 X2 都在分界面上,则
      w T X 1 + w d + 1 = w T X 2 + w d + 1 w T ( X 1 − X 2 ) = 0 w^TX_1+w_{d+1}=w^TX_2+w_{d+1}\\ w^T(X_1-X_2)=0 wTX1+wd+1=wTX2+wd+1wT(X1X2)=0
      w w w 是分界面的法向量,并且指向 g ( x ) > 0 g(x)>0 g(x)>0 的决策域。

  • 线性判别函数分类器的设计:直接利用训练样本集建立线性判别函数式,即寻找最优的权向量 w w w 的过程

    • 特点

      • 无需分析总体的统计分布
      • 容易实现,但错误率和风险可能比贝叶斯分类器大
    • 步骤

      • ⨀ \color{red}\bigodot 1. 采集训练样本,构成训练样本集(样本应具有典型性)
      • ⨀ \color{red}\bigodot 2. 确定一个准则 J = J ( w , x ) \color{red}J=J(w,x) J=J(w,x),能反映分类器性能,且存在权值 w ∗ w^* w 使得分类器性能最优
      • ⨀ \color{red}\bigodot 3. 设计求解 w w w最优算法,得到解向量 w ∗ w^* w
    • 常用准则:感知器准则,最小平方误差准则,最小错分样本数准则,Fisher准则

4.1.1 感知器准则 Perceptron

Rosenblatt在1950s提出,最初用于脑模型、人工神经网络

  • 感知器

    • 特点
      • 具有单层计算单元的神经元模型
      • 多输入单输出的非线性器件
      • 各个权值可以通过样本的训练学习来调整,从而实现线性可分函数
    • 适用问题:二类分类问题
      y = f ( ∑ i = 1 n w i x i ) = s g n ( w T x ) \color{red} y=f\left(\sum\limits_{i=1}^n w_ix_i\right)=sgn\left(w^Tx\right) y=f(i=1nwixi)=sgn(wTx)
    • 分类规则
      { w T x > 0 , x ∈ ω 1 w T x < 0 , x ∈ ω 2 \begin{cases}\begin{aligned} &w^Tx>0, && x\in \omega_1\\ &w^Tx<0, && x\in \omega_2 \end{aligned} \end{cases} {wTx>0,wTx<0,xω1xω2
  • 感知器训练算法:利用训练样本对初始的**权重值逐步修正**直至最终确定

    算法过程

    • ⨀ \color{red}\bigodot 0. 输入训练样本 X = { x 1 , x 2 , . . . , x n } X=\{x_1,x_2,...,x_n \} X={x1,x2,...,xn},及其类别 ω 1 , ω 2 \omega_1,\omega_2 ω1,ω2。输出权重 w w w

    • ⨀ \color{red}\bigodot 1. 初始化 k = 1 k=1 k=1 w ( 1 ) w(1) w(1) 为任意值,权重迭代步长 0 < c ≤ 1 0<c\le 1 0<c1

    • ⨀ \color{red}\bigodot 2. 计算判别函数值:对样本 x k x_{k} xk,计算 g ( x k ) = w T ( k ) x k g(x_{k})=w^T(k)x_{k} g(xk)=wT(k)xk

    • ⨀ \color{red}\bigodot 3. 调整权重:按照规则调整

      • x k ∈ ω 1 x_k\in \omega_1 xkω1 g ( x k ) ≤ 0 g(x_k)\le 0 g(xk)0,则 w ( k + 1 ) = w ( k ) + c ⋅ x k \color{red}w(k+1)=w(k)+c\cdot x_k w(k+1)=w(k)+cxk

      • x k ∈ ω 2 x_k\in \omega_2 xkω2 g ( x k ) > 0 g(x_k)> 0 g(xk)>0,则 w ( k + 1 ) = w ( k ) − c ⋅ x k \color{red}w(k+1)=w(k)-c\cdot x_k w(k+1)=w(k)cxk

      • x k ∈ ω 1 x_k\in \omega_1 xkω1 g ( x k ) > 0 g(x_k)> 0 g(xk)>0,或 x k ∈ ω 2 x_k\in \omega_2 xkω2 g ( x k ) ≤ 0 g(x_k)\le 0 g(xk)0,则 w ( k + 1 ) = w ( k ) \color{red}w(k+1)=w(k) w(k+1)=w(k)

    • ⨀ \color{red}\bigodot 4. 终止条件检验

      • k < n k<n k<n,令 k = k + 1 k = k+1 k=k+1,返回第二步
      • k = n k=n k=n,仍有样本被错分,则令 k = 1 k=1 k=1,返回第二步
      • k = n k=n k=n,且所有样本均已正确分类,则算法结束

    例题 \color{White}\colorbox{Fuchsia}{例题} :已知两类训练样本, ( 0 , 0 ) , ( 0 , 1 ) (0,0),(0,1) (0,0),(0,1) 属于 ω 1 \omega_1 ω1 ( 1 , 0 ) , ( 1 , 1 ) (1,0),(1,1) (1,0),(1,1) 属于 ω 2 \omega_2 ω2,取增量 c = 1 c=1 c=1,试用感知器算法求解 w ∗ w^* w

    • 常规计算:

      # 常规计算
      import numpy as np
      
      x = np.array([[0, 0], [0, 1], [1, 0], [1, 1]])
      w = np.array([1, 1])
      c = 0.5
      
      for id in range(100):
          t = id % 4
          if(t <= 1):
              if(np.vdot(x[t], w) <= 0):
                  w = w + c * x[t]
          else:
              if(np.vdot(x[t], w) > 0):
                  w = w - c * x[t]
      
      print(w)
      
    • 增加分量:规范化增广样本向量

      # 增加分量
      import numpy as np
      
      x = np.array([[0, 0, 1], [0, 1, 1], [-1, 0, -1], [-1, -1, -1]])
      w = np.array([1, 1, 1])
      c = 0.5
      
      for id in range(100):
          t = id % 4
          if(np.vdot(x[t], w) <= 0):
              w = w + c * x[t]
      
      print(w)
      

    最终权重为 w ∗ = ( − 3 , 0 , 1 ) T w^*=(-3,0,1)^T w=(3,0,1)T,则相应的分界面为 − 3 x 1 + 1 = 0 -3x_1+1=0 3x1+1=0

  • 梯度法求解感知器权重

    梯度下降法求函数极小值点

    梯度:函数在该点变化率最大的方向(负梯度为下降最快的方向)

    算法过程

    • ⨀ \color{red}\bigodot 1. 设计一个权重的函数,使得其最小值点在感知器的最优权重值处

    • ⨀ \color{red}\bigodot 2. 对于两类问题的感知器分类器,如果将第二类样本的属性值都 × ( − 1 ) \times (-1) ×(1),则对于两类的样本,最优权重都满足 w T x > 0 w^Tx>0 wTx>0

    • ⨀ \color{red}\bigodot ​ 3. 设计优化目标函数(错分函数——使最小)
      J ( w , x ) = k 0 ⋅ ∑ w T x ≤ 0 ( − w T x ) = k ⋅ ∑ ( ∣ w T x ∣ − w T x ) , k > 0 J(w,x)=k_0\cdot\sum\limits_{w^Tx\le 0}\left(-w^Tx\right)=k\cdot\sum\limits\left(|w^Tx|-w^Tx\right),\quad k>0 J(w,x)=k0wTx0(wTx)=k(wTxwTx),k>0
      ∣ w T x ∣ − w T x = 0 |w^Tx|-w^Tx=0 wTxwTx=0 时,目标函数可达到最小值,可得最优权向量 w ∗ w^* w

    • ⨀ \color{red}\bigodot 4. 令 k = 1 2 k=\dfrac{1}{2} k=21,对 J ( w , x ) J(w,x) J(w,x) 求导得
      ∇ J = ∂ J ∂ w = ∑ w T x k ≤ 0 ( − x k ) = 1 2 [ x ⋅ s g n ( w T x ) − x ] \nabla J=\dfrac{\partial J}{\partial w}= \sum\limits_{w^Tx_k\le 0}\left(-x_k\right)=\dfrac{1}{2}\left[x\cdot sgn(w^Tx)-x \right] J=wJ=wTxk0(xk)=21[xsgn(wTx)x]
      梯度下降迭代公式(沿负梯度方向搜索)为
      w ( k + 1 ) = w ( k ) − c 2 [ x ( k ) s g n ( w ( k ) T ⋅ x ( k ) ) − x ( k ) ] = { w ( k ) , w ( k ) T ⋅ x ( k ) > 0 w ( k ) + c x ( k ) , o t h e r s \begin{aligned} w(k+1)&=w(k)-\color{red}\dfrac{c}{2}\left[x(k)sgn(w(k)^T\cdot x(k))-x(k) \right]\\ &=\begin{cases} \color{red}w(k),&&w(k)^T\cdot x(k)>0\\ \color{red}w(k)+cx(k),&&others \end{cases} \end{aligned} w(k+1)=w(k)2c[x(k)sgn(w(k)Tx(k))x(k)]={w(k),w(k)+cx(k),w(k)Tx(k)>0others
      其中 c c c 为迭代增量。

    • 总结

      1. c c c 为常数时,梯度下降法(固定增量法)的迭代公式和感知器算法的迭代公式是一致的

      2. c c c 较小,则收敛速度较慢;若 c c c 较大,则收敛速度较快,但是当搜索接近极值点时,可能产生过调、引起振荡

      3. 可变增量法 c c c​ 值随着搜索的进行而改变。

4.1.2 最小平方误差准则 LMSE

  • 基本思想
    • 感知器准则:求解不等式组
    • 最小平方误差准则:求解等式方程组
      • 优势:适用于线性不可分样本集,使错分的样本尽量少
  • 引入:对于两类问题的感知器分类器,如果将第二类样本的属性值都乘以 − 1 -1 1,则对于两类的样本,最优权重都满足 w T x > 0 w^Tx>0 wTx>0(增加分量)。如果任意给定一个向量 b = [ b 1 , b 2 , . . . , b n ] T > 0 b=[b_1,b_2,...,b_n]^T >0 b=[b1,b2,...,bn]T>0,那么求解最优权重的问题可以转化成求解 w w w,使之满足
    w T x i = b i > 0 , i = 1 , 2 , . . . , n \color{red}w^Tx_i=b_i>0,\qquad i=1,2,...,n wTxi=bi>0,i=1,2,...,n

  • 最小平方误差准则:求解最优权重的问题等价于求解 w w w​,使之满足 X ⋅ w ⃗ = b ⃗ \color{red}X\cdot \vec{w} = \vec{b} Xw =b ​,其中
    b ⃗ = ( b 1 , b 2 , . . . , b n ) > 0 X = ( x 1 T x 2 T ⋮ x n T ) = ( x 11 x 12 ⋯ x 1 d 1 ⋮ ⋮ x n 1 1 x n 1 2 ⋯ x n 1 d 1 x ( n 1 + 1 ) 1 x ( n 1 + 1 ) 2 ⋯ x ( n 1 + 1 ) d − 1 ⋮ ⋮ x n 2 1 x n 2 2 ⋯ x n 2 d − 1 ) \vec{b}=(b_1,b_2,...,b_n)>0\\ X=\begin{pmatrix}x_1^T\\x_2^T\\\vdots\\x_n^T \end{pmatrix}=\begin{pmatrix}x_{11}&x_{12}&\cdots&x_{1d}&1\\\vdots&&&&\vdots\\x_{n_11}&x_{n_12}&\cdots&x_{n_1d}&1\\x_{(n_1+1)1}&x_{(n_1+1)2}&\cdots&x_{(n_1+1)d}&-1\\\vdots&&&&\vdots\\x_{n_21}&x_{n_22}&\cdots &x_{n_2d}&-1 \end{pmatrix} b =(b1,b2,...,bn)>0X=x1Tx2TxnT=x11xn11x(n1+1)1xn21x12xn12x(n1+1)2xn22x1dxn1dx(n1+1)dxn2d1111

    • n = d + 1 n=d+1 n=d+1 时可直接求解。当 n = n 1 + n 2 > d + 1 n=n_1+n_2>d+1 n=n1+n2>d+1时,上述方程没有精确解,属于矛盾方程组,需要使用伪逆求解。

    • 误差向量 e ⃗ = X ⋅ w ⃗ − b ⃗ \vec{e}=X\cdot \vec{w}-\vec{b} e =Xw b

    • 与感知器的区别

    • LMSE:找到合适的权重使误差最小,故用误差向量的平方作为准则函数。
      J s ( w , x , b ) = ∣ ∣ e ⃗ ∣ ∣ 2 = ∣ ∣ X ⋅ w ⃗ − b ⃗ ∣ ∣ 2 = ∑ i = 1 n ( w T x i − b i ) 2 \color{red}J_s(w,x,b)=||\vec{e}||^2=||X\cdot \vec{w}-\vec{b}||^2=\sum\limits_{i=1}^n(w^Tx_i-b_i)^2 Js(w,x,b)=e 2=Xw b 2=i=1n(wTxibi)2

  • 计算方法:计算 w ∗ = arg ⁡ min ⁡ J s ( w , x , b ) w^*=\arg\min J_s(w,x,b) w=argminJs(w,x,b)

    1. 求伪逆:在极值处对 w w w 的梯度为零,即最小极值的条件为
      ∂ J s ∂ w = 2 X T ( X w − b ) = 0 X T X w = X T b w ∗ = ( X T X ) − 1 X T b \dfrac{\partial J_s}{\partial w}=2X^T(Xw-b)=0\\ X^TXw=X^Tb \\ w^*=(X^TX)^{-1}X^Tb wJs=2XT(Xwb)=0XTXw=XTbw=(XTX)1XTb
      其中 X + = ( X T X ) − 1 X T \color{red}X^{+}=(X^TX)^{-1}X^T X+=(XTX)1XT 称为 X X X 的伪逆。则权值 w ∗ = X + b w^*=X^+b w=X+b

    2. 梯度下降法(迭代求解):使用固定增量的梯度下降法建立 b ⃗ \vec{b} b 的迭代公式

      • 初始化 w , b , k = 0 w,b,k=0 w,b,k=0

        b ⃗ \vec{b} b 可任意给定,不过一般设 b ⃗ = { 1 , 1 , . . . , 1 } \vec{b}=\{1,1,...,1\} b ={1,1,...,1}

      • 迭代
        b ( k + 1 ) = b ( k ) + Δ b ( k ) Δ b ( k ) = s t e p ⋅ ( ∂ J s ∂ w ) k = s t e p ⋅ [ x w ( k ) − b ( k ) + ∣ x w ( k ) − b ( k ) ∣ ] = s t e p ⋅ ( e ( k ) − ∣ e ( k ) ∣ ) w ( k ) = ( X T X ) − 1 X T b ( k ) = X + ⋅ b ( k ) b(k+1)=b(k)+\Delta b(k)\\ \Delta b(k)=step\cdot \left(\dfrac{\partial J_s}{\partial w} \right)_k=step\cdot [xw(k)-b(k)+|xw(k)-b(k)|]=\color{red}step\cdot (e(k)-|e(k)|)\\ w(k)=(X^TX)^{-1}X^Tb(k)=X^+\cdot b(k) b(k+1)=b(k)+Δb(k)Δb(k)=step(wJs)k=step[xw(k)b(k)+xw(k)b(k)]=step(e(k)e(k))w(k)=(XTX)1XTb(k)=X+b(k)

  • 算法步骤

    • ⨀ \color{red}\bigodot 1. 将训练样本符号规范化,得 X X X ,计算其伪逆 X + X^+ X+
    • ⨀ \color{red}\bigodot 2. 初始化 b ( 1 ) > 0 , k = 1 , 0 < c ≤ 1 b(1)>0,k=1,0<c\le 1 b(1)>0,k=1,0<c1
    • ⨀ \color{red}\bigodot 3. 计算权重 w ( k ) = X + b ( k ) w(k)=X^+b(k) w(k)=X+b(k),及误差 e ( k ) = x w ( k ) − b ( k ) e(k)=xw(k)-b(k) e(k)=xw(k)b(k)
    • ⨀ \color{red}\bigodot 4. 若 e ( k ) e(k) e(k) 的所有分量都为负数,则算法无解结束。若 e ( k ) = 0 e(k)=0 e(k)=0,则算法有解结束, w ( k ) w(k) w(k)。否则算法继续。
    • ⨀ \color{red}\bigodot 5. 迭代: b ( k + 1 ) = b ( k ) + c ( e ( k ) + ∣ e ( k ) ∣ ) b(k+1)=b(k)+c(e(k)+|e(k)|) b(k+1)=b(k)+c(e(k)+e(k))
    • ⨀ \color{red}\bigodot 6. 令 k = k + 1 k=k+1 k=k+1,返回步骤三。
  • 特点

    • 求得的权重值 w w w 依赖于 b b b s t e p step step 的选取。不同的 b b b 初值,将得到不同的权重
    • 由于可判断算法能否终止,因此提供了判断二类问题是否线性可分的方法
    • b = ( 1 , 1 , … , 1 ) T b=(1,1,…,1)^T b=(1,1,,1)T,在样本数无穷大时,最小均方误差的解逼近贝叶斯判断的结果。

4.1.3 最小错分样本数准则

  • 线性可分性:对于二类问题,若将第二类样本的属性值都乘以 − 1 -1 1(符号规范化),则对于两类的样本,最优权重都满足 w T x > 0 w^Tx>0 wTx>0。于是有
    { 线 性 可 分 存 在 w T x > 0 , ∀ x 线 性 不 可 分 不 存 在 w T x > 0 , ∀ x \begin{aligned}\begin{cases} &线性可分&&存在w^Tx>0,\forall x\\ &线性不可分&&不存在w^Tx>0,\forall x \end{cases}\end{aligned} {线线wTx>0,xwTx>0,x

    • 线性不可分问题:无论使用什么样的分类超平面,都会有样本被错分
  • 折中方案

    • 寻找合适的分界面使尽量少的样本被错分

    • 对于符号规范化后的增广向量表示的样本而言,就是寻找合适的 w w w 使得尽量多的样本满足 w T x > 0 w^Tx>0 wTx>0

    • 为了提高结果的鲁棒性,引入非负的松弛变量 b > 0 b>0 b>0,要求最优解 w ∗ w^* w 满足:使尽量多的样本满足
      ( w ∗ ) T x − b > 0 \color{red}(w^*)^Tx-b>0 (w)Txb>0

  • 最小错分样本数准则函数
    w ∗ = arg ⁡ min ⁡ w J ( w , x ) = ∣ ∣ ( w T x − b ) − ∣ w T x − b ∣ ∣ ∣ 2 其 中    b = [ 1    1    . . .    1 ] T \color{red}w^*=\arg\min_w J(w,x)=\left|\left|(w^Tx-b)-|w^Tx-b| \right|\right|^2\\ 其中\; b=[1\;1\;...\;1]^T w=argwminJ(w,x)=(wTxb)wTxb2b=[11...1]T

    • 优化算法:共轭梯度法

4.1.4 Fisher线性判别准则

。。。

4.2 非线性判别函数

对于线性不可分的样本,线性判别函数的分类效果往往不够满意

非线性判别函数此时可以达到更好的分类效果,基础的主要有两类:分段线性判别函数和二次线性判别函数

4.2.1 分段线性判别函数 Piecewise

是一类特殊的非线性判别方法,其决策面(分界面)由若干超平面段组成。比一般的超曲面简单,又可以逼近各种形状的超曲面

  • 两类问题的基本做法:把各类划分成适当的子类,在多个子类间构建线性判别函数,再将其分段合并。
    1. 将每一类的样本分成若干子类(聚类分析)
    2. 针对每一个子类设计一个线性判别函数
    3. 将不同子类的线性判别函数组合起来得到分段线性的决策面,即分段线性判别函数
4.2.1.1 分段线性距离分类器

引入:最小错误率贝叶斯决策是直观上的最小距离分类器。即以两类的均值中心点,新样本靠近哪类中心点就决策为哪一类。

适用于:各子类在各维分布基本对称的情形

  • 单峰数据:保证各维上分布基本对称且各类先验概率基本相同。

    • 两类问题下:与两类均值连线垂直的平分面(超平面)作为分界面
  • 多峰数据:将样本每类划分成若干子类,使每个子类是单峰分布且尽可能在各维对称。

    • 分段线性距离判别函数:以每部分的均值作为代表点构造的分段线性判别函数。
    • 当考虑待分类样本时,分到距离其最近的子类所属的大类中。于是可得到多段超平面组成的分类面。
    • 两类问题下:由两类不同峰两两决定的分界面组合起来构成分段线性分界面
  • 数学语言表示:将每个类 w i w_i wi 划分为子类 w i j w_{i_j} wij,此子类的均值为 m i j m_{i_j} mij。考虑样本 x x x

    • 判别函数:类 w i w_i wi 中离该样本最近的子类均值到样本的距离
      g i ( x ) = min ⁡ i j ∣ ∣ x − m i j ∣ ∣ g_i(x)=\min_{i_j}||x-m_{i_j}|| gi(x)=ijminxmij
    • 决策规则
      若 g k ( x ) = min ⁡ i = 1 , . . . , c g i ( x ) , 则 决 策 x ∈ w k 若g_k(x)=\min_{i=1,...,c} g_i(x),则决策x\in w_k gk(x)=i=1,...,cmingi(x),xwk
4.2.1.2 一般的分段线性判别函数

分段线性距离分类器分段线性判别函数的特殊情况。

  • 确定划分后的子类,便可以视为多类问题讨论
  • 子类的划分:三种方法
    1. 根据专业知识人工确定
    2. 假设子类数目,利用错误修正法
    3. 未知子类数目,分类树思想

4.2.2 二次判别函数 Quadratic

  • 一般形式
    g ( x ) = x T W x + w T x + w 0 其 中    W : d × d 实 对 称 矩 阵 w : d 维 列 向 量 d : 特 征 空 间 维 数 \begin{aligned} \color{red}g(x)&\color{red}=x^TWx+w^Tx+w_0\\ 其中\;W&:d\times d实对称矩阵\\ w&:d维列向量\\ d&:特征空间维数 \end{aligned} g(x)Wwd=xTWx+wTx+w0:d×d:d:
    • 参数个数 ( 1 + 2 + . . . + d ) + d + 1 = 1 2 d ( d + 3 ) + 1 (1+2+...+d)+d+1=\dfrac{1}{2}d(d+3)+1 (1+2+...+d)+d+1=21d(d+3)+1,直接从数据学习求解过于复杂
  • 常见方法参数化

    例如:假设每一类数据都是正态分布

4.3 多类问题

4.3.1 多个两类分类器的组合

  • 基本思路:把多类问题分解成多个两类问题

  • 常见方法

    • 一对多 one-over-all:每个分类器都将某一类与剩余所有类区分。

      利用 k − 1 k-1 k1 个两类分类器可实现 k k k 个类的分类

      • 问题
        1. 训练样本不均衡,使分类面有偏。
        2. 一般 k − 1 k-1 k1 个分类器将特征空间划分成多于 k k k 个区域,在多出来的区域内的分类会出现歧义。
    • 逐对分类 pairwise:每个分类器都将某两类区分

      利用 k ( k − 1 ) 2 \dfrac{k(k-1)}{2} 2k(k1) 个两类分类器可实现 k k k 个类的分类

  • 决策树(多级分类器):将复杂的多类问题转化成多级多个两类问题。并非使用某一个决策规则把多个类别一次分开,而是采用分级形式使问题逐步得到解决。

    • 训练过程:在非叶结点仍然可能包含多个类别的样本,这些样本被再分成两个子集,如此下去,直至分成的每一部分只包含同一类别的样本,或某一类样本占优势为止(即抵达叶节点)
    • 树的建立:注意
      1. 选择一个合适的树结构,即合理安排树的节点和分支
      2. 确定在每个非终止节点上要使用的特征(分裂变量)
      3. 在每个非终止节点上选择合适的决策规则(如线性判别函数)

4.3.2 多类线性判别函数

  • 多类线性判别函数
    • 判别函数:对 k k k 个类设计 k k k 个判别函数
      g i ( x ) = w i T x + w i 0 , i = 1 , 2 , . . . , k g_i(x)=w_i^Tx+w_{i0},\quad i=1,2,...,k gi(x)=wiTx+wi0,i=1,2,...,k
    • 决策规则:哪一类的判别函数最大则决策为哪一类
      若 g i ( x ) > g j ( x ) , ∀ j ≠ i , 则 x ∈ w i 若g_i(x)>g_j(x),\forall j\ne i,\quad 则 x\in w_i gi(x)>gj(x),j=i,xwi
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值