模式识别课程总结提要

文章目录

1 贝叶斯决策方法

1.1 贝叶斯决策

假设:

  1. 分类数已知
  2. 各类别类条件概率分布已知

先验概率: P ( ω 1 ) ,   P ( ω 2 ) P\left(\omega_1 \right),~P\left(\omega_2 \right) P(ω1), P(ω2)

后验概率:

P ( ω 1 ∣ x ) = P ( ω 1 , x ) P ( x ) = P ( x ∣ ω 1 ) P ( ω 1 ) ∑ i P ( x ∣ ω i ) P ( ω i ) P\left(\omega_1|x \right)=\frac{P\left(\omega_1,x \right)}{P(x)}=\frac{P\left(x|\omega_1 \right)P\left(\omega_1 \right)}{\sum_iP\left(x|\omega_i \right)P\left(\omega_i \right)} P(ω1x)=P(x)P(ω1,x)=iP(xωi)P(ωi)P(xω1)P(ω1)

贝叶斯决策:后验概率大的类

P ( ω 1 ∣ x ) > P ( ω 2 ∣ x ) ⇒ x ∈ ω 1 P\left(\omega_1|x \right)>P\left(\omega_2|x \right)\Rightarrow x\in \omega_1 P(ω1x)>P(ω2x)xω1

等价形式:

P ( ω i ∣ x ) = max ⁡ j P ( ω j ∣ x ) ⇒ x ∈ ω i P\left(\omega_i|x \right)=\max_jP\left(\omega_j|x \right)\Rightarrow x\in \omega_i P(ωix)=jmaxP(ωjx)xωi

1.2 最小错误率贝叶斯决策

最小错误率决策:

P ( ω i ∣ x ) = max ⁡ j P ( ω j ∣ x ) ⇒ x ∈ ω i P\left(\omega_i|x \right)=\max_jP\left(\omega_j|x \right)\Rightarrow x\in \omega_i P(ωix)=jmaxP(ωjx)xωi

等价形式:

P ( x ∣ ω i ) P ( ω i ) = max ⁡ j P ( x ∣ ω j ) P ( ω j ) ⇒ x ∈ ω i P\left(x|\omega_i \right)P\left(\omega_i \right)=\max_jP\left(x|\omega_j \right)P\left(\omega_j \right)\Rightarrow x\in \omega_i P(xωi)P(ωi)=jmaxP(xωj)P(ωj)xωi

似然比:

l ( x ) = P ( x ∣ ω 1 ) P ( x ∣ ω 2 ) > P ( ω 2 ) P ( ω 1 ) ⇒ x ∈ ω 1 l(x)=\frac{P\left(x|\omega_1 \right)}{P\left(x|\omega_2 \right)} >\frac{P\left(\omega_2 \right)}{P\left(\omega_1 \right)} \Rightarrow x\in \omega_1 l(x)=P(xω2)P(xω1)>P(ω1)P(ω2)xω1

负对数似然:

h ( x ) = − ln ⁡ [ l ( x ) ] < ln ⁡ P ( ω 1 ) P ( ω 2 ) ⇒ x ∈ ω 1 h(x)=-\ln \left[l(x)\right] <\ln \frac{P\left(\omega_1 \right)}{P\left(\omega_2 \right)} \Rightarrow x\in \omega_1 h(x)=ln[l(x)]<lnP(ω2)P(ω1)xω1

错误率:

P ( e ) ≜ ∫ − ∞ ∞ p ( e , x ) d x = ∫ − ∞ ∞ P ( e ∣ x ) p ( x ) d x P\left(e \right)\triangleq \int_{-\infty}^{\infty}{p\left(e,x \right)\mathrm{d}x}=\int_{-\infty}^{\infty}{P\left(e|x \right)p(x)\mathrm{d}x} P(e)p(e,x)dx=P(ex)p(x)dx

其中错误后验概率为

P ( e ∣ x ) = min ⁡ { P ( ω 1 ∣ x ) , P ( ω 2 ∣ x ) } P\left(e|x \right)=\min \left\{ P\left(\omega_1|x \right), P\left(\omega_2|x \right)\right\} P(ex)=min{P(ω1x),P(ω2x)}

最小错误率导出决策:

min ⁡ P ( e ) ⇒ max ⁡ P ( ω i ∣ x ) \min P\left(e \right)\Rightarrow \max P\left(\omega_i|x \right) minP(e)maxP(ωix)

两类错误率:使用先验概率与类条件概率密度计算

P ( e ) = P ( x ∈ R 1 , ω 2 ) + P ( x ∈ R 2 , ω 1 ) = P ( x ∈ R 1 ∣ ω 2 ) P ( ω 2 ) + P ( x ∈ R 2 ∣ ω 1 ) P ( ω 1 ) = P ( ω 2 ) ∫ R 1 p ( x ∣ ω 2 ) d x + P ( ω 1 ) ∫ R 2 p ( x ∣ ω 1 ) d x = P ( ω 2 ) P 2 ( e ) + P ( ω 1 ) P 1 ( e ) \begin{aligned} P\left(e \right)&=P\left(x\in \mathcal{R}_1,\omega_2 \right)+P\left(x\in \mathcal{R}_2,\omega_1 \right)\\ &=P\left(x\in \mathcal{R}_1|\omega_2 \right)P\left(\omega_2 \right)+P\left(x\in \mathcal{R}_2|\omega_1 \right)P\left(\omega_1 \right)\\ &=P\left(\omega_2 \right)\int_{\mathcal{R}_1}{p\left(x|\omega_2 \right)}\mathrm{d}x+P\left(\omega_1 \right)\int_{\mathcal{R}_2}{p\left(x|\omega_1 \right)}\mathrm{d}x\\ &=P\left(\omega_2 \right)P_2\left(e \right)+P\left(\omega_1 \right)P_1\left(e \right) \end{aligned} P(e)=P(xR1,ω2)+P(xR2,ω1)=P(xR1ω2)P(ω2)+P(xR2ω1)P(ω1)=P(ω2)R1p(xω2)dx+P(ω1)R2p(xω1)dx=P(ω2)P2(e)+P(ω1)P1(e)

错误率计算图示

多类错误率:通过平均正确率来计算平均错误率

P ( c ) = ∑ j = 1 c P ( x ∈ R j ∣ ω j ) P ( ω j ) = ∑ j = 1 c ∫ R j p ( x ∣ ω j ) P ( ω j ) d x \begin{aligned} P\left(c \right) &=\sum_{j=1}^c{P\left(x\in \mathcal{R}_j|\omega_j \right)P\left(\omega_j \right)}\\ &=\sum_{j=1}^c{\int_{\mathcal{R}_j}{p\left(x|\omega_j \right)P\left(\omega_j \right)}}\mathrm{d}x \end{aligned} P(c)=j=1cP(xRjωj)P(ωj)=j=1cRjp(xωj)P(ωj)dx

P ( e ) = ∑ i = 1 c ∑ j ≠ i P ( x ∈ R j ∣ ω i ) P ( ω i ) = 1 − P ( c ) \begin{aligned} P\left(e \right) &=\sum_{i=1}^c{\sum_{j\ne i}{P\left(x\in \mathcal{R}_j|\omega_i \right)P\left(\omega_i \right)}}\\ &=1-P\left(c \right) \end{aligned} P(e)=i=1cj=iP(xRjωi)P(ωi)=1P(c)

1.3 最小风险贝叶斯决策

基本思想:不同的决策错误所带来的损失可能不同

决策论表述:样本 x ∈ R d x\in\mathbb{R}^d xRd 看做随机向量

状态空间: c c c 个可能的状态 (类别)

Ω = { ω 1 , ω 2 , … , ω c } \Omega =\left\{ \omega_1,\omega_2,\dots ,\omega_c \right\} Ω={ω1,ω2,,ωc}

决策空间:判定样本为某类或拒绝等

A = { α 1 , α 2 , … , α k } \mathcal{A} =\left\{ \alpha_1,\alpha_2,\dots ,\alpha_k \right\} A={α1,α2,,αk}

一般 k ⩾ c k\geqslant c kc

α i = { x ∈ ω i } , i = 1 , … , c \alpha_i=\left\{ x\in \omega_i \right\} , i=1,\dots ,c αi={xωi},i=1,,c

α c + 1 = r e j e c t \alpha_{c+1}=\mathrm{reject} αc+1=reject

损失函数:实际为 ω j \omega_j ωj 类判定为 α i \alpha_i αi 的损失 λ ( α i , ω j ) \lambda \left(\alpha_i,\omega_j \right) λ(αi,ωj) →决策表

期望损失:

R ( α i ∣ x ) = E [ λ ( α i , ω j ) ∣ x ] = ∑ j λ ( α i , ω j ) P ( ω j ∣ x ) \begin{aligned} R\left(\alpha_i|x \right) &=\mathbb{E} \left[\lambda \left(\alpha_i,\omega_j \right)|x \right]\\ &=\sum_j\lambda \left(\alpha_i,\omega_j \right)P\left(\omega_j|x \right) \end{aligned} R(αix)=E[λ(αi,ωj)x]=jλ(αi,ωj)P(ωjx)

期望风险:

R ( α ) = ∫ − ∞ ∞ R ( α ∣ x ) p ( x ) d x R\left(\alpha \right)=\int_{-\infty}^{\infty}{R\left(\alpha |x \right)p(x)}\mathrm{d}x R(α)=R(αx)p(x)dx

最小风险决策:

min ⁡ R ( α ) ⇒ α = a r g m i n j R ( α j ∣ x ) \min R\left(\alpha \right)\Rightarrow \alpha =\mathrm{argmin}_jR\left(\alpha_j|x \right) minR(α)α=argminjR(αjx)

与最小错误率决策等价:0-1 决策表

λ ( α i , ω j ) = 1 − δ i j \lambda \left(\alpha_i,\omega_j \right)=1-\delta_{ij} λ(αi,ωj)=1δij

R ( α i ∣ x ) = ∑ j λ ( α i , ω j ) P ( ω j ∣ x ) = ∑ j ≠ i P ( ω j ∣ x ) = 1 − P ( ω i ∣ x ) \begin{aligned} R\left(\alpha_i|x \right) &=\sum_j\lambda \left(\alpha_i,\omega_j \right)P\left(\omega_j|x \right)\\ &=\sum_{j\ne i}P\left(\omega_j|x \right)\\ &=1-P\left(\omega_i|x \right) \end{aligned} R(αix)=jλ(αi,ωj)P(ωjx)=j=iP(ωjx)=1P(ωix)

因此

min ⁡ R ( α ) ⇒ min ⁡ j R ( α j ∣ x ) ⇒ α = a r g m a x j P ( ω j ∣ x ) \begin{aligned} \min R\left(\alpha \right) &\Rightarrow \min_jR\left(\alpha_j|x \right)\\ &\Rightarrow \alpha =\mathrm{argmax}_jP\left(\omega_j|x \right) \end{aligned} minR(α)jminR(αjx)α=argmaxjP(ωjx)

似然比:

l ( x ) = P ( x ∣ ω 1 ) P ( x ∣ ω 2 ) > P ( ω 2 ) P ( ω 1 ) λ 12 − λ 22 λ 21 − λ 11 ⇒ x ∈ ω 1 l(x)=\frac{P\left(x|\omega_1 \right)}{P\left(x|\omega_2 \right)}>\frac{P\left(\omega_2 \right)}{P\left(\omega_1 \right)}\frac{\lambda_{12}-\lambda_{22}}{\lambda_{21}-\lambda_{11}}\Rightarrow x\in \omega_1 l(x)=P(xω2)P(xω1)>P(ω1)P(ω2)λ21λ11λ12λ22xω1

1.4 限定一类错误率条件下使另一类错误率最小

Neyman-Pearson 决策:优化问题

min ⁡ { P 1 ( e ) ∣ P 2 ( e ) − ϵ 0 = 0 } \min \left\{ P_1\left(e \right)|P_2\left(e \right)-\epsilon_0=0 \right\} min{P1(e)P2(e)ϵ0=0}

L = P 1 ( e ) + λ ( P 2 ( e ) − ϵ 0 ) = ∫ R 2 p ( x ∣ ω 1 ) d x + λ ( ∫ R 1 p ( x ∣ ω 2 ) d x − ϵ 0 ) = 1 − λ ϵ o + ∫ R 1 [ λ p ( x ∣ ω 2 ) − p ( x ∣ ω 1 ) ] d x \begin{aligned} L &=P_1\left(e \right)+\lambda \left(P_2\left(e \right)-\epsilon_0 \right)\\ &=\int_{\mathcal{R}_2}{p\left(x|\omega_1 \right)}\mathrm{d}x+\lambda \left(\int_{\mathcal{R}_1}{p\left(x|\omega_2 \right)}\mathrm{d}x-\epsilon_0 \right)\\ &=1-\lambda \epsilon_o+\int_{\mathcal{R}_1}{\left[\lambda p\left(x|\omega_2 \right)-p\left(x|\omega_1 \right)\right]}\mathrm{d}x \end{aligned} L=P1(e)+λ(P2(e)ϵ0)=R2p(xω1)dx+λ(R1p(xω2)dxϵ0)=1λϵo+R1[λp(xω2)p(xω1)]dx

梯度条件:决策边界满足

λ = p ( x ∣ ω 1 ) p ( x ∣ ω 2 ) ,   P 2 ( e ) = ϵ 0 \lambda =\frac{p\left(x|\omega_1 \right)}{p\left(x|\omega_2 \right)},~P_2\left(e \right)=\epsilon_0 λ=p(xω2)p(xω1), P2(e)=ϵ0

决策规则:

λ p ( x ∣ ω 2 ) − p ( x ∣ ω 1 ) < 0 ⇒ x ∈ ω 1 \lambda p\left(x|\omega_2 \right)-p\left(x|\omega_1 \right)<0\Rightarrow x\in \omega_1 λp(xω2)p(xω1)<0xω1

似然比:

l ( x ) = p ( x ∣ ω 1 ) p ( x ∣ ω 2 ) > λ ⇒ x ∈ ω 1 l(x)=\frac{p\left(x|\omega_1 \right)}{p\left(x|\omega_2 \right)}>\lambda \Rightarrow x\in \omega_1 l(x)=p(xω2)p(xω1)>λxω1

对偶变量求解:通过 l ( x ) l(x) l(x) 的映射关系,可由 p ( x ) p(x) p(x) 求得 p ( l ∣ ω 2 ) p\left(l|\omega_2 \right) p(lω2),则由定义可知误差率为

P 2 ( e ) = 1 − ∫ 0 λ p ( l ∣ ω 2 ) d l = ϵ 0 ⇒ λ \begin{aligned} P_2\left(e \right) &=1-\int_0^{\lambda}{p\left(l|\omega_2 \right)\mathrm{d}l}\\ &=\epsilon_0\Rightarrow \lambda \end{aligned} P2(e)=10λp(lω2)dl=ϵ0λ

1.5 朴素贝叶斯

随机向量分量独立:

p ( x ⃗ ∣ ω ) = p ( x 1 , … , x d ∣ ω ) ≜ ∏ i p ( x i ∣ ω ) p\left(\vec{x}|\omega \right)=p\left(x_1,\dots ,x_d|\omega \right)\triangleq \prod_ip\left(x_i|\omega \right) p(x ω)=p(x1,,xdω)ip(xiω)

1.6 判别函数与正态分布

判别函数: g i ( x ) g_i(x) gi(x),例如后验概率

g i ( x ) = P ( ω i ∣ x ) g_i(x)=P\left(\omega_i|x \right) gi(x)=P(ωix)

取分子

g i ( x ) = p ( x ∣ ω i ) P ( ω i ) g_i(x)=p\left(x|\omega_i \right)P\left(\omega_i \right) gi(x)=p(xωi)P(ωi)

取对数

g i ( x ) = ln ⁡ p ( x ∣ ω i ) + ln ⁡ P ( ω i ) g_i(x)=\ln p\left(x|\omega_i \right)+\ln P\left(\omega_i \right) gi(x)=lnp(xωi)+lnP(ωi)

决策面方程: g i ( x ) = g j ( x ) g_i(x)=g_j(x) gi(x)=gj(x)

正态分布:

p ( x ) = 1 ( 2 π ) d / 2 ∣ Σ ∣ 1 / 2 exp ⁡ { − 1 2 ( x − μ ) ⊤ Σ − 1 ( x − μ ) } p(x)=\frac{1}{\left(2\pi \right)^{d/2}|\Sigma |^{1/2}}\exp \left\{ -\frac{1}{2}\left(x-\mu \right)^{\top}\Sigma ^{-1}\left(x-\mu \right)\right\} p(x)=(2π)d/2Σ1/21exp{21(xμ)Σ1(xμ)}

维数 d d d,均值 μ = E [ x ] \mu =\mathbb{E} \left[x \right] μ=E[x],协方差

Σ = E [ ( x − μ ) ( x − μ ) ⊤ ] \Sigma =\mathbb{E} \left[\left(x-\mu \right)\left(x-\mu \right)^{\top} \right] Σ=E[(xμ)(xμ)]

贝叶斯判别:各类分布

p ( x ∣ ω i ) ∼ N ( μ i , Σ i ) p\left(x|\omega_i \right)\sim \mathcal{N} \left(\mu_i,\Sigma_i \right) p(xωi)N(μi,Σi)

则判别函数为

g i ( x ) = − d 2 ln ⁡ 2 π − 1 2 ln ⁡ ∣ Σ i ∣ + ln ⁡ P ( ω i ) − 1 2 ( x − μ i ) ⊤ Σ i − 1 ( x − μ i ) g_i(x)=-\frac{d}{2}\ln 2\pi -\frac{1}{2}\ln |\Sigma_i|+\ln P\left(\omega_i \right)-\frac{1}{2}\left(x-\mu_i \right)^{\top}\Sigma_{i}^{-1}\left(x-\mu_i \right) gi(x)=2dln2π21lnΣi+lnP(ωi)21(xμi)Σi1(xμi)

决策面方程: g i ( x ) = g j ( x ) g_i(x)=g_j(x) gi(x)=gj(x),即

− 0.5 [ ( x − μ i ) ⊤ Σ i − 1 ( x − μ i ) − ( x − μ j ) ⊤ Σ j − 1 ( x − μ j ) ] + [ ln ⁡ P ( ω i ) − ln ⁡ P ( ω j ) ] − 0.5 ( ln ⁡ ∣ Σ i ∣ − ln ⁡ ∣ Σ j ∣ ) = 0 \begin{aligned} &-0.5\left[\left(x-\mu_i \right)^{\top}\Sigma_{i}^{-1}\left(x-\mu_i \right)-\left(x-\mu_j \right)^{\top}\Sigma_{j}^{-1}\left(x-\mu_j \right)\right]\\ &+\left[\ln P\left(\omega_i \right)-\ln P\left(\omega_j \right)\right] -0.5\left(\ln |\Sigma_i|-\ln |\Sigma_j| \right)=0 \end{aligned} 0.5[(xμi)Σi1(xμi)(xμj)Σj1(xμj)]+[lnP(ωi)lnP(ωj)]0.5(lnΣilnΣj)=0

1.7 分类性能评价 ROC 与 AUC

ROC (Receiver Operating Characteristic):FP-TP 曲线,越靠近曲线左上角的点对应的阈值参数性能越好

混淆矩阵:两类分类问题

实际为正类实际为负类
预测为正类TPFP
预测为负类FNTN

AUC (Area Under ROC Curves):ROC 曲线下方面积越大越好

例:给定样本标签

y = [ 1   0   1   1   1   0   0   0 ] y = [1~0~1~1~1~0~0~0] y=[1 0 1 1 1 0 0 0]

分类器输出结果为

S = [ 0.5   0.3   0.6   0.22   0.4   0.51   0.2   0.33 ] S = [0.5~0.3~0.6~0.22~0.4~0.51~0.2~0.33] S=[0.5 0.3 0.6 0.22 0.4 0.51 0.2 0.33]

则 FP 与 TP 计算如下:

classscoreFPTP
10.600.25
00.510.250.25
10.50.250.5
10.40.250.75
10.330.50.75
00.30.750.75
00.220.751
00.20.11

ROC 曲线

2 概率密度函数估计

统计量:样本的分布信息,如均值,方差等

参数空间:未知参数向量 θ \theta θ 全部可能取值的集合 Θ \Theta Θ

点估计:构造估计量 d ( x 1 , … , x N ) d\left(x_1,\dots ,x_N \right) d(x1,,xN) 作为 θ \theta θ 的估计

区间估计:构造置信区间 ( d 1 , d 2 ) \left(d_1,d_2 \right) (d1,d2) 作为 θ \theta θ 可能取值范围的估计

2.1 极大似然估计 (MLE, Maximum Likelihood Estimate)

假设:

  1. 概率分布函数形式已知
  2. 样本独立同分布采样得到

似然函数:

l ( θ ) = p ( X ∣ θ ) = p ( x 1 , … , x N ∣ θ ) = ∏ k p ( x k ∣ θ ) \begin{aligned} l\left(\theta \right) &=p\left(X|\theta \right)\\ &=p\left(x_1,\dots ,x_N|\theta \right)\\ &=\prod_kp\left(x_k|\theta \right) \end{aligned} l(θ)=p(Xθ)=p(x1,,xNθ)=kp(xkθ)

对数似然函数:

H ( θ ) = ln ⁡ l ( θ ) = ∑ k ln ⁡ p ( x k ∣ θ ) \begin{aligned} H\left(\theta \right) &=\ln l\left(\theta \right)\\ &=\sum_k\ln p\left(x_k|\theta \right) \end{aligned} H(θ)=lnl(θ)=klnp(xkθ)

极大似然估计:

θ = a r g m a x θ ∈ Θ l ( θ ) = a r g m a x θ ∈ Θ H ( θ ) \begin{aligned} \theta &=\mathrm{argmax}_{\theta \in \Theta}l\left(\theta \right)\\ &=\mathrm{argmax}_{\theta \in \Theta}H\left(\theta \right) \end{aligned} θ=argmaxθΘl(θ)=argmaxθΘH(θ)

正态分布:待估计参数为 θ = [ μ , σ 2 ] \theta =\left[\mu ,\sigma ^2 \right] θ=[μ,σ2], 数据点

X = { x 1 , … , x N } X=\left\{ x_1,\dots ,x_N \right\} X={x1,,xN}

估计量为 θ ^ = [ μ ^ , σ ^ 2 ] \hat{\theta}=\left[\hat{\mu},\hat{\sigma}^2 \right] θ^=[μ^,σ^2]

概率密度函数为

p ( x k ∣ θ ) = 1 2 π σ exp ⁡ [ − ( x k − μ ) 2 2 σ 2 ] p\left(x_k|\theta \right)=\frac{1}{\sqrt{2\pi}\sigma}\exp \left[-\frac{\left(x_k-\mu \right)^2}{2\sigma ^2} \right] p(xkθ)=2π σ1exp[2σ2(xkμ)2]

取对数得

ln ⁡ p ( x k ∣ θ ) = − 1 2 ln ⁡ ( 2 π θ 2 ) − ( x k − θ 1 ) 2 2 θ 2 \ln p\left(x_k|\theta \right)=-\frac{1}{2}\ln \left(2\pi \theta_2 \right)-\frac{\left(x_k-\theta_1 \right)^2}{2\theta_2} lnp(xkθ)=21ln(2πθ2)2θ2(xkθ1)2

θ \theta θ 求梯度有

∇ θ ln ⁡ p ( x k ∣ θ ) = [ x k − θ 1 θ 2 − 1 2 θ 2 + ( x k − θ 1 ) 2 2 θ 2 2 ] \nabla_{\theta}\ln p\left(x_k|\theta \right) =\begin{bmatrix} \dfrac{x_k-\theta_1}{\theta_2}\\ -\dfrac{1}{2\theta_2}+\dfrac{\left(x_k-\theta_1 \right)^2}{2\theta_{2}^{2}}\\ \end{bmatrix} θlnp(xkθ)=θ2xkθ12θ21+2θ22(xkθ1)2

∑ k = 1 N ∇ θ ln ⁡ p ( x k ∣ θ ) = 0 \sum_{k=1}^N{\nabla_{\theta}\ln p\left(x_k|\theta \right)}=0 k=1Nθlnp(xkθ)=0

因此,估计量为
μ ^ = 1 N ∑ k = 1 N x k σ ^ 2 = 1 N ∑ k = 1 N ( x k − μ ^ ) 2 \begin{aligned} \hat{\mu}&=\frac{1}{N}\sum_{k=1}^N{x_k} \\ \hat{\sigma}^2&=\frac{1}{N}\sum_{k=1}^N{\left(x_k-\hat{\mu} \right)^2} \end{aligned} μ^σ^2=N1k=1Nxk=N1k=1N(xkμ^)2

多元正态分布:

μ ^ = 1 N ∑ k = 1 N x k Σ ^ = 1 N ∑ k = 1 N ( x k − μ ^ ) ( x k − μ ^ ) ⊤ \begin{aligned} \hat{\mu}&=\frac{1}{N}\sum_{k=1}^N{x_k}\\ \hat{\Sigma}&=\frac{1}{N}\sum_{k=1}^N{\left(x_k-\hat{\mu} \right)\left(x_k-\hat{\mu} \right)^{\top}} \end{aligned} μ^Σ^=N1k=1Nxk=N1k=1N(xkμ^)(xkμ^)

无偏估计:

E [ μ ^ ] = μ \mathbb{E} \left[\hat{\mu} \right] =\mu E[μ^]=μ

E [ N N − 1 Σ ^ ] = Σ \mathbb{E} \left[\frac{N}{N-1}\hat{\Sigma}\right] =\Sigma E[N1NΣ^]=Σ

渐进无偏估计:

lim ⁡ n → ∞ E [ Σ ^ ] = Σ \lim_{n\rightarrow \infty} \mathbb{E} \left[\hat{\Sigma} \right] =\Sigma nlimE[Σ^]=Σ

可识别性:对 θ ≠ θ ′ \theta \ne \theta ' θ=θ,

∃   x ⇒ p ( x ∣ θ ) ≠ p ( x ∣ θ ′ ) \exists~x\Rightarrow p\left(x|\theta \right)\ne p\left(x|\theta ' \right)  xp(xθ)=p(xθ)

离散随机变量的混合密度函数往往不可识别,连续的则一般可以识别

2.2 贝叶斯估计

假设:参数 θ \theta θ 是随机变量,且已知其先验分布 p ( θ ) p\left(\theta \right) p(θ)

贝叶斯估计:后验概率

p ( θ ∣ X ) = p ( X ∣ θ ) p ( θ ) / p ( x ) p\left(\theta |X \right)=p\left(X|\theta \right)p\left(\theta \right)/p(x) p(θX)=p(Xθ)p(θ)/p(x)

贝叶斯学习:

p ( x ∣ X ) = ∫ p ( x , θ ∣ X ) d θ = ∫ p ( x ∣ θ ) p ( θ ∣ X ) d θ \begin{aligned} p\left(x|X \right) &=\int{p\left(x,\theta |X \right)\mathrm{d}\theta}\\ &=\int{p\left(x|\theta \right)p\left(\theta |X \right)\mathrm{d}\theta} \end{aligned} p(xX)=p(x,θX)dθ=p(xθ)p(θX)dθ

贝叶斯学习性质:

lim ⁡ N → ∞ p ( x ∣ X N ) = p ( x ∣ θ ^ = θ ) = p ( x ) \lim_{N\rightarrow \infty} p\left(x|X^N \right)=p\left(x|\hat{\theta}=\theta \right)=p(x) Nlimp(xXN)=p(xθ^=θ)=p(x)

正态分布:

p ( X ∣ μ ) ∼ N ( μ , σ 2 ) p\left(X|\mu \right)\sim \mathcal{N} \left(\mu ,\sigma ^2 \right) p(Xμ)N(μ,σ2)

p ( μ ) ∼ N ( μ o , σ 0 2 ) p\left(\mu \right)\sim \mathcal{N} \left(\mu_o,\sigma_{0}^{2} \right) p(μ)N(μo,σ02)

其中 σ 2 \sigma ^2 σ2 已知,则有

p ( μ ∣ X ) = p ( X ∣ μ ) p ( μ ) p ( x ) = α ∏ k p ( x k ∣ μ ) p ( μ ) = α ′ ⋅ exp ⁡ { − 1 2 [ ∑ k = 1 N ( μ − x k ) 2 σ 2 + ( μ − μ 0 ) 2 σ 0 2 ] } ≜ 1 2 π σ N exp ⁡ [ − ( μ − μ N ) 2 2 σ N 2 ] \begin{aligned} p\left(\mu |X \right) &=\frac{p\left(X|\mu \right)p\left(\mu \right)}{p(x)}\\ &=\alpha \prod_kp\left(x_k|\mu \right)p\left(\mu \right)\\ &=\alpha '\cdot \exp \left\{ -\frac{1}{2}\left[\sum_{k=1}^N{\frac{\left(\mu -x_k \right)^2}{\sigma ^2}}+\frac{\left(\mu -\mu_0 \right)^2}{\sigma_{0}^{2}} \right] \right\} \\ &\triangleq \frac{1}{\sqrt{2\pi}\sigma_N}\exp \left[-\frac{\left(\mu -\mu_N \right)^2}{2\sigma_{N}^{2}} \right] \end{aligned} p(μX)=p(x)p(Xμ)p(μ)=αkp(xkμ)p(μ)=αexp{21[k=1Nσ2(μxk)2+σ02(μμ0)2]}2π σN1exp[2σN2(μμN)2]

其中

σ N 2 = σ 0 2 σ 2 N σ 0 2 + σ 2 \sigma_{N}^{2}=\frac{\sigma_{0}^{2}\sigma ^2}{N\sigma_{0}^{2}+\sigma ^2} σN2=Nσ02+σ2σ02σ2

μ N = N σ 0 2 N σ 0 2 + σ 2 m N + σ 2 N σ 0 2 + σ 2 μ 0 \mu_N=\frac{N\sigma_{0}^{2}}{N\sigma_{0}^{2}+\sigma ^2}m_N+\frac{\sigma ^2}{N\sigma_{0}^{2}+\sigma ^2}\mu_0 μN=Nσ02+σ2Nσ02mN+Nσ02+σ2σ2μ0

其中

m N = 1 N ∑ k = 1 N x k m_N=\frac{1}{N}\sum_{k=1}^N{x_k} mN=N1k=1Nxk

因此

p ( x ∣ X ) = ∫ p ( x ∣ μ ) p ( μ ∣ X ) d μ ∼ N ( μ N , σ 2 + σ N 2 ) \begin{aligned} p\left(x|X \right) &=\int{p\left(x|\mu \right)p\left(\mu |X \right)\mathrm{d}\mu}\\ &\sim \mathcal{N} \left(\mu_N,\sigma ^2+\sigma_{N}^{2} \right) \end{aligned} p(xX)=p(xμ)p(μX)dμN(μN,σ2+σN2)

参数变化:

σ 0 = 0 ⇒ μ N = μ 0 \sigma_0=0\Rightarrow \mu_N=\mu_0 σ0=0μN=μ0

N ↑ ⇒ μ N → m N ,   σ N 2 → 0 N\uparrow \Rightarrow \mu_N\rightarrow m_N,~\sigma_{N}^{2}\rightarrow 0 NμNmN, σN20

最大似然估计与贝叶斯估计对比:

  1. 训练样本无穷多时,最大似然估计与贝叶斯估计结果相同
  2. 贝叶斯估计使用先验概率利用了更多信息,若信息可靠则贝叶斯估计更准确,但有时先验概率很难设计,无信息先验
  3. 最大似然估计计算简单,贝叶斯通常计算复杂的积分
  4. 最大似然估计易于理解,给出的是参数的最佳估计结果

2.3 非参数估计

假设:

  1. 概率分布函数形式未知
  2. 样本独立同分布

直方图估计:

p ^ N ( x ) = k N N V N → p ( x ) \hat{p}_N(x) =\frac{k_N}{NV_N} \rightarrow p(x) p^N(x)=NVNkNp(x)

估计收敛条件:

V N → 0 ,   k N → ∞ ,   k N / N → 0 V_N\rightarrow 0,~k_N\rightarrow \infty ,~k_N/N\rightarrow 0 VN0, kN, kN/N0

2.4 Parzen 窗估计 (Kernel Density Estimation)

思想:固定小舱体积,滑动小舱估计每个点的概率密度

区域: R N R_N RN d d d 维超立方体,棱长 h N h_N hN,体积 V N = h N d V_N=h_{N}^{d} VN=hNd

窗函数条件: ϕ ( u ) ⩾ 0 ,   ∫ ϕ ( u ) d u = 1 \displaystyle\phi \left(u \right)\geqslant 0,~\int{\phi \left(u \right)\mathrm{d}u}=1 ϕ(u)0, ϕ(u)du=1

  1. 方窗:
    ϕ ( u ) = { 1 , i f   ∥ u ∥ ∞ ⩽ 1 / 2 0 , o t h e r w i s e \phi \left(u \right)= \begin{cases} 1, &\mathrm{if}~\left\| u \right\|_{\infty}\leqslant 1/2\\ 0, &\mathrm{otherwise} \end{cases} ϕ(u)={1,0,if u1/2otherwise
  2. 正态窗:
    ϕ ( u ) = 1 2 π exp ⁡ ( − 1 2 u 2 ) ,   u ∈ R \phi \left(u \right)=\frac{1}{\sqrt{2\pi}}\exp \left(-\frac{1}{2}u^2 \right),~u\in\mathbb{R} ϕ(u)=2π 1exp(21u2), uR
  3. 指数窗:
    ϕ ( u ) = 1 2 exp ⁡ ( − ∣ u ∣ ) ,   u ∈ R \phi \left(u \right)=\frac{1}{2}\exp \left(-|u| \right),~u\in\mathbb{R} ϕ(u)=21exp(u), uR

落入以 x x x 为中心的区域的样本数:

k N = ∑ i = 1 N ϕ ( x − x i h N ) k_N=\sum_{i=1}^N{\phi \left(\frac{x-x_i}{h_N} \right)} kN=i=1Nϕ(hNxxi)

概率密度函数估计:

p ^ N ( x ) = 1 N ∑ i = 1 N 1 V N ϕ ( x − x i h N ) \hat{p}_N(x)=\frac{1}{N}\sum_{i=1}^N{\frac{1}{V_N}\phi \left(\frac{x-x_i}{h_N} \right)} p^N(x)=N1i=1NVN1ϕ(hNxxi)

窗宽选取: h N = h 1 / N h_N=h_1/\sqrt{N} hN=h1/N ,其中 h 1 h_1 h1 可调且一般存在最优值

估计量性质:一维正态窗

p ˉ N = E [ p ^ N ( x ) ] ∼ N ( μ , σ 2 + h N 2 ) \begin{aligned} \bar{p}_N &=\mathbb{E} \left[\hat{p}_N(x)\right] \\ &\sim \mathcal{N} \left(\mu ,\sigma ^2+h_{N}^{2} \right) \end{aligned} pˉN=E[p^N(x)]N(μ,σ2+hN2)

2.5 k N k_N kN 近邻估计

思想:固定小舱内数据点个数,滑动可变大小的小舱对每个采样点 (而不是数据点) 进行概率密度估计

数据点个数: k N = k 1 N k_N=k_1\sqrt{N} kN=k1N ,其中 k 1 k_1 k1 可调且一般存在最优值

2.6 估计准确性、维数问题与过拟合

估计准确性:

  1. 贝叶斯误差:不同的类条件概率分布函数之间的相互重叠
  2. 模型误差:选择了错误的概率密度函数模型
  3. 估计误差:采用有限样本进行估计所带来的误差

维数问题:维数为 d d d,需要样本 10 0 d 100^d 100d →维数灾难

过拟合避免方法:

  1. 贝叶斯方法
  2. 增加样本数
  3. 正则化
  4. 减少模型参数

3 EM 算法与高斯混合模型 GMM

3.1 EM 算法

思想:用隐变量对缺失数据建模,迭代实现最大似然估计

数据: X = { x 1 , … , x N } X=\left\{ x_1,\dots ,x_N \right\} X={x1,,xN},隐变量 Y Y Y,完整数据 Z = ( X , Y ) Z=\left(X,Y \right) Z=(X,Y)

似然函数:

l ( θ ) = p ( X ∣ θ ) = ∑ y ∈ Y p ( X , y ∣ θ ) \begin{aligned} l\left(\theta \right) &=p\left(X|\theta \right)\\ &=\sum_{y\in Y}p\left(X,y|\theta \right) \end{aligned} l(θ)=p(Xθ)=yYp(X,yθ)

对数似然函数:

L ( θ ) = ln ⁡ l ( θ ) = ln ⁡ ∑ y ∈ Y p ( X , y ∣ θ ) \begin{aligned} L\left(\theta \right) &=\ln l\left(\theta \right)\\ &=\ln \sum_{y\in Y}p\left(X,y|\theta \right) \end{aligned} L(θ)=lnl(θ)=lnyYp(X,yθ)

对数似然函数的下界:应用 Jensen 不等式于对数函数可得

L ( θ ) = ln ⁡ ∑ y p ( X , y ∣ θ ) = ln ⁡ ∑ y q ( y ) p ( X , y ∣ θ ) q ( y ) ⩾ ∑ y q ( y ) ln ⁡ p ( X , y ∣ θ ) q ( y ) = ∑ y q ( y ) ln ⁡ p ( X , y ∣ θ ) − ∑ y q ( y ) ln ⁡ q ( y ) ≜ F ( q , θ ) \begin{aligned} L\left(\theta \right) &=\ln \sum_yp\left(X,y|\theta \right)\\ &=\ln \sum_y\frac{q(y)p\left(X,y|\theta \right)}{q(y)}\\ &\geqslant \sum_yq(y)\ln\frac{p\left(X,y|\theta \right)}{q(y)} \\ &=\sum_yq(y)\ln p\left(X,y|\theta \right)-\sum_yq(y)\ln q(y)\\ &\triangleq F\left(q,\theta \right) \end{aligned} L(θ)=lnyp(X,yθ)=lnyq(y)q(y)p(X,yθ)yq(y)lnq(y)p(X,yθ)=yq(y)lnp(X,yθ)yq(y)lnq(y)F(q,θ)

迭代优化下界:初始化 q [ 0 ] ,   θ [ 0 ] q_{\left[0 \right]},~\theta_{\left[0 \right]} q[0], θ[0] 后反复迭代

q [ k + 1 ] ← a r g m a x q F ( q , θ [ k ] ) θ [ k + 1 ] ← a r g m a x θ F ( q [ k + 1 ] , θ ) \begin{aligned} q_{\left[k+1 \right]}&\gets \mathrm{argmax}_qF\left(q,\theta_{\left[k \right]} \right)\\ \theta_{\left[k+1 \right]}&\gets \mathrm{argmax}_{\theta}F\left(q_{\left[k+1 \right]},\theta \right) \end{aligned} q[k+1]θ[k+1]argmaxqF(q,θ[k])argmaxθF(q[k+1],θ)

迭代优化下界

期望:当 q = p ( y ∣ X , θ [ k ] ) q=p\left(y|X,\theta_{\left[k \right]} \right) q=p(yX,θ[k]) 为后验概率时, F ( q , θ [ k ] ) F\left(q,\theta_{\left[k \right]} \right) F(q,θ[k]) 达到最大

F ( q , θ ) = ∑ y q ( y ) ln ⁡ p ( X , y ∣ θ ) q ( y ) = ∑ y p ( y ∣ X , θ ) ln ⁡ p ( y ∣ X , θ ) p ( X ∣ θ ) p ( y ∣ X , θ ) = ∑ y p ( y ∣ X , θ ) ln ⁡ p ( X ∣ θ ) = ln ⁡ p ( X ∣ θ ) = L ( θ ) \begin{aligned} F\left(q,\theta \right) &=\sum_yq(y)\ln\frac{p\left(X,y|\theta \right)}{q(y)}\\ &=\sum_yp\left(y|X,\theta \right)\ln\frac{p\left(y|X,\theta \right)p\left(X|\theta \right)}{p\left(y|X,\theta \right)} \\ &=\sum_yp\left(y|X,\theta \right)\ln p\left(X|\theta \right)\\ &=\ln p\left(X|\theta \right)\\ &=L\left(\theta \right) \end{aligned} F(q,θ)=yq(y)lnq(y)p(X,yθ)=yp(yX,θ)lnp(yX,θ)p(yX,θ)p(Xθ)=yp(yX,θ)lnp(Xθ)=lnp(Xθ)=L(θ)

F ( q [ k + 1 ] , θ ) = ∑ y q [ k + 1 ] ( y ) ln ⁡ p ( X , y ∣ θ ) − ∑ y q [ k + 1 ] ( y ) ln ⁡ q [ k + 1 ] ( y ) \begin{aligned} F\left(q_{\left[k+1 \right]},\theta \right)=\sum_yq_{\left[k+1 \right]}(y)\ln p\left(X,y|\theta \right)-\sum_yq_{\left[k+1 \right]}(y)\ln q_{\left[k+1 \right]}(y) \end{aligned} F(q[k+1],θ)=yq[k+1](y)lnp(X,yθ)yq[k+1](y)lnq[k+1](y)

第二项不包含优化变量 θ \theta θ 可忽略,代入 q [ k + 1 ] ( y ) q_{\left[k+1 \right]}(y) q[k+1](y) 并定义

Q ( θ [ k ] , θ ) ≜ ∑ y p ( y ∣ X , θ [ k ] ) ln ⁡ p ( X , y ∣ θ ) = E [ ln ⁡ p ( X , y ∣ θ ) ∣ X , θ [ k ] ] \begin{aligned} Q\left(\theta_{\left[k \right]},\theta \right)&\triangleq \sum_yp\left(y|X,\theta_{\left[k \right]} \right)\ln p\left(X,y|\theta \right)\\ &=\mathbb{E} \left[\ln p\left(X,y|\theta \right)|X,\theta_{\left[ k \right]} \right] \end{aligned} Q(θ[k],θ)yp(yX,θ[k])lnp(X,yθ)=E[lnp(X,yθ)X,θ[k]]

最大化:

θ [ k + 1 ] ← a r g m a x θ Q ( θ [ k ] , θ ) \theta_{\left[k+1 \right]}\gets \mathrm{argmax}_{\theta}Q\left(\theta_{\left[k \right]},\theta \right) θ[k+1]argmaxθQ(θ[k],θ)

广义最大化:

θ [ k + 1 ] ∈ { θ [ k + 1 ] ∣ Q ( θ [ k ] , θ [ k + 1 ] ) > Q ( θ [ k ] , θ [ k ] ) } \theta_{\left[k+1 \right]}\in \left\{ \theta_{\left[k+1 \right]}|Q\left(\theta_{\left[k \right]},\theta_{\left[k+1 \right]} \right)>Q\left(\theta_{\left[k \right]},\theta_{\left[k \right]} \right)\right\} θ[k+1]{θ[k+1]Q(θ[k],θ[k+1])>Q(θ[k],θ[k])}

3.2 高斯混合模型 GMM

隐变量: Y = { y ∈ R N } Y=\left\{ y\in \mathbb{R} ^N \right\} Y={yRN} 表示样本 x i x_i xi 由第 y i y_i yi 个高斯分布产生

混合模型:

p ( X ∣ Θ ) = Σ j α j p j ( X ∣ θ j ) p\left(X|\Theta \right)=\Sigma_j\alpha_jp_j\left(X|\theta_j \right) p(XΘ)=Σjαjpj(Xθj)

其中

Θ = { α j , θ j } ,   ∑ j α j = 1 \Theta =\left\{ \alpha_j,\theta_j \right\},~\sum_j\alpha_j=1 Θ={αj,θj}, jαj=1

由独立同分布可得

p ( X ∣ Θ ) = ∏ i p ( x i ∣ Θ ) = ∏ i ∑ j α j p j ( x i ∣ θ j ) \begin{aligned} p\left(X|\Theta \right) &=\prod_ip\left(x_i|\Theta \right)\\ &=\prod_i\sum_j\alpha_jp_j\left(x_i|\theta_j \right) \end{aligned} p(XΘ)=ip(xiΘ)=ijαjpj(xiθj)

对数似然函数:

ln ⁡ p ( X ∣ Θ ) = ∑ i ln ⁡ ∑ j α j p j ( x i ∣ θ j ) \ln p\left(X|\Theta \right)=\sum_i\ln \sum_j\alpha_jp_j\left(x_i|\theta_j \right) lnp(XΘ)=ilnjαjpj(xiθj)

极大似然估计:

∇ Θ ln ⁡ p ( X ∣ Θ ) = 0 ⇒ Θ \nabla_{\Theta}\ln p\left(X|\Theta \right)=0\Rightarrow \Theta Θlnp(XΘ)=0Θ

结果与EM相同

EM 算法:

p ( X , y ∣ Θ ) = ∏ i p ( x i ∣ y i ) p ( y i ) p\left(X,y|\Theta \right)=\prod_ip\left(x_i|y_i \right)p\left(y_i \right) p(X,yΘ)=ip(xiyi)p(yi)

ln ⁡ p ( X , y ∣ Θ ) = ∑ i ln ⁡ p ( x i ∣ y i ) p ( y i ) = ∑ i ln ⁡ α y i p y i ( x i ∣ θ y i ) \begin{aligned} \ln p\left(X,y|\Theta \right) &=\sum_i\ln p\left(x_i|y_i \right)p\left(y_i \right)\\ &=\sum_i\ln \alpha_{y_i}p_{y_i}\left(x_i|\theta_{y_i} \right) \end{aligned} lnp(X,yΘ)=ilnp(xiyi)p(yi)=ilnαyipyi(xiθyi)

p ( y ∣ X , Θ g ) = ∏ i p ( y i ∣ x i , Θ g ) = ∏ i α y i g p y i ( x i ∣ θ y i g ) p ( x i ∣ Θ g ) \begin{aligned} p\left(y|X,\Theta ^g \right) &=\prod_ip\left(y_i|x_i,\Theta ^g \right)\\ &=\prod_i\alpha_{y_i}^{g}\frac{p_{y_i}\left(x_i|\theta_{y_i}^{g} \right)}{p\left(x_i|\Theta ^g \right)} \end{aligned} p(yX,Θg)=ip(yixi,Θg)=iαyigp(xiΘg)pyi(xiθyig)

Q ( Θ g , Θ ) = ∑ y p ( y ∣ X , Θ g ) ln ⁡ p ( X , y ∣ Θ ) = ∑ j ∑ i ln ⁡ ( α j p j ( x i ∣ θ j ) ) p ( j ∣ x i , Θ g ) = ∑ j ∑ i p ( j ∣ x i , Θ g ) [ ln ⁡ α j + ln ⁡ p j ( x i ∣ θ j ) ] \begin{aligned} Q\left(\Theta ^g,\Theta \right) &=\sum_yp\left(y|X,\Theta ^g \right)\ln p\left(X,y|\Theta \right)\\ &=\sum_j\sum_i\ln \left(\alpha_jp_j\left(x_i|\theta_j \right)\right)p\left(j|x_i,\Theta ^g \right)\\ &=\sum_j\sum_ip\left(j|x_i,\Theta ^g \right)\left[\ln \alpha_j+\ln p_j\left(x_i|\theta_j \right)\right] \end{aligned} Q(Θg,Θ)=yp(yX,Θg)lnp(X,yΘ)=jiln(αjpj(xiθj))p(jxi,Θg)=jip(jxi,Θg)[lnαj+lnpj(xiθj)]

α j \alpha_j αj θ j \theta_j θj 解耦可分别优化,由 ∑ i α i = 1 \sum_i\alpha_i=1 iαi=1 及梯度条件解得

α j n e w = 1 N ∑ i p ( j ∣ x i , Θ g ) μ j n e w = 1 N α j n e w ∑ i x i p ( j ∣ x i , Θ g ) Σ j n e w = 1 N α j n e w ∑ i p ( j ∣ x i , Θ g ) ( x i − μ j n e w ) ( x i − μ j n e w ) ⊤ \begin{aligned} \alpha_{j}^{\mathrm{new}}&=\frac{1}{N}\sum_ip\left(j|x_i,\Theta ^g \right)\\ \mu_{j}^{\mathrm{new}}&=\frac{1}{N\alpha_{j}^{\mathrm{new}}}\sum_ix_ip\left(j|x_i,\Theta ^g \right)\\ \Sigma_{j}^{\mathrm{new}}&=\frac{1}{N\alpha_{j}^{\mathrm{new}}}\sum_ip\left(j|x_i,\Theta ^g \right)\left(x_i-\mu_{j}^{\mathrm{new}} \right)\left(x_i-\mu_{j}^{\mathrm{new}} \right)^{\top} \end{aligned} αjnewμjnewΣjnew=N1ip(jxi,Θg)=Nαjnew1ixip(jxi,Θg)=Nαjnew1ip(jxi,Θg)(xiμjnew)(xiμjnew)

若限制各成分的协方差矩阵均相同,则 M 步需要修改为

Σ n e w = ∑ j ∑ i p ( j ∣ x i , Θ g ) ( x i − μ j n e w ) ( x i − μ j n e w ) ⊤ N ∑ j α j n e w \Sigma ^{\mathrm{new}}=\sum_{j}\sum_i\frac{p\left(j|x_i,\Theta ^g \right)\left(x_i-\mu_{j}^{\mathrm{new}} \right)\left(x_i-\mu_{j}^{\mathrm{new}} \right)^{\top}}{N\sum_j\alpha_{j}^{\mathrm{new}}} Σnew=jiNjαjnewp(jxi,Θg)(xiμjnew)(xiμjnew)

例题:三维数据点,偶数点的第3维数据缺失,令 x i 3 ,   i ∈ E x_{i3},~i\in E xi3, iE 为隐变量,

x i = [ x i 1 , x i 2 , x i 3 ] ⊤ x_i=\left[x_{i1},x_{i2},x_{i3} \right] ^{\top} xi=[xi1,xi2,xi3]

则对数似然函数为

L ( θ ) = ∑ i ∈ O ln ⁡ p ( x i 1 , x i 2 , x i 3 ∣ θ ) + ∑ i ∈ E ln ⁡ p ( x i 1 , x i 2 ∣ θ ) = ∼ + ∑ i ∈ E ln ⁡ ∫ − ∞ + ∞ p ( x i 1 , x i 2 , x i 3 ∣ θ ) d x i 3 = ∼ + ∑ i ∈ E ln ⁡ ∫ − ∞ + ∞ q ( x i 3 ) p ( x i 1 , x i 2 , x i 3 ∣ θ ) q ( x i 3 ) d x i 3 ⩾ ∼ + ∑ i ∈ E ∫ − ∞ + ∞ q ( x i 3 ) ln ⁡ p ( x i 1 , x i 2 , x i 3 ∣ θ ) q ( x i 3 ) d x i 3 \begin{aligned} L\left(\theta \right) &=\sum_{i\in O}\ln p\left(x_{i1},x_{i2},x_{i3}|\theta \right)+\sum_{i\in E}\ln p\left(x_{i1},x_{i2}|\theta \right)\\ &=\sim +\sum_{i\in E}\ln \int_{-\infty}^{+\infty}p\left(x_{i1},x_{i2},x_{i3}|\theta \right)\mathrm{d}x_{i3}\\ &=\sim +\sum_{i\in E}\ln \int_{-\infty}^{+\infty}\frac{q\left(x_{i3} \right)p\left(x_{i1},x_{i2},x_{i3}|\theta \right)}{q\left(x_{i3} \right)}\mathrm{d}x_{i3}\\ &\geqslant \sim +\sum_{i\in E}\int_{-\infty}^{+\infty}q\left(x_{i3} \right)\ln\frac{p\left(x_{i1},x_{i2},x_{i3}|\theta \right)}{q\left(x_{i3} \right)} \mathrm{d}x_{i3} \end{aligned} L(θ)=iOlnp(xi1,xi2,xi3θ)+iElnp(xi1,xi2θ)=+iEln+p(xi1,xi2,xi3θ)dxi3=+iEln+q(xi3)q(xi3)p(xi1,xi2,xi3θ)dxi3+iE+q(xi3)lnq(xi3)p(xi1,xi2,xi3θ)dxi3

Q ( θ [ k ] , θ ) = ∼ + ∑ i ∈ E ∫ − ∞ + ∞ p ( x i 3 ∣ x i 1 , x i 2 , θ [ k ] ) ln ⁡ p ( x ⃗ i ∣ θ ) d x i 3 Q\left(\theta_{\left[k \right]},\theta \right)=\sim +\sum_{i\in E}\int_{-\infty}^{+\infty}p\left(x_{i3}|x_{i1},x_{i2},\theta_{\left[k \right]} \right)\ln p\left(\vec{x}_i|\theta \right)\mathrm{d}x_{i3} Q(θ[k],θ)=+iE+p(xi3xi1,xi2,θ[k])lnp(x iθ)dxi3

4 线性判别函数

思想:

  1. 不恢复类条件概率密度,利用样本直接设计分类器
  2. 线性判别函数形式简单易分析,但往往不是最优分类器

线性判别函数: g ( x ) = w ⊤ x + w 0 g(x)=w^{\top}x+w_0 g(x)=wx+w0

两类问题: g ( x ) = g 1 ( x ) − g 2 ( x ) g(x)=g_1(x)-g_2(x) g(x)=g1(x)g2(x),分类决策为

{ x ∈ ω 1 , i f   g ( x ) > 0 x ∈ ω 2 , i f   g ( x ) < 0 e i t h e r   o r   r e j e c t , o t h e r w i s e \begin{cases} x\in \omega_1, &\mathrm{if}~g(x)>0\\ x\in \omega_2, &\mathrm{if}~g(x)<0\\ \mathrm{either}~\mathrm{or}~\mathrm{reject}, &\mathrm{otherwise} \end{cases} xω1,xω2,either or reject,if g(x)>0if g(x)<0otherwise

点到直线距离:

r = g ( x ) ∥ w ∥ r=\frac{g(x)}{\left\| w \right\|} r=wg(x)

广义线性判别:

g ( x ) = w ⊤ x + w 0 ≜ a ⊤ y g(x)=w^{\top}x+w_0\triangleq a^{\top}y g(x)=wx+w0ay

其中增广样本向量为

y = [ 1 x ] y=\begin{bmatrix} 1\\ x \end{bmatrix} y=[1x]

增广权向量为

a = [ w 0 w ] a=\begin{bmatrix} w_0\\ w \end{bmatrix} a=[w0w]

样本规范化:

y i ′ = { y i , i f   y i ∈ ω 1 − y i , i f   y i ∈ ω 2 y_{i}'= \begin{cases} y_i, & \mathrm{if}~y_i\in \omega_1\\ -y_i, & \mathrm{if}~y_i\in \omega_2 \end{cases} yi={yi,yi,if yiω1if yiω2

解区:解向量集合 { a ∣ a ⊤ y i ′ > 0 ,   ∀   i } \left\{ a|a^{\top}y_{i}'>0,~\forall~i \right\} {aayi>0,  i}

解区限制: a ⊤ y i ⩾ b > 0 ,   ∀   i a^{\top}y_i\geqslant b>0,~\forall~i ayib>0,  i

感知准则函数:

min ⁡ J p ( a ) = ∑ y ∈ Y k ( − a ⊤ y ) \min J_p\left(a \right)=\sum_{y\in Y^k}\left(-a^{\top}y \right) minJp(a)=yYk(ay)

最小化错分样本 y ∈ Y k y\in Y^k yYk 到分界面距离之和,梯度为

∇ J p ( a ) = ∑ y ∈ Y k ( − y ) \nabla J_p\left(a \right)=\sum_{y\in Y^k}\left(-y \right) Jp(a)=yYk(y)

迭代公式为

a ( k + 1 ) = a ( k ) + ρ k ∑ y ∈ Y k y a\left(k+1 \right)=a\left(k \right)+\rho_k\sum_{y\in Y^k}y a(k+1)=a(k)+ρkyYky

直到 a a a 不变

单样本感知器算法:循环处理每个样本,若 a ⊤ y k ⩽ γ a^{\top}y^k\leqslant \gamma aykγ,其中 γ ⩾ 0 \gamma \geqslant 0 γ0,则

a ( k + 1 ) = a ( k ) + y k a\left(k+1 \right)=a\left(k \right)+y^k a(k+1)=a(k)+yk

直到所有样本满足条件

多类问题:

  1. c − 1 c-1 c1 个非己: ω 1 \omega_1 ω1 与非 ω 1 \omega_1 ω1 ω 2 \omega_2 ω2 与非 ω 2 \omega_2 ω2,双非为 ω 3 \omega_3 ω3
  2. c ( c − 1 ) / 2 c\left(c-1 \right)/2 c(c1)/2 个两类: ω 1 − ω 2 \omega_1-\omega_2 ω1ω2, ω 1 − ω 3 \omega_1-\omega_3 ω1ω3, ω 2 − ω 3 \omega_2-\omega_3 ω2ω3 三条线
  3. 直接设计判别函数:
    R i = { x ∣ g i ( x ) > g j ( x ) ,   ∀   j ≠ i } \mathcal{R}_i=\left\{ x|g_i(x)>g_j(x),~\forall~j\ne i \right\} Ri={xgi(x)>gj(x),  j=i}

5 支持向量机SVM

判别式模型:直接利用样本计算判别函数

5.1 线性可分情形

样本集合:

T = { ( x i , y i ) } i = 1 N T=\left\{ \left(x_i,y_i \right)\right\}_{i=1}^{N} T={(xi,yi)}i=1N

其中

y i = { 1 , i f   x i ∈ ω 1 − 1 , i f   x i ∈ ω 2 y_i= \begin{cases} 1, &\mathrm{if}~x_i\in \omega_1\\ -1, &\mathrm{if}~x_i\in \omega_2\\ \end{cases} yi={1,1,if xiω1if xiω2

线性判别函数:

y i ( w ⊤ x i + b ) ⩾ 1 ,   ∀   i y_i\left(w^{\top}x_i+b \right)\geqslant 1,~\forall~i yi(wxi+b)1,  i

margin

ρ = 2 ∥ w ∥ \rho=\frac{2}{\|w\|} ρ=w2

优化问题:

min ⁡ { 1 2 w ⊤ w ∣ y i ( w ⊤ x i + b ) ⩾ 1 , i = 1 , … , N } \min \left\{\frac{1}{2}w^{\top}w|y_i\left(w^{\top}x_i+b \right)\geqslant 1, i=1,\dots ,N \right\} min{21wwyi(wxi+b)1,i=1,,N}

Lagrange 函数为

L ( w , b , α ) = 1 2 w ⊤ w − ∑ i = 1 N α i [ y i ( w ⊤ x i + b ) − 1 ] L\left(w,b,\alpha \right)=\frac{1}{2}w^{\top}w-\sum_{i=1}^{N}\alpha_i\left[y_i\left(w^{\top}x_i+b \right)-1 \right] L(w,b,α)=21wwi=1Nαi[yi(wxi+b)1]

梯度条件:

w = ∑ i = 1 N α i y i x i ,   ∑ i = 1 N α i y i = 0 w=\sum_{i=1}^{N}\alpha_iy_ix_i,~\sum_{i=1}^{N}\alpha_iy_i=0 w=i=1Nαiyixi, i=1Nαiyi=0

对偶函数:

Q ( α ) = ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i ⊤ x j Q\left(\alpha \right)=\sum_{i=1}^{N}\alpha_i-\frac{1}{2}\sum_{i=1}^{N}\sum_{j=1}^{N}\alpha_i\alpha_jy_iy_jx_{i}^{\top}x_j Q(α)=i=1Nαi21i=1Nj=1Nαiαjyiyjxixj

对偶问题:

max ⁡ { Q ( α ) ∣ ∑ i = 1 N α i y i = 0 ,   α ⩾ 0 } \max \left\{ Q\left(\alpha \right)|\sum_{i=1}^{N}\alpha_iy_i=0,~\alpha \geqslant 0 \right\} max{Q(α)i=1Nαiyi=0, α0}

支持向量:互补松弛

α i ∗ [ y i ( < w ∗ , x i > + b ) − 1 ] = 0 ,   α i ∗ ≠ 0 \alpha_{i}^{*}\left[y_i\left(\left< w^*,x_i \right> +b \right)-1 \right] =0,~\alpha_{i}^{*}\ne 0 αi[yi(w,xi+b)1]=0, αi=0

支持向量机:

f ( x ) = s g n ( ∑ i α i ∗ y i x i ⊤ x + b ∗ ) ∈ { − 1 , + 1 } f(x)=\mathrm{sgn} \left(\sum_i\alpha_{i}^{*}y_ix_{i}^{\top}x+b^* \right)\in \left\{ -1,+1 \right\} f(x)=sgn(iαiyixix+b){1,+1}

5.2 线性不可分情形

Soft margin: y i ( w ⊤ x i + b ) ⩾ 1 − ξ i ,   ∀   i y_i\left(w^{\top}x_i+b \right)\geqslant 1-\xi_i,~\forall~i yi(wxi+b)1ξi,  i

松弛变量:

{ 0 ⩽ ξ i ⩽ 1 , i f   v i o l a t e d ξ i > 1 , i f   m i s c l a s s i f i e d \begin{cases} 0\leqslant \xi_i\leqslant 1, &\mathrm{if}~\mathrm{violated}\\ \xi_i>1, &\mathrm{if}~\mathrm{misclassified} \end{cases} {0ξi1,ξi>1,if violatedif misclassified

优化问题:错分率上界 ∑ i ξ i \sum_i\xi_i iξi,tradeoff C C C

min ⁡    1 2 w ⊤ w + C ∑ i ξ i s . t .    y i ( w ⊤ x i + b ) ⩾ 1 − ξ i ,   ∀   i ξ i ⩾ 0 ,   ∀   i \begin{aligned} \min~~&\frac{1}{2}w^{\top}w+C\sum_i\xi_i\\ \mathrm{s.t.}~~& y_i\left(w^{\top}x_i+b \right)\geqslant 1-\xi_i,~\forall~i\\ &\xi_i\geqslant 0,~\forall~i \end{aligned} min  s.t.  21ww+Ciξiyi(wxi+b)1ξi,  iξi0,  i

无约束形式:

min ⁡   1 2 w ⊤ w + C ∑ i L ( w , b ; x i , y i ) \min~\frac{1}{2}w^{\top}w+C\sum_iL\left(w,b;x_i,y_i \right) min 21ww+CiL(w,b;xi,yi)

其中 Hinge 损失函数为

L ( w , b ; x i , y i ) = max ⁡ { 1 − y i ( w ⊤ x i + b ) , 0 } L\left(w,b;x_i,y_i \right)=\max \left\{ 1-y_i\left(w^{\top}x_i+b \right),0 \right\} L(w,b;xi,yi)=max{1yi(wxi+b),0}

对偶问题:

max ⁡ { Q ( α ) ∣ ∑ i = 1 N α i y i = 0 ,   0 ⩽ α ⩽ C } \max \left\{ Q\left(\alpha \right)|\sum_{i=1}^{N}\alpha_iy_i=0,~0\leqslant \alpha \leqslant C \right\} max{Q(α)i=1Nαiyi=0, 0αC}

5.3 非线性情形 Kernel SVM

广义线性可分:低维空间 L L L 升到高维空间 H H H 使样本线性可分

升维原因:输入空间 L L L 一般不是正常的特征空间

核函数:

K ( x i , x j ) = < Φ ( x i ) , Φ ( x j ) > K\left(x_i,x_j \right)=\left< \Phi \left(x_i \right),\Phi \left(x_j \right)\right> K(xi,xj)=Φ(xi),Φ(xj)

其中 Φ : L → H \Phi :L\rightarrow H Φ:LH

多项式核函数:

K ( x , y ) = ( γ < x , y > + r ) p , γ > 0 K\left(x,y \right)=\left(\gamma \left< x,y \right> +r \right)^p, \gamma >0 K(x,y)=(γx,y+r)p,γ>0

径向基 RBF 核函数:

K ( x , y ) = exp ⁡ ( − ∥ x − y ∥ 2 2 σ 2 ) K\left(x,y \right)=\exp \left(-\frac{\left\| x-y \right\| ^2}{2\sigma ^2}\right) K(x,y)=exp(2σ2xy2)

Sigmiod 核函数:

K ( x , y ) = tanh ⁡ ( κ < x , y > − δ ) K\left(x,y \right)=\tanh \left(\kappa \left< x,y \right> -\delta \right) K(x,y)=tanh(κx,yδ)

对偶函数:

Q ( α ) = ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j K ( x i , x j ) Q\left(\alpha \right)=\sum_{i=1}^{N}\alpha_i-\frac{1}{2}\sum_{i=1}^{N}\sum_{j=1}^{N}\alpha_i\alpha_jy_iy_jK\left(x_i,x_j \right) Q(α)=i=1Nαi21i=1Nj=1NαiαjyiyjK(xi,xj)

对偶问题:

max ⁡ { Q ( α ) ∣ ∑ i = 1 N α i y i = 0 ,   0 ⩽ α ⩽ C } \max \left\{ Q\left(\alpha \right)|\sum_{i=1}^{N}\alpha_iy_i=0,~0\leqslant \alpha \leqslant C \right\} max{Q(α)i=1Nαiyi=0, 0αC}

非线性支持向量机:

f ( x ) = s g n ( ∑ i α i ∗ y i K ( x i , x ) + b ∗ ) f(x)=\mathrm{sgn} \left(\sum_i\alpha_{i}^{*}y_iK\left(x_i,x \right)+b^* \right) f(x)=sgn(iαiyiK(xi,x)+b)

5.4 SVM 几点改进

可微损失函数:

L ( w , b ; x i , y i ) = ( max ⁡ { 1 − y i ( w ⊤ x i + b ) , 0 } ) 2 L\left(w,b;x_i,y_i \right)=\left(\max \left\{ 1-y_i\left(w^{\top}x_i+b \right),0 \right\}\right)^2 L(w,b;xi,yi)=(max{1yi(wxi+b),0})2

L1 正则化:稀疏性

min ⁡ ∥ w ∥ 1 + C ∑ i L ( w , b ; x i , y i ) \min \left\| w \right\|_1+C\sum_iL\left(w,b;x_i,y_i \right) minw1+CiL(w,b;xi,yi)

多核学习:

K ( x , y ) = ∑ i = 1 m β i K i ( x , y ) K\left(x,y \right)=\sum_{i=1}^{m}\beta_iK_i\left(x,y \right) K(x,y)=i=1mβiKi(x,y)

其中

β i ⩾ 0 ,   ∑ i β i = 1 \beta_i\geqslant 0,~\sum_i\beta_i=1 βi0, iβi=1

6 近邻法与距离度量

6.1 最近邻法 (Nearest Neighbor)

思想:测试样本与距离它最近的样本属于同类

数据: c c c { ω 1 , … , ω c } \left\{ \omega_1,\dots ,\omega_c \right\} {ω1,,ωc},每类 N i N_i Ni 个样本

{ x i ( 1 ) , x i ( 2 ) , … , x i ( N i ) } \left\{ x_{i}^{\left(1 \right)},x_{i}^{\left(2 \right)},\dots ,x_{i}^{\left(N_i \right)} \right\} {xi(1),xi(2),,xi(Ni)}

判别函数:

g i ( x ) = min ⁡ k ∥ x − x i ( k ) ∥ , k = 1 , 2 , … , N i g_i(x)=\min_k\left\| x-x_{i}^{\left(k \right)} \right\| , k=1,2,\dots ,N_i gi(x)=kminxxi(k),k=1,2,,Ni

决策规则:

g j ( x ) = min ⁡ i g i ( x ) ⇒ x ∈ ω j g_j(x)=\min_ig_i(x)\Rightarrow x\in \omega_j gj(x)=imingi(x)xωj

Voronoi 区域:L2 范数为凸,L1 范数非凸

L2 范数 Voronoi 区域

证明:由余弦定理

a ⊤ b = ∥ a ∥ 2 + ∥ b ∥ 2 − ∥ a − b ∥ 2 2 a^{\top}b=\frac{\left\| a \right\| ^2+\left\| b \right\| ^2-\left\| a-b \right\| ^2}{2} ab=2a2+b2ab2

可知对 ξ 1 , ξ 2 ∈ V i \xi_1,\xi_2\in V_i ξ1,ξ2Vi

ξ = λ ξ 1 + ( 1 − λ ) ξ 2 ,   λ ∈ [ 0 , 1 ] \xi =\lambda \xi_1+\left(1-\lambda \right)\xi_2,~\lambda \in \left[0,1 \right] ξ=λξ1+(1λ)ξ2, λ[0,1]

∥ ξ − x i ∥ 2 = λ ∥ ξ 1 − x i ∥ 2 − λ ( 1 − λ ) ∥ ξ 1 − ξ 2 ∥ 2 + ( 1 − λ ) ∥ ξ 2 − x i ∥ 2 ⩽ ∥ ξ − x j ∥ 2 ,   ∀   j ≠ i \begin{aligned} \left\| \xi -x_i \right\| ^2 &=\lambda \left\| \xi_1-x_i \right\| ^2-\lambda \left(1-\lambda \right)\left\| \xi_1-\xi_2 \right\| ^2 +\left(1-\lambda \right)\left\| \xi_2-x_i \right\| ^2\\ &\leqslant \left\| \xi -x_j \right\| ^2,~\forall~j\ne i \end{aligned} ξxi2=λξ1xi2λ(1λ)ξ1ξ22+(1λ)ξ2xi2ξxj2,  j=i

平均错误率:

P N ( e ) = ∬ P N ( e ∣ x , x ′ ) p ( x ′ ∣ x ) d x ′ p ( x ) d x P_N\left(e \right)=\iint{P_N\left(e|x,x' \right)p\left(x'|x \right)\mathrm{d}x'p(x)\mathrm{d}x} PN(e)=PN(ex,x)p(xx)dxp(x)dx

渐进平均错误率:

P = lim ⁡ N → ∞ P N ( e ) P=\lim_{N\rightarrow \infty} P_N\left(e \right) P=NlimPN(e)

记 Bayes 错误率为 P ∗ P^* P, 则渐进平均错误率的范围

P ∗ ⩽ P ⩽ P ∗ ( 2 − c c − 1 P ∗ ) P^*\leqslant P\leqslant P^*\left(2-\frac{c}{c-1}P^*\right) PPP(2c1cP)

近邻法错误率与 Bayes 错误率对比

6.2 k k k-近邻法 ( k k k Nearest Neighbors)

思想:测试样本与距离它最近的 k k k 个样本中占优的类同类

算法:最近邻法寻找 k k k 个近邻, k i k_i ki 表示属于 ω i \omega_i ωi 的样本数,判别函数 g i ( x ) = k i g_i(x)=k_i gi(x)=ki,决策规则

g j ( x ) = max ⁡ i k i ⇒ x ∈ ω j g_j(x)=\max_ik_i\Rightarrow x\in \omega_j gj(x)=imaxkixωj

6.3 近邻法快速算法

思想:样本集分级分解成多个子集 (树状结构) ,每个子集 (结点) 可用较少几个量代表,通过将新样本与各结点比较排除大量候选样本,只与最终结点 (子集) 中逐个样本比较

6.4 压缩近邻法 (Condensing)

算法:关注两类边界附近的样本,初始 Grabbag 为全部样本

  1. 从 Grabbag 中选择一个样本放入 Store 中
  2. 用 Store 中样本以近邻法测试 Grabbag 中样本,若分错则将该样本放入 Store
  3. 重复 2) 直到 Grabbag 中没有样本再转到 Store 中,或 Grabbag 为空则停止
  4. 用 Store 中样本作为近邻法设计集

6.5 距离度量

距离定义:二元函数 D ( ⋅ , ⋅ ) D\left(\cdot ,\cdot \right) D(,)

  1. 自反性: D ( x , y ) = 0 ⇔ x = y D\left(x,y \right)=0\Leftrightarrow x=y D(x,y)=0x=y
  2. 对称性: D ( x , y ) = D ( y , x ) D\left(x,y \right)=D\left(y,x \right) D(x,y)=D(y,x)
  3. 三角不等式: D ( x , y ) + D ( y , z ) ⩾ D ( x , z ) D\left(x,y \right)+D\left(y,z \right)\geqslant D\left(x,z \right) D(x,y)+D(y,z)D(x,z)

注释:非负性 D ( x , y ) ⩾ 0 D\left(x,y \right)\geqslant 0 D(x,y)0 可由定义三条性质导出

Minkowski 距离度量:

D ( x , y ) = ( ∑ j = 1 d ∣ x j − y j ∣ s ) 1 / s ,   s ⩾ 1 D\left(x,y \right)=\left(\sum_{j=1}^{d}|x_j-y_j|^s \right)^{1/s},~s\geqslant 1 D(x,y)=(j=1dxjyjs)1/s, s1

欧氏距离:

D ( x , y ) = ∥ x − y ∥ 2 = ( x − y ) ⊤ ( x − y ) D\left(x,y \right)=\left\| x-y \right\|_2=\sqrt{\left(x-y \right)^{\top}\left(x-y \right)} D(x,y)=xy2=(xy)(xy)

Chebychev 距离:

D ( x , y ) = ∥ x − y ∥ ∞ = max ⁡ j ∣ x j − y j ∣ D\left(x,y \right)=\left\| x-y \right\|_{\infty}=\max_j|x_j-y_j| D(x,y)=xy=jmaxxjyj

马氏距离:可以表示样本距离对样本分布 (主要是方差) 的依赖性

D ( x , y ) = ( x − y ) ⊤ Σ − 1 ( x − y ) ,   Σ = A A ⊤ D\left(x,y \right)=\left(x-y \right)^{\top}\Sigma ^{-1}\left(x-y \right),~\Sigma =AA^{\top} D(x,y)=(xy)Σ1(xy), Σ=AA

且变换后等价于欧氏距离平方:

A − 1 : x ↦ x ′ ⇒ D ( x , y ) = ∥ x ′ − y ′ ∥ 2 2 A^{-1}:x\mapsto x'\Rightarrow D\left(x,y \right)=\left\| x'-y' \right\|_{2}^{2} A1:xxD(x,y)=xy22

概率分布相似性判据:基于类条件概率密度函数

  1. Bhattacharyya 距离:
    J B = − ln ⁡ ∫ [ p ( x ∣ ω 1 ) p ( x ∣ ω 2 ) ] 1 / 2 d x J_B=-\ln \int \left[p\left(x|\omega_1 \right)p\left(x|\omega_2 \right)\right] ^{1/2}\mathrm{d}x JB=ln[p(xω1)p(xω2)]1/2dx
  2. Chernoff 界限:
    J C = − ln ⁡ ∫ p s ( x ∣ ω 1 ) p 1 − s ( x ∣ ω 2 ) d x J_C=-\ln \int p^s\left(x|\omega_1 \right)p^{1-s}\left(x|\omega_2 \right)\mathrm{d}x JC=lnps(xω1)p1s(xω2)dx
  3. 散度:
    J D = ∫ [ p ( x ∣ ω 1 ) − p ( x ∣ ω 2 ) ] ln ⁡ p ( x ∣ ω 1 ) p ( x ∣ ω 2 ) d x J_D=\int \left[p\left(x|\omega_1 \right)-p\left(x|\omega_2 \right)\right] \ln\frac{p\left(x|\omega_1 \right)}{p\left(x|\omega_2 \right)} \mathrm{d}x JD=[p(xω1)p(xω2)]lnp(xω2)p(xω1)dx

散度定义来源:

D ( f 1 , f 2 ) = ∫ f 1 ( x ) ln ⁡ f 1 ( x ) f 2 ( x ) d x D\left(f_1,f_2 \right)=\int f_1(x)\ln\frac{f_1(x)}{f_2(x)} \mathrm{d}x D(f1,f2)=f1(x)lnf2(x)f1(x)dx

J D = D ( f 1 , f 2 ) + D ( f 2 , f 1 ) J_D=D\left(f_1,f_2 \right)+D\left(f_2,f_1 \right) JD=D(f1,f2)+D(f2,f1)

切距离:记 y y y 所处流形的切空间基矩阵为 T T T, 则切距离为

D ( x , y ) = min ⁡ a ∥ ( y + a T ) − x ∥ D\left(x,y \right)=\min_a\left\| \left(y+aT \right)-x \right\| D(x,y)=amin(y+aT)x

Holder 不等式:

∑ k = 1 n a k b k ⩽ ∥ a ∥ p ∥ b ∥ q ,   1 p + 1 q = 1 \sum_{k=1}^{n}a_kb_k\leqslant \left\| a \right\|_p\left\| b \right\|_q,~\frac{1}{p}+\frac{1}{q}=1 k=1nakbkapbq, p1+q1=1

Minkowski 不等式:

∥ a + b ∥ p ⩽ ∥ a ∥ p + ∥ b ∥ p ,   p ⩾ 1 \left\| a+b \right\|_p\leqslant \left\| a \right\|_p+\left\| b \right\|_p,~p\geqslant 1 a+bpap+bp, p1

7 特征提取与选择

模式识别系统构成:

  1. 数据获取→特征提取与选择→分类器设计
  2. 数据获取→特征提取与选择→测试

7.1 Fisher 线性判别

思想:把 d d d 维空间的样本投影到分开得最好的一条直线上

样本:

X = { x 1 , … , x N } = X 1 + X 2 X=\left\{ x_1,\dots ,x_N \right\} =X_1+X_2 X={x1,,xN}=X1+X2

其中

∣ X 1 ∣ = N 1 ,   ∣ X 2 ∣ = N 2 |X_1|=N_1,~|X_2|=N_2 X1=N1, X2=N2

降维: y n = w ⊤ x n y_n=w^{\top}x_n yn=wxn,寻找最好的投影方向即寻找 w w w

样本均值:

m i = 1 N i ∑ x ∈ X i x m_i=\frac{1}{N_i}\sum_{x\in X_i}x mi=Ni1xXix

类内离散度矩阵:

S i = ∑ x ∈ X i ( x − m i ) ( x − m i ) ⊤ S_i=\sum_{x\in X_i}\left(x-m_i \right)\left(x-m_i \right)^{\top} Si=xXi(xmi)(xmi)

总类内 (within-class) 离散度: S w = ∑ i S i S_w=\sum_iS_i Sw=iSi,一般可逆

类间 (between-class) 离散度:

S b = ( m 1 − m 2 ) ( m 1 − m 2 ) ⊤ S_b=\left(m_1-m_2 \right)\left(m_1-m_2 \right)^{\top} Sb=(m1m2)(m1m2)

一维投影空间:样本均值

m ~ i = 1 N i ∑ y ∈ Y i y \tilde{m}_i=\frac{1}{N_i}\sum_{y\in Y_i}y m~i=Ni1yYiy

类内离散度

S ~ i 2 = ∑ y ∈ Y i ( y − m ~ i ) 2 \tilde{S}_{i}^{2}=\sum_{y\in Y_i}\left(y-\tilde{m}_i \right)^2 S~i2=yYi(ym~i)2

总类内离散度

S ~ w = S ~ 1 2 + S ~ 2 2 \tilde{S}_w=\tilde{S}_{1}^{2}+\tilde{S}_{2}^{2} S~w=S~12+S~22

Fisher 准则函数:

J F ( w ) = ( m ~ 1 − m ~ 2 ) 2 S ~ 1 2 + S ~ 2 2 J_F\left(w \right)=\frac{\left(\tilde{m}_1-\tilde{m}_2 \right)^2}{\tilde{S}_{1}^{2}+\tilde{S}_{2}^{2}} JF(w)=S~12+S~22(m~1m~2)2

优化问题:广义 Rayleigh 商

max ⁡   J F ( w ) = w ⊤ S b w w ⊤ S w w \max~J_F\left(w \right)=\frac{w^{\top}S_bw}{w^{\top}S_ww} max JF(w)=wSwwwSbw

令分母为非零常数 w ⊤ S w w = c ≠ 0 w^{\top}S_ww=c\ne 0 wSww=c=0,可定义 Lagrange 函数

L ( w , λ ) = w ⊤ S b w − λ ( w ⊤ S w w − c ) L\left(w,\lambda \right)=w^{\top}S_bw-\lambda \left(w^{\top}S_ww-c \right) L(w,λ)=wSbwλ(wSwwc)

由梯度条件可得

S b w ∗ = λ S w w ∗ S_bw^*=\lambda S_ww^* Sbw=λSww

λ w ∗ = S w − 1 S b w ∗ = S w − 1 ( m 1 − m 2 ) R \begin{aligned} \lambda w^* &=S_{w}^{-1}S_bw^*\\ &=S_{w}^{-1}\left(m_1-m_2 \right)R \end{aligned} λw=Sw1Sbw=Sw1(m1m2)R

其中

R = ( m 1 − m 2 ) ⊤ w R=\left(m_1-m_2 \right)^{\top}w R=(m1m2)w

忽略比例因子 R / λ R/\lambda R/λ

w ∗ = S w − 1 ( m 1 − m 2 ) w^*=S_{w}^{-1}\left(m_1-m_2 \right) w=Sw1(m1m2)

一维分类:估计类条件概率密度函数,采用 Bayes 决策,或取决策边界

y 0 ( 1 ) = m ~ 1 + m ~ 2 2 y 0 ( 2 ) = N 2 m ~ 1 + N 1 m ~ 2 N \begin{aligned} y_{0}^{\left(1 \right)}&=\frac{\tilde{m}_1+\tilde{m}_2}{2}\\ y_{0}^{\left(2 \right)}&=\frac{N_2\tilde{m}_1+N_1\tilde{m}_2}{N} \end{aligned} y0(1)y0(2)=2m~1+m~2=NN2m~1+N1m~2

注释:Fisher 适合正态分布数据,若投影到平面则可把两类切割开组成多类, S w S_w Sw 不可逆则数据有冗余,降维到可逆

多类 Fisher 线性判别: K K K 类则最多可选取 K − 1 K-1 K1 个特征

7.2 类别可分性判据

基于类内类间距离:

J 2 = T r ( S w − 1 S b ) J 3 = ln ⁡ ∣ S b ∣ ∣ S w ∣ J 4 = T r ( S b ) T r ( S w ) J 5 = ∣ S w + S b ∣ ∣ S w ∣ \begin{aligned} J_2&=\mathrm{Tr}\left(S_{w}^{-1}S_b \right)\\ J_3&=\ln\frac{|S_b|}{|S_w|}\\ J_4&=\frac{\mathrm{Tr}\left(S_b \right)}{\mathrm{Tr}\left(S_w \right)}\\ J_5&=\frac{|S_w+S_b|}{|S_w|}\\ \end{aligned} J2J3J4J5=Tr(Sw1Sb)=lnSwSb=Tr(Sw)Tr(Sb)=SwSw+Sb

基于概率分布: J B ,   J C ,   J D J_B,~J_C,~J_D JB, JC, JD

基于熵函数:

J c α = ( 2 1 − α − 1 ) − 1 [ ∑ i = 1 c P α ( ω i ∣ x ) − 1 ] J_{c}^{\alpha}=\left(2^{1-\alpha}-1 \right)^{-1}\left[\sum_{i=1}^{c}P^{\alpha}\left(\omega_i|x \right)-1 \right] Jcα=(21α1)1[i=1cPα(ωix)1]

其中参数 α → 1 \alpha \rightarrow 1 α1:Shannon 熵, α = 2 \alpha =2 α=2:平方熵

7.3 特征提取

降维: x ∈ R D ↦ y ∈ R d x\in \mathbb{R} ^D\mapsto y\in \mathbb{R} ^d xRDyRd

y = W ⊤ x ,   W ∈ R D × d y=W^{\top}x,~W\in \mathbb{R} ^{D\times d} y=Wx, WRD×d

优化问题: S w − 1 S b S_{w}^{-1}S_b Sw1Sb d d d 个特征值对应的特征向量组成 W W W

7.4 特征选择

问题:单独最好的 d d d 个特征组合起来不一定是最好的

最优搜索算法:穷举法,分枝定界法

次优搜索算法:单独最优特征组合

  1. 单独最优特征组合:
    J ( x ) = ∑ i J ( x i )   o r   ∏ i J ( x i ) J(x)=\sum_iJ\left(x_i \right)~\mathrm{or}~ \prod_iJ\left(x_i \right) J(x)=iJ(xi) or iJ(xi)
  2. 顺序前进法:单独最好+合作最好+合作最好
  3. 顺序后退法:全部-合作最不好-合作次不好
  4. l l l r r r 法:增加合作最好的,删除合作最不好的
  5. 智能算法:模拟退火,遗传算法,Tabu 搜索

Relief 算法:

输入:训练集 X = { x i ∈ R d } i = 1 N X=\left\{ x_i\in \mathbb{R} ^d \right\}_{i=1}^{N} X={xiRd}i=1N

随机选择样本数 n n n

设定 d d d 维权重向量

w = [ w 1 , w 2 , … , w D ] ⊤ = 0 w=[w_1,w_2,…,w_D]^{\top}=0 w=[w1,w2,,wD]=0

for i = 1 i=1 i=1 to n n n

X X X 中随机选择一个样本 x x x

计算 X X X 中离 x x x 最近的同类样本 h h h,不同类的样本 m m m

for j = 1 j=1 j=1 to d d d

w j = w j − d i f f ( j , x , h ) n + d i f f ( j , x , m ) n w_j=w_j-\frac{\mathrm{diff}(j,x,h)}{n}+\frac{\mathrm{diff}(j,x,m)}{n} wj=wjndiff(j,x,h)+ndiff(j,x,m)

return w w w

输出:权重 w w w 最大的前 k k k 个特征

差异计算: d i f f ( j , x , h ) \mathrm{diff(}j,x,h) diff(j,x,h) 表示 x x x h h h 在第 j j j 维上绝对值的差异

  1. 离散变量:
    d i f f ( j , x , h ) = 1 − [ x j = h j ] \mathrm{diff}(j,x,h)=1-\left[x_j=h_j \right] diff(j,x,h)=1[xj=hj]
  2. 连续变量:
    d i f f ( j , x , h ) = ∣ x j − h j ∣ x j max ⁡ − x j min ⁡ \mathrm{diff}(j,x,h)=\frac{|x_j-h_j|}{x_{j\max}-x_{j\min}} diff(j,x,h)=xjmaxxjminxjhj

8 深度学习

8.1 Multi-Layer Perception, MLP

Perceptron:单个神经元→感知器

感知器

x = [ x 1 , … , x p ] ⊤ , w = [ w 1 , … , w p ] ⊤ x=\left[x_1,\dots ,x_p \right] ^{\top}, w=\left[w_1,\dots ,w_p \right] ^{\top} x=[x1,,xp],w=[w1,,wp]

神经元输入 v = w ⊤ x − θ v=w^{\top}x-\theta v=wxθ

y = s g n ( v ) = { + 1 , i f   v ⩾ 0 − 1 , i f   v < 0 y=\mathrm{sgn}(v)= \begin{cases} +1, &\mathrm{if}~v\geqslant 0\\ -1, &\mathrm{if}~v< 0\\ \end{cases} y=sgn(v)={+1,1,if v0if v<0

激活函数:

  1. 符号函数:
    ϕ ( x ) = s g n ( x ) \phi(x)=\mathrm{sgn}(x) ϕ(x)=sgn(x)
  2. Sigmoid:
    ϕ ( x ) = 1 1 + exp ⁡ ( − x ) \phi(x)=\frac{1}{1+\exp(-x)} ϕ(x)=1+exp(x)1
  3. 分段线性函数
  4. ReLU:
    ϕ ( x ) = { x , i f   x ⩾ 0 0 , i f   x < 0 \phi (x)= \begin{cases} x, &\mathrm{if}~x\geqslant0\\ 0, &\mathrm{if}~x<0\\ \end{cases} ϕ(x)={x,0,if x0if x<0
  5. Leaky ReLU:
    ϕ ( x ) = { x , i f   x ⩾ 0 a x , i f   x < 0 \phi (x)= \begin{cases} x, &\mathrm{if}~x\geqslant 0\\ ax, &\mathrm{if}~x<0\\ \end{cases} ϕ(x)={x,ax,if x0if x<0
  6. Softmax:
    ϕ ( x ) = exp ⁡ ( x ) 1 ⊤ exp ⁡ ( x ) \phi(x)=\frac{\exp(x)}{1^{\top}\exp(x)} ϕ(x)=1exp(x)exp(x)
  7. 双曲正切:
    ϕ ( x ) = tanh ⁡ ( x ) = e x − e − x e x + e − x \phi (x)=\tanh (x)=\frac{\mathrm{e}^x-\mathrm{e}^{-x}}{\mathrm{e}^x+\mathrm{e}^{-x}} ϕ(x)=tanh(x)=ex+exexex

Multi-Layer Perceptron:多层感知机网络

逼近能力: ∀ f ∈ C [ 0 , 1 ] p , ϵ > 0 , ∃   M , α , θ , w \forall f\in C^{\left[0,1 \right] ^p}, \epsilon >0, \exists~M,\alpha ,\theta ,w fC[0,1]p,ϵ>0, M,α,θ,w

F ( x ) = ∑ i = 1 M α i ϕ ( ∑ j = 1 p w i j x j − θ i ) F(x)=\sum_{i=1}^{M}\alpha_i\phi \left(\sum_{j=1}^{p}w_{ij}x_j-\theta_i \right) F(x)=i=1Mαiϕ(j=1pwijxjθi)

使得

∣ F ( x ) − f ( x ) ∣ < ϵ |F(x)-f(x)|<\epsilon F(x)f(x)<ϵ

标签:one-hot vector

y = [ 0 , … , 0 , 1 , 0 , … , 0 ] y=\left[0,\dots ,0,1,0,\dots ,0 \right] y=[0,,0,1,0,,0]

交叉熵损失: L = − y ⊤ ln ⁡ y ^ L=-y^{\top}\ln \hat{y} L=ylny^ y ^ \hat{y} y^ 为网络输出判别结果

均方误差损失:样本集 X = { x n } n = 1 N X=\left\{ x_n \right\}_{n=1}^{N} X={xn}n=1N,标签为 { d ( n ) } \left\{ d\left(n \right)\right\} {d(n)}

输出端第 j j j 个单元对第 n n n 个样本的输出: y j ( n ) y_j\left(n \right) yj(n)

j j j 个单元的误差信号:

e j ( n ) = d j ( n ) − y j ( n ) e_j\left(n \right)=d_j\left(n \right)-y_j\left(n \right) ej(n)=dj(n)yj(n)

输出端对第 n n n 个样本的平方误差:

E ( n ) = 1 2 ∑ j = 1 c e j 2 ( n ) E\left(n \right)=\frac{1}{2}\sum_{j=1}^{c}e_{j}^{2}\left(n \right) E(n)=21j=1cej2(n)

全部 N N N 个样本的平方误差均值:

E a v = 1 N ∑ n = 1 N E ( n ) E_{\mathrm{av}}=\frac{1}{N}\sum_{n=1}^{N}E\left(n \right) Eav=N1n=1NE(n)

逐个样本学习的 BP 算法:

  1. 误差对输出单元 j j j 的权重 { w j i ,   ∀   i } \left\{ w_{ji},~\forall~i \right\} {wji,  i} 求梯度

v j ( n ) = ∑ i = 0 p w j i ( n ) y i ( n ) v_j\left(n \right)=\sum_{i=0}^{p}w_{ji}\left(n \right)y_i\left(n \right) vj(n)=i=0pwji(n)yi(n)

y j ( n ) = ϕ j ( v j ( n ) ) y_j\left(n \right)=\phi_j\left(v_j\left(n \right)\right) yj(n)=ϕj(vj(n))

可得

∂ E ( n ) ∂ w j i ( n ) = ∂ E ( n ) ∂ e j ( n ) ∂ e j ( n ) ∂ y j ( n ) ∂ y j ( n ) ∂ v j ( n ) ∂ v j ( n ) ∂ w j i ( n ) = − e j ( n ) ϕ j ′ ( v j ( n ) ) y i ( n ) ≜ δ j ( n ) y i ( n ) \begin{aligned} \frac{\partial E\left(n \right)}{\partial w_{ji}\left(n \right)} &=\frac{\partial E\left(n \right)}{\partial e_j\left(n \right)}\frac{\partial e_j\left(n \right)}{\partial y_j\left(n \right)}\frac{\partial y_j\left(n \right)}{\partial v_j\left(n \right)}\frac{\partial v_j\left(n \right)}{\partial w_{ji}\left(n \right)}\\ &=-e_j\left(n \right)\phi_{j}^{'}\left(v_j\left(n \right)\right)y_i\left(n \right)\\ &\triangleq \delta_j\left(n \right)y_i\left(n \right) \end{aligned} wji(n)E(n)=ej(n)E(n)yj(n)ej(n)vj(n)yj(n)wji(n)vj(n)=ej(n)ϕj(vj(n))yi(n)δj(n)yi(n)

权重修正:

w j i = w j i + η δ j ( n ) y i ( n ) w_{ji}=w_{ji}+\eta \delta_j\left(n \right)y_i\left(n \right) wji=wji+ηδj(n)yi(n)

其中 δ j ( n ) \delta_j\left(n \right) δj(n) 称为局部梯度

  1. 误差对内部隐单元 j j j 的权重 { w j i ,   ∀   i } \left\{ w_{ji},~\forall~i \right\} {wji,  i} 求梯度

局部梯度为

δ j ( n ) = − ∂ E ( n ) ∂ y j ( n ) ∂ y j ( n ) ∂ v j ( n ) = − ∂ E ( n ) ∂ y j ( n ) ϕ j ′ ( v j ( n ) ) \begin{aligned} \delta_j\left(n \right) &=-\frac{\partial E\left(n \right)}{\partial y_j\left(n \right)}\frac{\partial y_j\left(n \right)}{\partial v_j\left(n \right)}\\ &=-\frac{\partial E\left(n \right)}{\partial y_j\left(n \right)}\phi_{j}^{'}\left(v_j\left(n \right)\right) \end{aligned} δj(n)=yj(n)E(n)vj(n)yj(n)=yj(n)E(n)ϕj(vj(n))

其中

∂ E ( n ) ∂ y j ( n ) = ∑ k ∂ E ( n ) ∂ e k ( n ) ∂ e k ( n ) ∂ y k ( n ) ∂ y k ( n ) ∂ v k ( n ) ∂ v k ( n ) ∂ y j ( n ) = − ∑ k e k ϕ ′ ( v k ( n ) ) w k j ( n ) = − ∑ k δ k ( n ) w k j ( n ) \begin{aligned} \frac{\partial E\left(n \right)}{\partial y_j\left(n \right)} &=\sum_k{\frac{\partial E\left(n \right)}{\partial e_k\left(n \right)}\frac{\partial e_k\left(n \right)}{\partial y_k\left(n \right)}\frac{\partial y_k\left(n \right)}{\partial v_k\left(n \right)}\frac{\partial v_k\left(n \right)}{\partial y_j\left(n \right)}}\\ &=-\sum_ke_k\phi '\left(v_k\left(n \right)\right)w_{kj}\left(n \right)\\ &=-\sum_k\delta_k\left(n \right)w_{kj}\left(n \right) \end{aligned} yj(n)E(n)=kek(n)E(n)yk(n)ek(n)vk(n)yk(n)yj(n)vk(n)=kekϕ(vk(n))wkj(n)=kδk(n)wkj(n)

因此

δ j ( n ) = ϕ j ′ ( v j ( n ) ) ∑ k δ k ( n ) w k j ( n ) \delta_j\left(n \right)=\phi_{j}^{'}\left(v_j\left(n \right)\right)\sum_k\delta_k\left(n \right)w_{kj}\left(n \right) δj(n)=ϕj(vj(n))kδk(n)wkj(n)

权重修正:

w j i = w j i + η δ j ( n ) y i ( n ) w_{ji}=w_{ji}+\eta \delta_j\left(n \right)y_i\left(n \right) wji=wji+ηδj(n)yi(n)

BP 问题:局部极值且收敛缓慢,需大量数据已知网络结构

深度问题:更深的深度可以具有更好的表示性但优化更困难

例题: k k k 类,输入 x ∈ R d x\in \mathbb{R} ^d xRd,one-hot 标签 y ∈ R k y\in \mathbb{R} ^k yRk,交叉熵损失网络为

y ^ = f ( x ; W 1 , b 1 , W 2 , b 2 ) h 1 = W 1 ⊤ x + b 1 a 1 = R e L U ( h 1 ) h 2 = [ a 1 x ] a 2 = h 2 ⊙ m h 3 = W 2 ⊤ a 2 + b 2 y ^ = S o f t m a x ( h 3 ) \begin{aligned} \hat{y}&=f\left(x;W_1,b_1,W_2,b_2 \right)\\ h_1&=W_{1}^{\top}x+b_1 \\ a_1&=\mathrm{ReLU}\left(h_1 \right)\\ h_2&=\begin{bmatrix} a_1\\ x \end{bmatrix} \\ a_2&=h_2\odot m \\ h_3&=W_{2}^{\top}a_2+b_2 \\ \hat{y}&=\mathrm{Softmax}\left(h_3 \right) \end{aligned} y^h1a1h2a2h3y^=f(x;W1,b1,W2,b2)=W1x+b1=ReLU(h1)=[a1x]=h2m=W2a2+b2=Softmax(h3)

则损失函数对各个变量的梯度为

y ^ ˉ = − y y ^ h ˉ 3 = y ^ − y W ˉ 2 = a 2 h ˉ 3 ⊤ b ˉ 2 = h ˉ 3 a ˉ 2 = W 2 h ˉ 3 h ˉ 2 = m ⊙ a ˉ 2 a ˉ 1 = [ I    0 ] h ˉ 2 h ˉ 1 = d i a g [ 1 + s g n ( h 1 ) 2 ] a ˉ 1 W ˉ 1 = x h ˉ 1 ⊤ b ˉ 1 = h ˉ 1 x ˉ = W 1 h ˉ 1 + [ 0    I ] h ˉ 2 \begin{aligned} \bar{\hat{y}}&=-y\hat{y} \\ \bar{h}_3&=\hat{y}-y \\ \bar{W}_2&=a_2\bar{h}_{3}^{\top} \\ \bar{b}_2&=\bar{h}_3 \\ \bar{a}_2&=W_2\bar{h}_3\\ \bar{h}_2&=m\odot \bar{a}_2 \\ \bar{a}_1&=\left[I~~0 \right] \bar{h}_2 \\ \bar{h}_1&=\mathrm{diag}\left[\frac{1+\mathrm{sgn} \left(h_1 \right)}{2}\right]\bar{a}_1\\ \bar{W}_1&=x\bar{h}_{1}^{\top} \\ \bar{b}_1&=\bar{h}_1 \\ \bar{x}&=W_1\bar{h}_1+\left[0~~I\right] \bar{h}_2 \end{aligned} y^ˉhˉ3Wˉ2bˉ2aˉ2hˉ2aˉ1hˉ1Wˉ1bˉ1xˉ=yy^=y^y=a2hˉ3=hˉ3=W2hˉ3=maˉ2=[I  0]hˉ2=diag[21+sgn(h1)]aˉ1=xhˉ1=hˉ1=W1hˉ1+[0  I]hˉ2

8.2 Convolutional Neural Networks (CNN)

Dropout:随机删除某个节点的连接,以重点关注其余节点

例题:输入 x ∈ R C i n × H × W x\in \mathbb{R} ^{C_{\mathrm{in}}\times H\times W} xRCin×H×W,

u 1 = C o n v 2 d ( C i n , C o u t , k ) ( x ) h 1 = M a x P o i l 2 d ( N ) ( u 1 ) a 1 = R e L U ( h 1 ) u 2 = F l a t t e n ( a 1 ) h 2 = W 2 ⊤ u 2 + b 2 y ^ = S o f t m a x ( h 2 ) \begin{aligned} u_1&=\mathrm{Conv}2\mathrm{d}\left(C_{\mathrm{in}},C_{\mathrm{out}},k \right)(x)\\ h_1&=\mathrm{MaxPoil}2\mathrm{d}\left(N \right)\left(u_1 \right) \\ a_1&=\mathrm{ReLU}\left(h_1 \right) \\ u_2&=\mathrm{Flatten}\left(a_1 \right)\\ h_2&=W_{2}^{\top}u_2+b_2 \\ \hat{y}&=\mathrm{Softmax} \left(h_2 \right)\\ \end{aligned} u1h1a1u2h2y^=Conv2d(Cin,Cout,k)(x)=MaxPoil2d(N)(u1)=ReLU(h1)=Flatten(a1)=W2u2+b2=Softmax(h2)

则损失函数对各个变量的梯度为

h ˉ 2 = y ^ − y W ˉ 2 = a 2 h ˉ 2 ⊤ b ˉ 2 = h ˉ 2 u ˉ 2 = W 2 h ˉ 2 a ˉ 1 ( i , j , k ) = W 2 ( n ( i , j , k ) , : ) h ˉ 2 \begin{aligned} \bar{h}_2&=\hat{y}-y \\ \bar{W}_2&=a_2\bar{h}_{2}^{\top}\\ \bar{b}_2&=\bar{h}_2 \\ \bar{u}_2&=W_2\bar{h}_2 \\ \bar{a}_{1}^{\left(i,j,k \right)}&=W_{2}^{\left(n\left(i,j,k \right),: \right)}\bar{h}_2 \end{aligned} hˉ2Wˉ2bˉ2uˉ2aˉ1(i,j,k)=y^y=a2hˉ2=hˉ2=W2hˉ2=W2(n(i,j,k),:)hˉ2

其中

n ( i , j , k ) = ( i − 1 ) H m p W m p + ( j − 1 ) W m p + k n\left(i,j,k \right)=\left(i-1 \right)H_{\mathrm{mp}}W_{\mathrm{mp}}+\left(j-1 \right)W_{\mathrm{mp}}+k n(i,j,k)=(i1)HmpWmp+(j1)Wmp+k

h ˉ 1 ( r , s , t ) = 1 + s g n ( h 1 ( r , s , t ) ) 2 a ˉ 1 ( r , s , t ) \bar{h}_{1}^{(r,s,t)}=\frac{1+\mathrm{sgn} \left(h_{1}^{(r,s,t)} \right)}{2} \bar{a}_{1}^{(r,s,t)} hˉ1(r,s,t)=21+sgn(h1(r,s,t))aˉ1(r,s,t)

卷积:

u 1 ( j , : , : ) = b 1 ( j , : , : ) + ∑ k = 1 C i n W 1 ( j , k , : , : ) ⋆ x ( k , : , : ) u_{1}^{\left(j,:,: \right)}=b_{1}^{\left(j,:,: \right)}+\sum_{k=1}^{C_{\mathrm{in}}}W_{1}^{\left(j,k,:,: \right)}\star x^{\left(k,:,: \right)} u1(j,:,:)=b1(j,:,:)+k=1CinW1(j,k,:,:)x(k,:,:)

其中 ⋆ \star 符号表示二维互相关

例题:

a i = S i g m o i d ( W i ⊤ a i − 1 + b i ) ,   i = 1 , … , l a_i=\mathrm{Sigmoid}\left(W_{i}^{\top}a_{i-1}+b_i \right),~i=1,\dots ,l ai=Sigmoid(Wiai1+bi), i=1,,l

a 0 = x , a l = y ^ a_0=x, a_l=\hat{y} a0=x,al=y^

σ ( z ) ≜ S i g m o i d ( z ) \sigma \left(z \right)\triangleq \mathrm{Sigmoid}\left(z \right) σ(z)Sigmoid(z)

σ ′ ( z ) = d i a g ( σ ( z ) ⊙ [ 1 − σ ( z ) ] ) \sigma '\left(z \right)=\mathrm{diag}\left(\sigma \left(z \right)\odot \left[1-\sigma \left(z \right)\right] \right) σ(z)=diag(σ(z)[1σ(z)])

因此

W ˉ 1 = x [ ( ∏ i = 2 l W i ) ( ∏ j = 1 l σ ′ ( a j ) ) y ^ ˉ ] ⊤ \bar{W}_1=x\left[\left(\prod_{i=2}^{l}W_i \right)\left(\prod_{j=1}^{l}\sigma '\left(a_j \right)\right)\bar{\hat{y}} \right] ^{\top} Wˉ1=x[(i=2lWi)(j=1lσ(aj))y^ˉ]

其中

σ ′ ( a j ) ⩽ 1 4 \sigma '\left(a_j \right)\leqslant \frac{1}{4} σ(aj)41

则会出现梯度消失的问题

ReLU:

W ˉ 1 = x [ ( ∏ i = 2 l W i ) ( ∏ j = 1 l d i a g [ 1 + s g n ( a j ) 2 ] ) y ^ ˉ ] ⊤ \bar{W}_1=x\left[\left(\prod_{i=2}^{l}W_i \right)\left(\prod_{j=1}^{l}\mathrm{diag}\left[\frac{1+\mathrm{sgn} \left(a_j \right)}{2}\right] \right)\bar{\hat{y}} \right] ^{\top} Wˉ1=x[(i=2lWi)(j=1ldiag[21+sgn(aj)])y^ˉ]

若行列式 d e t ( W i ) \mathrm{det}(W_i) det(Wi) 过小,则其连乘部分会消失,整体的梯度仍然会消失

ResNet:

a i = S i g m o i d ( W i ⊤ a i − 1 + b i ) + a i − 1 , i = 1 , … , l a_i=\mathrm{Sigmoid}\left(W_{i}^{\top}a_{i-1}+b_i \right)+a_{i-1},i=1,\dots ,l ai=Sigmoid(Wiai1+bi)+ai1,i=1,,l

则梯度为

W ˉ 1 = x [ σ ′ ( a 1 ) ( ∏ i = 2 l [ W i σ ′ ( a i ) + I ] ) y ^ ˉ ] ⊤ \bar{W}_1=x\left[\sigma '\left(a_1 \right)\left(\prod_{i=2}^{l}\left[ W_i\sigma '\left(a_i \right)+I \right] \right)\bar{\hat{y}} \right] ^{\top} Wˉ1=x[σ(a1)(i=2l[Wiσ(ai)+I])y^ˉ]

连乘的每一项都包含单位矩阵 I I I,有效缓解了梯度消失的问题

8.3 Recurrent Neural Networks (RNN)

目的:处理序列数据,如语言,轨迹,金融数据等

网络结构及展开:

RNN 网络结构

更新方程:

h ( t ) = ϕ ( W h ( t − 1 ) + U x ( t ) + b ) y ^ ( t ) = σ ( V h ( t ) + c ) \begin{aligned} h^{\left(t \right)}&=\phi \left(Wh^{\left(t-1 \right)}+Ux^{\left(t \right)}+b \right)\\ \hat{y}^{\left(t \right)}&=\sigma \left(Vh^{\left(t \right)}+c \right) \end{aligned} h(t)y^(t)=ϕ(Wh(t1)+Ux(t)+b)=σ(Vh(t)+c)

BP 算法:换个符号,并考虑 E t = d t − y t E_t=d_t-y_t Et=dtyt

RNN 网络结构

y t = ϕ ( v t ) , v t = σ ( w v y t − 1 + w x x t ) y_t=\phi \left(v_t \right), v_t=\sigma \left(w_vy_{t-1}+w_xx_t \right) yt=ϕ(vt),vt=σ(wvyt1+wxxt),这里 σ ( x ) ≜ x \sigma (x)\triangleq x σ(x)x

∂ E ∂ w v = ∑ t = 1 s ∂ E t ∂ w v ∂ E t ∂ w v = ∑ k = 1 t ∂ E t ∂ y t ∂ y t ∂ v t ∂ v t ∂ v k ∂ v k ∂ w v ∂ E t ∂ y t = ∂ ( d t − y t ) ∂ y t = − 1 ∂ y t ∂ v t = ϕ ′ ( v t ) ∂ v t ∂ v k = ∏ i = k + 1 t ∂ v i ∂ v i − 1 = ∏ i = k + 1 t ∂ v i ∂ y i − 1 ∂ y i − 1 ∂ v i − 1 = ∏ i = k + 1 t w v ϕ ′ ( v i − 1 ) ∂ v k ∂ w v = y k − 1 \begin{aligned} \frac{\partial E}{\partial w_v}&=\sum_{t=1}^s{\frac{\partial E_t}{\partial w_v}} \\ \frac{\partial E_t}{\partial w_v}&=\sum_{k=1}^t{\frac{\partial E_t}{\partial y_t}\frac{\partial y_t}{\partial v_t}\frac{\partial v_t}{\partial v_k}\frac{\partial v_k}{\partial w_v}}\\ \frac{\partial E_t}{\partial y_t}&=\frac{\partial \left(d_t-y_t \right)}{\partial y_t}=-1 \\ \frac{\partial y_t}{\partial v_t}&=\phi '\left(v_t \right) \\ \frac{\partial v_t}{\partial v_k} &=\prod_{i=k+1}^t{\frac{\partial v_i}{\partial v_{i-1}}}\\ &=\prod_{i=k+1}^t{\frac{\partial v_i}{\partial y_{i-1}}\frac{\partial y_{i-1}}{\partial v_{i-1}}}\\ &=\prod_{i=k+1}^t{w_v\phi '\left(v_{i-1} \right)}\\ \frac{\partial v_k}{\partial w_v}&=y_{k-1} \end{aligned} wvEwvEtytEtvtytvkvtwvvk=t=1swvEt=k=1tytEtvtytvkvtwvvk=yt(dtyt)=1=ϕ(vt)=i=k+1tvi1vi=i=k+1tyi1vivi1yi1=i=k+1twvϕ(vi1)=yk1

8.4 Long Short Term Memory (LSTM)

网络结构:对 RNN 的输入输出和展开过程均加入门控

LSTM 网络结构

更新过程: σ ( ⋅ ) ≜ s i g m o i d ( ⋅ ) \sigma \left(\cdot \right)\triangleq \mathrm{sigmoid}\left(\cdot \right) σ()sigmoid()

Input gate: i t = σ ( w x i x t + w h i h t − 1 + b i ) i_t=\sigma \left(w_{xi}x_t+w_{hi}h_{t-1}+b_i \right) it=σ(wxixt+whiht1+bi)

Forget gate: f t = σ ( w x f x t + w h f h t − 1 + b f ) f_t=\sigma \left(w_{xf}x_t+w_{hf}h_{t-1}+b_f \right) ft=σ(wxfxt+whfht1+bf)

Output gate: o t = σ ( w x o x t + w h o h t − 1 + b o ) o_t=\sigma \left(w_{xo}x_t+w_{ho}h_{t-1}+b_o \right) ot=σ(wxoxt+whoht1+bo)

External input gate:

g t = tanh ⁡ ( w x g x t + w h g h t − 1 + b g ) g_t=\tanh \left(w_{xg}x_t+w_{hg}h_{t-1}+b_g \right) gt=tanh(wxgxt+whght1+bg)

输出:

c t = f t ⊙ c t − 1 + i t ⊙ g t h t = o t ⊙ tanh ⁡ ( c t ) \begin{aligned} c_t&=f_t\odot c_{t-1}+i_t\odot g_t\\ h_t&=o_t\odot \tanh \left(c_t \right) \end{aligned} ctht=ftct1+itgt=ottanh(ct)

梯度:

c ˉ t = h ˉ t o t [ 1 − tanh ⁡ 2 ( c t ) ] w ˉ i x = ∑ t i ˉ t i t ( 1 − i t ) x t \begin{aligned} \bar{c}_t&=\bar{h}_to_t\left[1-\tanh ^2\left(c_t \right)\right] \\ \bar{w}_{ix}&=\sum_t\bar{i}_ti_t\left(1-i_t \right)x_t \end{aligned} cˉtwˉix=hˉtot[1tanh2(ct)]=tiˉtit(1it)xt

8.5 Attention

注意力机制:加权平均,权重表示不同的重视程度

网络参数:键值对 { k i , v i } \left\{ k_i,v_i \right\} {ki,vi},查询向量 q q q

注意力:

c ( { k i , v i } , q ) = ∑ i s i m i l a r i t y ( q , k i ) ⋅ v i = ∑ i α i v i \begin{aligned} c\left(\left\{ k_i,v_i \right\} ,q \right)&=\sum_i\mathrm{similarity}\left(q,k_i \right)\cdot v_i\\ &=\sum_i\alpha_iv_i \end{aligned} c({ki,vi},q)=isimilarity(q,ki)vi=iαivi

相似性度量: α i \alpha_i αi 的计算可使用内积,余弦相似度,MLP,softmax:

α i = exp ⁡ ( k i ⊤ q ) ∑ i exp ⁡ ( k i ⊤ q ) \alpha_i=\frac{\exp \left(k_{i}^{\top}q \right)}{\sum_i\exp \left(k_{i}^{\top}q \right)} αi=iexp(kiq)exp(kiq)

8.6 Graph Convolutional Neural Networks (GNN)

邻接矩阵: A = [ a i j ] ,   a i j = [ i → j ] A=\left[a_{ij} \right],~a_{ij}=\left[i\rightarrow j \right] A=[aij], aij=[ij]

度矩阵: D = d i a g ( d i ) D=\mathrm{diag}\left(d_i \right) D=diag(di),出度 d i = ∑ j a i j d_i=\sum_ja_{ij} di=jaij,入度 d j = ∑ i a i j d_j=\sum_ia_{ij} dj=iaij

简单 Propagation:

H i + 1 = σ ( D − 1 A H i W i ) H^{i+1}=\sigma \left(D^{-1}AH^iW^i \right) Hi+1=σ(D1AHiWi)

9 非监督学习:降维

降维:给定一组高维样本,寻找一个低维空间表示这些样本

9.1 主成分分析 (PCA, Principal Component Analysis)

理论推导:最小均方误差的角度

向量 x ∈ R n x\in \mathbb{R} ^n xRn 视为随机变量,完备正交归一向量基: { u i } i = 1 ∞ \left\{ u_i \right\}_{i=1}^{\infty} {ui}i=1,则

x = ∑ i = 1 ∞ c i u i x=\sum_{i=1}^{\infty}c_iu_i x=i=1ciui

若用 d ≪ n d\ll n dn 维来表示有

x ^ = ∑ i = 1 d c i u i \hat{x}=\sum_{i=1}^{d}c_iu_i x^=i=1dciui

误差为

ϵ = E [ ( x − x ^ ) ⊤ ( x − x ^ ) ] = E [ ∑ i = d + 1 ∞ c i 2 ] \epsilon =\mathbb{E} \left[\left(x-\hat{x} \right)^{\top}\left(x-\hat{x} \right)\right] =\mathbb{E} \left[\sum_{i=d+1}^{\infty}c_{i}^{2} \right] ϵ=E[(xx^)(xx^)]=E[i=d+1ci2]

c i = x ⊤ u i c_i=x^{\top}u_i ci=xui,则

ϵ = E [ ∑ i = d + 1 ∞ u i ⊤ x x ⊤ u i ] = ∑ i = d + 1 ∞ u i ⊤ E [ x x ⊤ ] u i = ∑ i = d + 1 ∞ u i ⊤ Ψ u i \begin{aligned} \epsilon &=\mathbb{E} \left[\sum_{i=d+1}^{\infty}u_{i}^{\top}xx^{\top}u_i \right] \\ &=\sum_{i=d+1}^{\infty}u_{i}^{\top}\mathbb{E} \left[xx^{\top} \right] u_i\\ &=\sum_{i=d+1}^{\infty}u_{i}^{\top}\Psi u_i\\ \end{aligned} ϵ=E[i=d+1uixxui]=i=d+1uiE[xx]ui=i=d+1uiΨui

其中

Ψ ≜ E [ x x ⊤ ] \Psi \triangleq \mathbb{E} \left[xx^{\top} \right] ΨE[xx]

零均值化:须保证 E [ x ] = 0 \mathbb{E} \left[x \right] =0 E[x]=0,则 Ψ \Psi Ψ 为协方差矩阵

优化问题: min ⁡ ϵ \min \epsilon minϵ,其 Lagrange 函数为

L = ∑ i = d + 1 ∞ u i ⊤ Ψ u i − ∑ i = d + 1 ∞ λ i ( u i ⊤ u i − 1 ) L=\sum_{i=d+1}^{\infty}u_{i}^{\top}\Psi u_i-\sum_{i=d+1}^{\infty}\lambda_i\left(u_{i}^{\top}u_i-1 \right) L=i=d+1uiΨuii=d+1λi(uiui1)

梯度条件:

∂ L ∂ u j = 2 ( Ψ u j − λ j u j ) = 0 \frac{\partial L}{\partial u_j}=2\left(\Psi u_j-\lambda_ju_j \right)=0 ujL=2(Ψujλjuj)=0

Ψ u j = λ j u j \Psi u_j=\lambda_ju_j Ψuj=λjuj

K-L 变换坐标系: Ψ \Psi Ψ d d d 个最大特征值对应的特征向量

K-L 变换: x x x u 1 , u 2 , … , u d u_1,u_2,\dots ,u_d u1,u2,,ud 上展开系数

x ′ = [ c 1 , c 2 , … , c d ] ⊤ x'=\left[c_1,c_2,\dots ,c_d \right] ^{\top} x=[c1,c2,,cd]

性质:视展开系数 x ′ x' x 为随机向量,

E [ c i c j ] = λ i u i ⊤ u j = λ i δ i j \mathbb{E} \left[c_ic_j \right] =\lambda_iu_{i}^{\top}u_j=\lambda_i\delta_{ij} E[cicj]=λiuiuj=λiδij

λ i = E [ c i 2 ] = E [ ( c i − E ( c i ) ) 2 ] = σ i 2 \lambda_i=\mathbb{E} \left[c_{i}^{2} \right] =\mathbb{E} \left[\left(c_i-\mathbb{E} \left(c_i \right)\right)^2 \right] =\sigma_{i}^{2} λi=E[ci2]=E[(ciE(ci))2]=σi2

即特征值 λ i \lambda_i λi 表示数据降维投影在一维特征向量 u i u_i ui 方向上的方差,所以 K-L 变换就是把数据投影到 d d d 个正交的序贯最大方差方向上去

降维维度确定:根据精度要求与计算、存储能力确定

9.2 多维尺度变换 (MDS, Multi-Dimensional Scaling)

理论推导:数据点 x r ∈ R p , r = 1 , 2 , … , n x_r\in \mathbb{R} ^p, r=1,2,\dots ,n xrRp,r=1,2,,n,假定零均值

内积 b r s = x r ⊤ x s b_{rs}=x_{r}^{\top}x_s brs=xrxs X = [ x 1 , … , x n ] ⊤ X=\left[x_1,\dots ,x_n \right] ^{\top} X=[x1,,xn],内积矩阵为 B = X X ⊤ B=XX^{\top} B=XX,平方距离

d r s 2 = ( x r − x s ) ⊤ ( x r − x s ) = x r ⊤ x r + x s ⊤ x s − 2 x r ⊤ x s \begin{aligned} d_{rs}^{2} &=\left(x_r-x_s \right)^{\top}\left(x_r-x_s \right)\\ &=x_{r}^{\top}x_r+x_{s}^{\top}x_s-2x_{r}^{\top}x_s \end{aligned} drs2=(xrxs)(xrxs)=xrxr+xsxs2xrxs

平方距离矩阵

D = c 1 ⊤ + 1 c ⊤ − 2 B D=c1^{\top}+1c^{\top}-2B D=c1+1c2B

其中

c = [ x 1 ⊤ x 1 , … , x n ⊤ x n ] c=\left[x_{1}^{\top}x_1,\dots ,x_{n}^{\top}x_n \right] c=[x1x1,,xnxn]

中心化矩阵:

J = I − 1 n 1 1 ⊤ J=I-\frac{1}{n}11^{\top} J=In111

易知

( c 1 ⊤ ) J = J ( 1 c ⊤ ) = 0 \left(c1^{\top} \right)J=J\left(1c^{\top} \right)=0 (c1)J=J(1c)=0

且由 ∑ r x r = 0 \sum_rx_r=0 rxr=0 可得

J X = X − 1 n 1 1 ⊤ X = X JX=X-\frac{1}{n}11^{\top}X=X JX=Xn111X=X

因此

J B J = J X X ⊤ J ⊤ = B JBJ=JXX^{\top}J^{\top}=B JBJ=JXXJ=B

J D J = J ( c 1 ⊤ ) J + J ( 1 c ⊤ ) J − 2 J B J = − 2 B \begin{aligned} JDJ&=J\left(c1^{\top} \right)J+J\left(1c^{\top} \right)J-2JBJ\\ &=-2B \\ \end{aligned} JDJ=J(c1)J+J(1c)J2JBJ=2B

所以

B = − 1 2 J D J B=-\frac{1}{2}JDJ B=21JDJ

SVD: B = V Λ V ⊤ B=V\Lambda V^{\top} B=VΛV,其中 V = [ v 1 , … , v p ] V=\left[v_1,\dots ,v_p \right] V=[v1,,vp] Λ = d i a g ( λ 1 , … , λ p ) \Lambda =\mathrm{diag}\left(\lambda_1,\dots ,\lambda_p \right) Λ=diag(λ1,,λp),则 X = V Λ 1 / 2 X=V\Lambda ^{1/2} X=VΛ1/2,若降维 k < p k < p k<p 则取前 k k k 个特征值与特征向量

降维维度确定:

1 2 ∑ r ∑ s d r s 2 = n ∑ r x r ⊤ x r = n T r ( B ) = n ∑ r λ r \begin{aligned} \frac{1}{2}\sum_r\sum_sd_{rs}^{2} &=n\sum_rx_{r}^{\top}x_r\\ &=n\mathrm{Tr}\left(B \right)\\ &=n\sum_r\lambda_r\\ \end{aligned} 21rsdrs2=nrxrxr=nTr(B)=nrλr

可知为保持总体距离降低较少需取较大的特征值,总体距离降低比例为

ρ = ∑ i = 1 p λ i ∑ i = 1 n − 1 λ i \rho=\frac{\displaystyle\sum_{i=1}^{p}\lambda_i}{\displaystyle\sum_{i=1}^{n-1}\lambda_i} ρ=i=1n1λii=1pλi

可通过固定比例为 ρ = 95 % \rho=95\% ρ=95% 选取 p p p

9.3 等距特征映射 (ISOMAP, Isometric Feature Mapping)

基本思想:利用测地距离代替欧氏距离,保留样本分布信息

算法:

  1. 找到 k k k 近邻 (或欧氏距离小于 ϵ \epsilon ϵ) 点并计算欧式距离 d X ( i , j ) d_X\left(i,j \right) dX(i,j),定义图 G G G,若样本点为 k k k 近邻则连线,连线长度为 d X ( i , j ) d_X\left(i,j \right) dX(i,j)
  2. 计算图上任意两点间最短距离 D G = [ d G ( i , j ) ] D_G=\left[d_G\left(i,j \right)\right] DG=[dG(i,j)]
  3. 通过 MDS 多维尺度变换降维到 d d d 维空间

9.4 局部线性嵌入 (LLE, Locally Linear Embedding)

基本思想:高维数据集中分布在潜在的低维的平滑流形上,每个样本点及其近邻分布在流形上的一个局部线性区域

  1. 寻找每个样本点的近邻

  2. 解优化问题
    min ⁡ ϵ ( W ) = ∑ i ∣ x i − ∑ j W i j x j ∣ 2 \min \epsilon \left(W \right)=\sum_i\left|x_i-\sum_jW_{ij}x_j\right|^2 minϵ(W)=ixijWijxj2
    求得 W W W

  3. 固定 W W W,求降维向量
    y i ⇐ min ⁡ ϵ ( W ) = ∑ i ∣ x i − ∑ j W i j x j ∣ 2 y_i\Leftarrow \min \epsilon \left(W \right)=\sum_i\left|x_i-\sum_jW_{ij}x_j\right|^2 yiminϵ(W)=ixijWijxj2

10 非监督学习:聚类

10.1 C C C 均值方法 (K-means)

基于样本的方法:根据样本间相似性,使准则函数 J e J_e Je 取最值

思路:

  1. 把样本分成一些不同的类别
  2. 不断调整样本使得相似的样本聚集在一起
  3. GMM 的 EM 算法取极限的特例

算法:

min ⁡ J e = ∑ i = 1 c ∑ y ∈ Γ i ∥ y − m i ∥ 2 \min J_e=\sum_{i=1}^c{\sum_{y\in \Gamma_i}^{}{\left\| y-m_i \right\| ^2}} minJe=i=1cyΓiymi2

  1. 把样本初始划分成 C C C 类,计算各类均值 m 1 , … , m C m_1,\dots ,m_C m1,,mC J e J_e Je
  2. 选任意一个样本 y y y,设 y ∈ Γ i y\in \Gamma_i yΓi
  3. N i = 1 N_i=1 Ni=1,则该类只有1个元素则无需移出,转 2)
  4. 计算当 y y y 被调整到其它各类时 J e J_e Je 的变化量:

ρ j = { N j N j + 1 ∥ y − m j ∥ 2 , i f   j ≠ i N i N i − 1 ∥ y − m j ∥ 2 , o . w . \rho_j= \begin{cases} \dfrac{N_j}{N_j+1}\left\| y-m_j \right\| ^2, &\mathrm{if}~j\ne i\\ \dfrac{N_i}{N_i-1}\left\| y-m_j \right\| ^2, &\mathrm{o}.\mathrm{w}. \end{cases} ρj=Nj+1Njymj2,Ni1Niymj2,if j=io.w.

  1. 如果 ρ k ⩽ ρ j , ∀ j \rho_k\leqslant \rho_j, \forall j ρkρj,j,则移动 y : Γ i → Γ k y:\Gamma_i\rightarrow \Gamma_k y:ΓiΓk
  2. 更新均值 m i , m k m_i, m_k mi,mk 和均方误差 J e J_e Je
  3. 若连续迭代 N N N 次不变则算法终止,否则转 2)

问题:

  • C C C 的确定: J e − C J_e-C JeC 曲线肘点
  • 初始划分:先选择一些代表点作为聚类的核心,然后把其余的点按某种方法分到各类中去,初始划分不当可能会使得问题陷入局部最优解

10.2 多级聚类方法 (Hierarchical Clustering)

算法:

  1. 每个样本为一类
  2. 最近的两类合并,直到只剩一类

两类之间的距离度量:

  • 最近距离:

    Δ ( Γ i , Γ j ) = min ⁡ y ∈ Γ i , y ~ ∈ Γ j δ ( y , y ~ ) \Delta \left(\Gamma_i,\Gamma_j \right)=\min_{y\in \Gamma_i, \tilde{y}\in \Gamma_j}\delta \left(y,\tilde{y} \right) Δ(Γi,Γj)=yΓi,y~Γjminδ(y,y~)

    不适合两类之间距离较近且中间有个别离群点,适合带状分布的数据

  • 最远距离:

    Δ ( Γ i , Γ j ) = max ⁡ y ∈ Γ i , y ~ ∈ Γ j δ ( y , y ~ ) \Delta \left(\Gamma_i,\Gamma_j \right)=\max_{y\in \Gamma_i, \tilde{y}\in \Gamma_j}\delta \left(y,\tilde{y} \right) Δ(Γi,Γj)=yΓi,y~Γjmaxδ(y,y~)

    与最近距离效果相反

  • 均值距离:

    Δ ( Γ i , Γ j ) = δ ( m i , m j ) \Delta \left(\Gamma_i,\Gamma_j \right)=\delta \left(m_i,m_j \right) Δ(Γi,Γj)=δ(mi,mj)

    效果介于以上两者之间

分类数量:根据聚类树判断,最长或次长跳跃前的水平

分级聚类示例

10.3 谱聚类 (Spectral Clustering)

样本点集: x 1 , … , x n x_1,\dots ,x_n x1,,xn

相似性度量: s i j = s ( x i , x j ) ⩾ 0 s_{ij}=s\left(x_i,x_j \right)\geqslant 0 sij=s(xi,xj)0

相似性图:加权无向图 G = ( V , E ) G=\left(V,E \right) G=(V,E)

加权邻接矩阵: W = ( w i j ) W=\left(w_{ij} \right) W=(wij)

边权重: w i j = s i j w_{ij}=s_{ij} wij=sij

度矩阵: D = d i a g ( d 1 , … , d n ) D=\mathrm{diag}\left(d_1,\dots ,d_n \right) D=diag(d1,,dn),其中度:

d i = ∑ j = 1 n w i j d_i=\sum_{j=1}^{n}w_{ij} di=j=1nwij

Graph Laplacian:未归一化 L = D − W L=D-W L=DW,归一化 L r w = D − 1 L L_{rw}=D^{-1}L Lrw=D1L

性质:对称,半正定,最小特征值0,对应特征向量为1

构造相似性图:

  1. ϵ \epsilon ϵ-近邻图:任意两个距离小于 ϵ \epsilon ϵ 的点之间存在一条边

  2. k k k-近邻图:若 v i v_i vi v j v_j vj k k k 近邻,则存在一条边 (无向化)

  3. 对称 k k k-近邻图:若两个点互为 k k k 近邻,则存在一条边

  4. 全连接图:相似性大于 0 的两个点之间存在一条边

算法:

  1. 输入相似性矩阵 S ∈ R n × n S\in \mathbb{R} ^{n\times n} SRn×n,聚类类别数 k k k
  2. 构造相似性图,设加权邻接矩阵为
    W = [ w i j ] = [ s i j ] W=[w_{ij}]=[s_{ij}] W=[wij]=[sij]
  3. 计算未归一化 (归一化) Graph Laplacian L ( L r w ) L\left(L_{rw} \right) L(Lrw)
  4. 计算 L ( L u = λ D u ) L\left(Lu=\lambda Du \right) L(Lu=λDu) 的前 k k k 个最小特征值对应的特征向量 u 1 , … , u k u_1,\dots ,u_k u1,,uk,并记
    U ≜ [ u 1 , … , u k ] U\triangleq \left[u_1,\dots ,u_k \right] U[u1,,uk]
  5. y i ∈ R k y_i\in \mathbb{R} ^k yiRk U U U 的第 i i i 行构成的向量,称为谱嵌入向量
  6. 使用 C C C 均值聚类方法将点 { y i } \left\{ y_i \right\} {yi} 聚为 k k k
    C 1 , … , C k C_1,\dots ,C_k C1,,Ck
  7. 输出最终聚类为 A 1 , … , A k A_1,\dots ,A_k A1,,Ak,其中
    A i = { j : y j ∈ C i } A_i=\left\{ j:y_j\in C_i \right\} Ai={j:yjCi}

推导:寻找图的划分,使得不同点集间边权重较小,同一点集内边权重较大,

min ⁡ c u t ( A 1 , … , A k ) = 1 2 ∑ i = 1 k W ( A i , A ˉ i ) \min \mathrm{cut}\left(A_1,\dots ,A_k \right) =\frac{1}{2}\sum_{i=1}^{k}W\left(A_i,\bar{A}_i \right) mincut(A1,,Ak)=21i=1kW(Ai,Aˉi)

其中 ∣ A ∣ |A| A 表示 A A A 中顶点的个数, v o l ( A ) \mathrm{vol}\left(A \right) vol(A) 表示 A A A 中顶点度的和

R a t i o C u t ( A 1 , … , A k ) = 1 2 ∑ i = 1 k W ( A i , A ˉ i ) ∣ A i ∣ = 1 2 ∑ i = 1 k c u t ( A i , A ˉ i ) ∣ A i ∣ \begin{aligned} \mathrm{RatioCut}\left(A_1,\dots ,A_k \right) &=\frac{1}{2}\sum_{i=1}^k{\frac{W\left(A_i,\bar{A}_i \right)}{|A_i|}}\\ &=\frac{1}{2}\sum_{i=1}^k{\frac{\mathrm{cut}\left(A_i,\bar{A}_i \right)}{|A_i|}} \end{aligned} RatioCut(A1,,Ak)=21i=1kAiW(Ai,Aˉi)=21i=1kAicut(Ai,Aˉi)

N C u t ( A 1 , … , A k ) = 1 2 ∑ i = 1 k W ( A i , A ˉ i ) v o l ( A i ) = 1 2 ∑ i = 1 k c u t ( A i , A ˉ i ) v o l ( A i ) \begin{aligned} \mathrm{NCut}\left(A_1,\dots ,A_k \right) &=\frac{1}{2}\sum_{i=1}^k{\frac{W\left(A_i,\bar{A}_i \right)}{\mathrm{vol}\left(A_i \right)}}\\ &=\frac{1}{2}\sum_{i=1}^k{\frac{\mathrm{cut}\left(A_i,\bar{A}_i \right)}{\mathrm{vol}\left(A_i \right)}} \end{aligned} NCut(A1,,Ak)=21i=1kvol(Ai)W(Ai,Aˉi)=21i=1kvol(Ai)cut(Ai,Aˉi)

松弛离散约束后,RatioCut 对应归一化 Graph Laplacian,Ncut 对应未归一化 Graph Laplacian

注记:

  • 谱聚类往往对相似性图及参数选择比较敏感,且存在尺度问题,一般 k k k 近邻图可以比较好的连接不同尺度下的数据,通常作为首选
  • 参数选择应该使相似性图是连通的或连通分量数量较少
  • 尽量选择归一化的 Graph Laplacian,理由:考虑聚类的原则,最小化 RatioCut 只考虑了使得不同点集间的边的权重较小,而最小化 Ncut 在某种程度上考虑了同一点集内的边权重较大

聚类方法的选择:

  • 根据样本的分布特性和数量综合考虑
  • 若样本点近似成球状分布或者样本数很大时,则用 K-means 算法能取得较好效果,且速度快
  • 当样本数量较少时,可以选择基于最近邻图的谱聚类方法,其聚类的效果较好,而且不像分级聚类那样受距离度量选择的影响大

11 决策树

11.1 决策树概览

决策树示例

11.2 CART (Classification And Repression Trees)

分类和回归树算法 CART:一种通用的树生长算法

分枝数目:与属性有关,但决策树都等价于二叉树

构造决策树原则:简单性,获得的决策树简单、紧凑

节点不纯度 Impurity: i ( N ) i\left(N \right) i(N) 表示节点 N N N 的不纯度

  • 熵不纯度:
    i ( N ) = − ∑ j P ( w j ) log ⁡ 2 P ( w j ) i\left(N \right)=-\sum_jP\left(w_j \right)\log_2P\left(w_j \right) i(N)=jP(wj)log2P(wj)
    其中 P ( w j ) P\left(w_j \right) P(wj) 表示节点 N N N 处属于 w j w_j wj 类样本占节点总样本数的比例
  • Gini 不纯度:
    i ( N ) = ∑ i ≠ j P ( w i ) P ( w j ) = 1 − ∑ j P 2 ( w j ) \begin{aligned} i\left(N \right) &=\sum_{i\ne j}P\left(w_i \right)P\left(w_j \right)\\ &=1-\sum_jP^2\left(w_j \right) \end{aligned} i(N)=i=jP(wi)P(wj)=1jP2(wj)
  • 错分不纯度:被错分的最小概率
    i ( N ) = 1 − max ⁡ j P ( w j ) i\left(N \right)=1-\max_jP\left(w_j \right) i(N)=1jmaxP(wj)

不纯度度量对比

特征选择:选择能够使不纯度下降最多的特征做查询,不纯度下降

Δ i ( N ) = i ( N ) − P L i ( N L ) − ( 1 − P L ) i ( N R ) \Delta i\left(N \right)=i\left(N \right)-P_Li\left(N_L \right)-\left(1-P_L \right)i\left(N_R \right) Δi(N)=i(N)PLi(NL)(1PL)i(NR)

其中 P L P_L PL 是分配到 N L N_L NL 节点样本数量占 N N N 节点样本数量比例

局部贪婪算法:只考虑了单一特征带来的不纯度下降

多重分枝:

Δ i ( N ) = i ( N ) − ∑ k = 1 B P k i ( N k ) \Delta i\left(N \right)=i\left(N \right)-\sum_{k=1}^{B}P_ki\left(N_k \right) Δi(N)=i(N)k=1BPki(Nk)

其中 B B B 为分枝数目, P k P_k Pk 是节点 N k N_k Nk 处样本占 N N N 处样本比例,但

B ↑ ⇒ Δ i ( N ) ↑ B\uparrow \Rightarrow \Delta i\left(N \right)\uparrow BΔi(N)

故调整

Δ i B ( N ) = Δ i ( N ) − ∑ k = 1 B P k log ⁡ 2 P k \Delta i_B\left(N \right)= \frac{\Delta i\left(N \right)}{-\displaystyle\sum_{k=1}^{B}P_k\log_2P_k} ΔiB(N)=k=1BPklog2PkΔi(N)

分枝停止准则:

  • 传统方法,验证或交叉验证
  • 阈值方法,当所有候选分支的不纯度下降量都小于这个阈值,则停止分支

阈值方法优点:

  • 全部样本都可用来训练
  • 树的各个深度上都可能存在叶节点,这是一棵非平衡树

阈值方法缺点:

  • 很难预先设定一个合适的阈值,因为树的分类准确性与阈值大小通常不是简单的函数关系

后剪枝:使用全部训练集数据,但计算量会增加

  1. 树充分生长,直到叶节点都有最小的不纯度值
  2. 对所有相邻的成对叶节点,如果消去它们能引起不纯度增长,则消去它们,并令其公共父节点成为新的叶节点

叶节点标号:用叶节点样本中大多数样本的类别来标号

不稳定性:树的生长对训练样本的微小位置变动很敏感,很大程度上是由离散性和节点选择时的贪婪性所导致的

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mBfyjNml-1627973780642)(https://gitee.com/jingxuanyang/picture/raw/master/2021-8-1/1627808769097-11.2(1)].jpg)

特征选择:选择特征使得决策面简单,可尝试线性组合

多元决策树:当实值数据样本分布复杂时,平行于特征轴分界面的效率和推广性都可能很差,可采用一般的线性分类器

属性缺失:对主分支外的属性做替代分枝并根据相似性排序

11.3 ID3 (Interactive Dichotomizer-3)

算法:实值变量按区间离散化,节点分支数等于其属性的离散取值个数,决策树生长到所有叶节点都为纯,无剪枝

11.4 C4.5

算法概述:对于实值变量的处理和 CART 相同,对名义属性采用多重分支,不纯度的计算采用 Δ i B ( N ) \Delta i_B\left(N \right) ΔiB(N)

与 CART 区别:对属性缺失数据的处理,所有 B B B 个分支进行判别,最终分类结果是 M M M 个叶节点加权决策的结果

基于规则的剪枝:尝试删除规则任意一个前件,取性能提高最大的子规则,重复删除直到无法修剪,按性能降序排序

优点:

  • 允许在特定节点处考虑上下文信息
  • 靠近根节点处的节点也可能被剪枝,根节点与叶节点等价,比叶节点合并剪枝方法更加通用
  • 简化的规则可用于更好的类别表达

12 多分类器方法 (Ensemble)

12.1 Bagging (Bootstrap Aggregating)

算法:基于训练样本的分类器构造

  1. 从训练集 N N N 个样本中随机抽取 (Bootstrap) 出 n n n 个样本
  2. 用这 n n n 个样本训练一个分类器 h h h,然后放回这些样本
  3. 重复步骤 1) 与 2) L L L 次,得到分类器
    h 1 , h 2 , … , h L h_1, h_2,\dots ,h_L h1,h2,,hL
  4. 使用 L L L 个分类器进行判别,决策层投票得到最终结果

基分类器:选择不稳定的分类器,决策树,神经网络等

12.2 AdaBoost (Adaptive Boosting)

算法:基于训练样本的分类器构造

输入: X = { ( x 1 , y 1 ) , … , ( x N , y N ) } X=\left\{ \left(x_1,y_1 \right),\dots ,\left(x_N,y_N \right)\right\} X={(x1,y1),,(xN,yN)},基分类器 C C C,循环次数 L L L

初始化:样本 x i x_i xi 权重

w 1 ( i ) = 1 N w_1(i)=\frac{1}{N} w1(i)=N1

for l = 1 l=1 l=1 to L L L

权重归一化

p l ( i ) = w l ( i ) ∑ i w l ( i ) ,   ∀   i = 1 , 2 , … , N p_l(i)=\frac{w_l(i)}{\displaystyle\sum_iw_l(i)},~\forall~i=1,2,\dots ,N pl(i)=iwl(i)wl(i),  i=1,2,,N

根据 p l ( i ) p_l(i) pl(i) 采样生成样本集合 s l s_l sl,训练分类器 h l h_l hl

计算 h l h_l hl 分类错误率

ϵ l = ∑ i p l ( i ) δ ˉ i y \epsilon_l=\sum_ip_l(i)\bar{\delta}_{iy} ϵl=ipl(i)δˉiy

其中

δ ˉ i y ≜ [ h l ( x i ) ≠ y i ] \bar{\delta}_{iy}\triangleq \left[h_l\left(x_i \right)\ne y_i \right] δˉiy[hl(xi)=yi]

计算权重系数的参数

a l = 1 2 ln ⁡ 1 − ϵ l ϵ l a_l=\frac{1}{2}\ln\frac{1-\epsilon_l}{\epsilon_l} al=21lnϵl1ϵl

更新权重

w l + 1 ( i ) = w l ( i ) e − a l δ i y + w l ( i ) e a l ( 1 − δ i y ) w_{l+1}(i)=w_l(i)\mathrm{e}^{-a_l}\delta_{iy}+w_l(i)\mathrm{e}^{a_l}(1-\delta_{iy}) wl+1(i)=wl(i)ealδiy+wl(i)eal(1δiy)

输出:加权投票

h ( x ) = a r g m a x y ∈ Y ∑ l = 1 L a l [ h l ( x ) = y ] h(x)=\mathrm{argmax}_{y\in Y}\sum_{l=1}^{L}a_l[h_l(x)=y] h(x)=argmaxyYl=1Lal[hl(x)=y]

特性:随着算法进行,聚焦于容易分错而富含信息的样本

错误率:二分类 Y = { 1 , − 1 } Y=\left\{ 1,-1 \right\} Y={1,1} T T T 轮迭代后样本概率分布为

p T + 1 ( i ) = p T ( i ) e − α T y i h T ( i ) Z T = p 1 ( i ) e − y i < α , h ( i ) > ∏ j = 1 T Z j = e − y i < α , h ( i ) > N ∏ j = 1 T Z j \begin{aligned} p_{T+1}(i) &=p_T(i)\frac{\mathrm{e}^{-\alpha_Ty_ih_T(i)}}{Z_T}\\ &=p_1(i)\frac{\mathrm{e}^{-y_i\left< \alpha ,h(i)\right>}}{\displaystyle\prod_{j=1}^{T}Z_j}\\ &=\frac{\mathrm{e}^{-y_i\left< \alpha ,h(i)\right>}}{N\displaystyle\prod_{j=1}^{T}Z_j} \end{aligned} pT+1(i)=pT(i)ZTeαTyihT(i)=p1(i)j=1TZjeyiα,h(i)=Nj=1TZjeyiα,h(i)

∑ i p T + 1 ( i ) = 1 \sum_ip_{T+1}(i)=1 ipT+1(i)=1

∏ j = 1 T Z j = 1 N ∑ i = 1 N e − y i < α , h ( i ) > \prod_{j=1}^{T}Z_j=\frac{1}{N}\sum_{i=1}^N\mathrm{e}^{-y_i\left< \alpha ,h(i)\right>} j=1TZj=N1i=1Neyiα,h(i)

i i i 个样本错误标志

ϵ i = 1 − [ h T ( x i ) = y i ] ⩽ e − y i < α , h ( i ) > \begin{aligned} \epsilon_i &=1-\left[h_T\left(x_i \right)=y_i \right] \\ &\leqslant \mathrm{e}^{-y_i\left< \alpha ,h(i)\right>} \end{aligned} ϵi=1[hT(xi)=yi]eyiα,h(i)

则总错误率是分类错误率的一个上界

ϵ = 1 N ∑ i = 1 N ϵ i ⩽ 1 N ∑ i = 1 N e − y i < α , h ( i ) > = ∏ j = 1 T Z j \begin{aligned} \epsilon &=\frac{1}{N}\sum_{i=1}^N\epsilon_i\\ &\leqslant\frac{1}{N}\sum_{i=1}^N\mathrm{e}^{-y_i\left< \alpha ,h(i)\right>}\\ &=\prod_{j=1}^{T}Z_j \end{aligned} ϵ=N1i=1NϵiN1i=1Neyiα,h(i)=j=1TZj

优化问题

min ⁡   ∏ j = 1 T Z j \min~\prod_{j=1}^{T}Z_j min j=1TZj

可解得

a l = 1 2 ln ⁡ 1 − ϵ l ϵ l a_l=\frac{1}{2}\ln\frac{1-\epsilon_l}{\epsilon_l} al=21lnϵl1ϵl

且由

Z l = ∑ i p l ( i ) e − α l y i h l ( i ) = ∑ i ∈ A p l ( i ) e − α l + ∑ i ∈ A ˉ p l ( i ) e + α l = ( 1 − ϵ l ) e − α l + ϵ l e α l = 2 ϵ l ( 1 − ϵ l ) = 1 − 4 γ l 2 \begin{aligned} Z_l &=\sum_ip_l(i)\mathrm{e}^{-\alpha_ly_ih_l(i)}\\ &=\sum_{i\in A}p_l(i)\mathrm{e}^{-\alpha_l}+\sum_{i\in \bar{A}}p_l(i)\mathrm{e}^{+\alpha_l}\\ &=\left(1-\epsilon_l \right)\mathrm{e}^{-\alpha_l}+\epsilon_l\mathrm{e}^{\alpha_l}\\ &=2\sqrt{\epsilon_l\left(1-\epsilon_l \right)}\\ &=\sqrt{1-4\gamma_{l}^{2}} \end{aligned} Zl=ipl(i)eαlyihl(i)=iApl(i)eαl+iAˉpl(i)e+αl=(1ϵl)eαl+ϵleαl=2ϵl(1ϵl) =14γl2

可得

∏ l = 1 T Z l = ∏ l = 1 T 1 − 4 γ l 2 ⩽ exp ⁡ ( − 2 ∑ l = 1 T γ l 2 ) ⩽ e − 2 T γ min ⁡ 2 \begin{aligned} \prod_{l=1}^{T}Z_l &=\prod_{l=1}^{T}\sqrt{1-4\gamma_{l}^{2}}\\ &\leqslant \exp \left(-2\sum_{l=1}^{T}\gamma_{l}^{2} \right)\\ &\leqslant \mathrm{e}^{-2T\gamma_{\min}^{2}} \end{aligned} l=1TZl=l=1T14γl2 exp(2l=1Tγl2)e2Tγmin2

因此,错误率可以随着迭代次数的增加而指数级下降

与 Bagging 对比:基分类器以序贯方式使用加权数据集进行训练,其中每个数据点权重依赖前一个分类器的性能

12.3 基于样本特征的分类器构造

随机子空间算法:随机抽取 (也可对特征加权) 特征子集 S l S_l Sl,利用在 S l S_l Sl 上的训练样本训练分类器 h l h_l hl,重复 L L L 次得到 L L L 个分类器,最后进行投票

h ( x ) = a r g m i n y ∈ Y ∑ l = 1 L [ h l ( x ) = y ] h(x)=\mathrm{argmin}_{y\in Y}\sum_{l=1}^{L}\left[h_l(x)=y \right] h(x)=argminyYl=1L[hl(x)=y]

12.4 分类器输出融合

  1. 决策层输出:对于待测试的样本,用每一个基分类器的分类结果投票,得票最多的类别号就是待测试样本的类别
  2. 排序层输出:分类器输出为输入样本可能属于的类别列表,并依据可能性大小进行排序,之后采用 Borda 计数:对名次赋分,计算每个类别总得分并排序
  3. 度量层输出:分类器输出为样本归属于各个类别的一种相似性度量,对于每一类的所有的相似性度量值求和,和值最大的类别就是未知样本的类别标号

12.5 多分类器方法有效的原因

  1. 统计方面:避免单分类器分类时的不稳定性
  2. 计算方面:脱离单分类器陷入的局部最优解
  3. 表示方面:拓展原简单假设空间的表达能力

13 统计学习理论

13.1 PAC (Probably Approximately Correct) 可学习

若函数集 VC 维是有限值,则任意概率分布均 PAC 可学习

13.2 VC (Vapnic-Chervonenkis) 维

期望风险:

R ( ω ) = ∫ L ( y , f ( x , ω ) ) d F ( x , y ) R\left(\omega \right)=\int L\left(y,f\left(x,\omega \right)\right)\mathrm{d}F\left(x,y \right) R(ω)=L(y,f(x,ω))dF(x,y)

经验风险:

R e m p ( ω ) = 1 N ∑ i = 1 N L ( y , f ( x , ω ) ) R_{\mathrm{emp}}\left(\omega \right)=\frac{1}{N}\sum_{i=1}^{N}L\left(y,f\left(x,\omega \right)\right) Remp(ω)=N1i=1NL(y,f(x,ω))

VC 维:描述学习机器的复杂性

推广性界定理:

R ( ω ) ⩽ R e m p ( ω ) + Φ ( n V C ) R\left(\omega \right)\leqslant R_{\mathrm{emp}}\left(\omega \right)+\Phi \left(\frac{n}{\mathrm{VC}}\right) R(ω)Remp(ω)+Φ(VCn)

其中函数 Φ ↘ \Phi \searrow Φ

13.3 没有免费的午餐

  • 不存在一种模式分类算法具有天然的优越性,甚至不比随机猜测更好
  • 如果某种算法对某个特定的问题看上去比另一种算法更好,其原因仅仅是它更适合这一特定的模式分类任务

13.4 丑小鸭定理

不存在与问题无关的最好的特征集合或属性集合

14 算法优缺点

14.1 贝叶斯分类器

优点:

  • 理论上可以满足分类错误率最小
  • 对于服从特定模型的样本有较好的分类结果
  • 是其他分类算法的理论基础

缺点:

  • 依赖模型 (类先验概率,类条件概率分布的形式和具体参数) ,因此模型可能选错
  • 模型的参数可能过拟合
  • 实际样本独立同分布难以满足

14.2 SVM

优点:

  • 将低位空间线性不可分问题变换到高维空间,使其线性可分,由于只需要进内积计算,并没有增加多少计算复杂度
  • 推广能力与变换空间维数无关,具有较好的推广能力
  • 相对于传统方法,对模型具有一定的不敏感性

缺点:

  • 对大规模训练样本难以实施
  • 解决多分类问题存在困难
  • 对缺失数据敏感,对参数和核函数的选择敏感

14.3 近邻法

优点:

  • 错误率在贝叶斯错误率及其两倍之间
  • 算法直观容易理解易于实现
  • 可以适用任何分布的样本,算法适用性强

缺点:

  • 需将所有样本存入计算机中,每次决策都要计算待识别样本与全部训练样本的距离并进行比较,存储和计算开销大
  • 当错误的代价很大时,会产生较大风险
  • 错误率的分析是渐进的,这要求样本为无穷,实际中这一条件很难达到

15 矩阵求导

15.1 迹 Trace

∂ T r ( W ⊤ Σ W ) ∂ W = 2 Σ W \frac{\partial \mathrm{Tr}\left(W^{\top}\Sigma W \right)}{\partial W}=2\Sigma W WTr(WΣW)=2ΣW

∂ T r ( A B ) ∂ A = B + B ⊤ − d i a g ( B ) \frac{\partial \mathrm{Tr}\left(AB \right)}{\partial A}=B+B^{\top}-\mathrm{diag}\left(B \right) ATr(AB)=B+Bdiag(B)

15.2 行列式

∂ ln ⁡ ∣ A ∣ ∂ A = 2 A − 1 − d i a g ( A − 1 ) \frac{\partial \ln |A|}{\partial A}=2A^{-1}-\mathrm{diag}\left(A^{-1} \right) AlnA=2A1diag(A1)

16 补充内容

  • 感知准则函数:
    min ⁡ J p ( a ) = ∑ y ∈ Y k ( − a ⊤ y ) ⩾ 0 \min J_p\left(a \right)=\sum_{y\in Y^k}\left(-a^{\top}y \right)\geqslant 0 minJp(a)=yYk(ay)0
    以使错分样本到分界面距离之和最小为原则

  • 分类器错误率:分类结果中与样本实际类别不同的样本在总体中的比例

  • 错误率估计方法:理论计算,计算错误率的上界,实验估计

  • Fisher 与 Perceptron:Fisher 线性判别是把线性分类器的设计分为两步,一是确定最优方向,二是在这个方向上确定分类阈值;感知机则是通过不断迭代直接得到线性判别函数

  • K-means 与 EM (GMM):K 均值算法对数据点的聚类进行了硬分配,即每个数据点只属于唯一的聚类,而 EM 算法基于后验概率分布,进行了一个软分配。实际上,可以把 K 均值算法看成 GMM 的 EM 算法的一个特殊的极限情况。考虑高斯混合模型协方差矩阵均为 ϵ I \epsilon I ϵI,从而

    P ( x ∣ μ k , Σ k ) = 1 ( 2 π ϵ ) d / 2 exp ⁡ ( − ∥ x − μ k ∥ 2 2 ϵ ) P\left(x|\mu_k,\Sigma_k \right)=\frac{1}{\left(2\pi \epsilon \right)^{d/2}}\exp \left(-\frac{\left\| x-\mu_k \right\|^2}{2\epsilon}\right) P(xμk,Σk)=(2πϵ)d/21exp(2ϵxμk2)

    ϵ → 0 \epsilon \rightarrow 0 ϵ0 则可得到 K 均值算法的硬分配

参考文献

  • 张长水, 赵虹. 模式识别课程讲义与作业. 清华大学, 2021.
  • 张学工. 模式识别第3版. 清华大学出版社, 2010.
  • Richard O. Duda, Peter E. Hart, David G. Stork. Pattern classification, 2nd Edition. Hoboken: Wiley, 2000.
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值