机器学习 [白板推导](六)[核方法、指数族分布]

7. 核方法

7.1. 背景

对于严格线性可分问题,感知机、SVM等算法都可以提供很好的解决方案,但对于非线性分类问题,需要一个非线性转换来将其变为线性问题。

高维空间往往比低维空间更容易线性可分,因此可以通过一些非线性变换将已知维度计算出新的维度,便有可能将非线性问题变为线性问题。

然而在实际问题中,可以将非线性问题转化为线性问题的变换函数 ϕ ( x ⃗ ) \phi (\vec{x}) ϕ(x ) 可能是非常复杂的,而根据概率派思想,将一个问题最终看做一个优化问题,则往往需要计算内积,如 ( ϕ ( x ⃗ i ) − ϕ ( x ⃗ ˉ ) ) T ( ϕ ( x ⃗ j ) − ϕ ( x ⃗ ˉ ) ) \left (\phi(\vec{x}_i) - \phi(\bar{\vec{x}}) \right )^T\left (\phi(\vec{x}_j) - \phi(\bar{\vec{x}}) \right ) (ϕ(x i)−ϕ(x ˉ))T(ϕ(x j)−ϕ(x ˉ)),这会给优化带来非常可怕的复杂度。

事实上,我们所关心的是最终的内积的值,而不需要 ϕ ( x ⃗ ) \phi (\vec{x}) ϕ(x ) 的结果,因此如果有一个函数可以一步得到内积,即 K ( x ⃗ i , x ⃗ j ) ≡ ( ϕ ( x ⃗ i ) − ϕ ( x ⃗ ˉ ) ) T ( ϕ ( x ⃗ j ) − ϕ ( x ⃗ ˉ ) ) K(\vec{x}_i, \vec{x}_j) \equiv \left (\phi(\vec{x}_i) - \phi(\bar{\vec{x}}) \right )^T\left (\phi(\vec{x}_j) - \phi(\bar{\vec{x}}) \right ) K(x i,x j)≡(ϕ(x i)−ϕ(x ˉ))T(ϕ(x j)−ϕ(x ˉ)),无需计算 ϕ ( x ⃗ ) \phi (\vec{x}) ϕ(x ) 即可直接得到内积结果,就可以很大程度简化优化的难度,因此核方法诞生了, K ( x ⃗ i , x ⃗ j ) K(\vec{x}_i, \vec{x}_j) K(x i,x j) 即为(正定)核函数

7.2. 定义

核:若存在函数 K K K 使得 K : X × X → R K:X \times X\rightarrow \mathbb{R} K:X×X→R,其中 X X X 为特征空间, R \mathbb{R} R为全体实数域,则称 K K K 为核函数。

正定核:对于一个核函数 K K K,若存在非线性变换 ϕ ( x ⃗ ) \phi (\vec{x}) ϕ(x )( ϕ ( x ⃗ ) \phi (\vec{x}) ϕ(x )属于希尔伯特空间,希尔伯特空间指完备的、可能是无限维的、被赋予内积的线性空间),使得 K ( x ⃗ i , x ⃗ j ) ≡ ϕ ( x ⃗ i ) T ϕ ( x ⃗ j ) K(\vec{x}_i, \vec{x}_j) \equiv \phi(\vec{x}_i) ^T\phi(\vec{x}_j) K(x i,x j)≡ϕ(x i)Tϕ(x j),换言之任意N个样本的Gram矩阵 [ K ( x ⃗ 1 , x ⃗ 1 ) K ( x ⃗ 1 , x ⃗ 2 ) ⋯ K ( x ⃗ 1 , x ⃗ N ) K ( x ⃗ 2 , x ⃗ 1 ) K ( x ⃗ 2 , x ⃗ 2 ) ⋯ K ( x ⃗ 2 , x ⃗ N ) ⋮ ⋮ ⋱ ⋮ K ( x ⃗ N , x ⃗ 1 ) K ( x ⃗ N , x ⃗ 2 ) ⋯ K ( x ⃗ N , x ⃗ N ) ] \begin{bmatrix} K(\vec{x}_1, \vec{x}_1) & K(\vec{x}_1, \vec{x}_2) & \cdots & K(\vec{x}_1, \vec{x}_N)\\ K(\vec{x}_2, \vec{x}_1) & K(\vec{x}_2, \vec{x}_2) & \cdots & K(\vec{x}_2, \vec{x}_N)\\ \vdots & \vdots & \ddots &\vdots \\ K(\vec{x}_N, \vec{x}_1) & K(\vec{x}_N, \vec{x}_2) & \cdots & K(\vec{x}_N, \vec{x}_N) \end{bmatrix} K(x 1,x 1)K(x 2,x 1)⋮K(x N,x 1)K(x 1,x 2)K(x 2,x 2)⋮K(x N,x 2)⋯⋯⋱⋯K(x 1,x N)K(x 2,x N)⋮K(x N,x N) 是半正定的,则称 K K K 为正定核函数。

8. 指数族分布

8.1. 背景

指数族分布的定义式: p ( x ⃗ ∣ η ⃗ ) = h ( x ⃗ ) ⋅ exp ⁡ { η ⃗ T ⋅ ϕ ( x ⃗ ) − A ( η ⃗ ) } p(\vec{x}\ |\ \vec{\eta})=h(\vec{x})\cdot \exp\left \{\vec{\eta}^T\cdot \phi(\vec{x})-A(\vec{\eta}) \right \} p(x ∣ η )=h(x )⋅exp{η T⋅ϕ(x )−A(η )},其中:

  • η ⃗ \vec{\eta} η 为参数向量。
  • A ( η ⃗ ) A(\vec{\eta}) A(η ) 为对数配分函数(log partition function),配分函数表示包含了所有状态信息的函数,常用于归一化等用途,例如将某函数 p ^ ( x ⃗ ∣ θ ⃗ ) \hat{p}(\vec{x}\ |\ \vec{\theta}) p^(x ∣ θ ) 归一化为概率分布,可以设 z = ∫ p ^ ( x ⃗ ∣ θ ⃗ ) z=\int \hat{p}(\vec{x}\ | \ \vec{\theta}) z=∫p^(x ∣ θ ),则 p ( x ⃗ ∣ θ ⃗ ) = 1 z p ^ ( x ⃗ ∣ θ ⃗ ) p(\vec{x} \ | \ \vec{\theta})=\frac{1}{z}\hat{p}(\vec{x}\ |\ \vec{\theta}) p(x ∣ θ )=z1p^(x ∣ θ ) 可以使 ∫ p ( x ⃗ ∣ θ ⃗ ) = 1 \int p(\vec{x} \ | \ \vec{\theta})=1 ∫p(x ∣ θ )=1,即被归一化为概率分布。在指数族分布中, p ( x ⃗ ∣ η ⃗ ) = h ( x ⃗ ) ⋅ exp ⁡ { η ⃗ T ⋅ ϕ ( x ⃗ ) } ⋅ / exp ⁡ { A ( η ⃗ ) } p(\vec{x}\ |\ \vec{\eta})=h(\vec{x})\cdot \exp\left \{\vec{\eta}^T\cdot \phi(\vec{x}) \right \}\cdot /\exp\left \{A(\vec{\eta}) \right \} p(x ∣ η )=h(x )⋅exp{η T⋅ϕ(x )}⋅/exp{A(η )},则 z = exp ⁡ { A ( η ⃗ ) } , A ( η ⃗ ) = log ⁡ z z = \exp\left \{ A(\vec{\eta})\right \},A(\vec{\eta})=\log z z=exp{A(η )},A(η )=logz 即为对数配方函数
  • ϕ ( x ⃗ ) \phi (\vec{x}) ϕ(x )代表充分统计量,即对于一组数据 { x ⃗ i } 1 ≤ i ≤ N \left \{ \vec{x}i \right \}{1\leq i\leq N} {x i}1≤i≤N, ϕ ( x ⃗ ) \phi (\vec{x}) ϕ(x ) 包含了其所有统计信息,例如 ϕ ( x ⃗ ) = [ E ( x ⃗ ) , D ( x ⃗ ) ] \phi (\vec{x})=\left [ E(\vec{x}), D(\vec{x}) \right ] ϕ(x )=[E(x ),D(x )] 等等。

指数族分布的特点(学完概率图模型和变分推断后补)

8.2. 高斯分布的指数族分布推导

对于一组符合一维高斯分布的数据,设参数为 θ ⃗ = [ μ , σ 2 ] \vec{\theta}=[\mu , \sigma^2] θ =[μ,σ2],其概率密度函数为:
p ( x ∣ θ ) = 1 2 π ⋅ σ exp ⁡ { − ( x − μ ) 2 2 σ 2 } = exp ⁡ { − 1 2 log ⁡ ( 2 π ⋅ σ 2 ) } ⋅ exp ⁡ { − 1 2 σ 2 ( x 2 − 2 μ ⋅ x ) − μ 2 2 σ 2 } = exp ⁡ { [ μ σ 2 − 1 2 σ 2 ] ⋅ [ x x 2 ] − ( μ 2 2 σ 2 + 1 2 log ⁡ ( 2 π ⋅ σ 2 ) ) } . (8.1) \begin{aligned} p(x|\theta)&=\frac{1}{\sqrt{2\pi}\cdot\sigma}\exp\left \{ -\frac{(x-\mu)^2}{2\sigma^2} \right \}\\ &=\exp\left \{ -\frac{1}{2}\log(2\pi\cdot\sigma^2) \right \}\cdot \exp\left \{ -\frac{1}{2\sigma^2}(x^2-2\mu \cdot x) - \frac{\mu^2}{2\sigma^2} \right \}\\ &=\exp\left \{ \left [\begin{matrix} \frac{\mu}{\sigma^2} & -\frac{1}{2\sigma^2} \end{matrix} \right ]\cdot\left [ \begin{matrix} x\\ x^2 \end{matrix} \right ] - \left (\frac{\mu^2}{2\sigma^2} +\frac{1}{2}\log(2\pi\cdot\sigma^2) \right )\right \}.\tag{8.1} \end{aligned} p(x∣θ)=2π ⋅σ1exp{−2σ2(x−μ)2}=exp{−21log(2π⋅σ2)}⋅exp{−2σ21(x2−2μ⋅x)−2σ2μ2}=exp{[σ2μ−2σ21]⋅[xx2]−(2σ2μ2+21log(2π⋅σ2))}.(8.1)

因此可得: η ⃗ = [ μ σ 2 − 1 2 σ 2 ] T , η 1 = μ σ 2 , η 2 = − 1 2 σ 2 \vec{\eta}=\left [\begin{matrix} \frac{\mu}{\sigma^2} & -\frac{1}{2\sigma^2} \end{matrix} \right ]^T,\eta_1=\frac{\mu}{\sigma^2},\eta_2=-\frac{1}{2\sigma^2} η =[σ2μ−2σ21]T,η1=σ2μ,η2=−2σ21,同时 ϕ ( x ) = [ x x 2 ] T \phi(x)=\left [ \begin{matrix} x & x^2 \end{matrix} \right ] ^T ϕ(x)=[xx2]T, A ( η ⃗ ) = μ 2 2 σ 2 + 1 2 log ⁡ ( 2 π ⋅ σ 2 ) = − η 1 2 4 η 2 + 1 2 log ⁡ ( − π η 2 ) A(\vec{\eta})=\frac{\mu^2}{2\sigma^2} +\frac{1}{2}\log(2\pi\cdot\sigma^2) =-\frac{\eta_1^2}{4\eta_2}+\frac{1}{2}\log(-\frac{\pi}{\eta_2}) A(η )=2σ2μ2+21log(2π⋅σ2)=−4η2η12+21log(−η2π),即得到了一维高斯分布的指数族分布形式

8.3. 关于对数配分函数的一些结论

由于 p ( x ⃗ ∣ η ⃗ ) = h ( x ⃗ ) ⋅ exp ⁡ { η ⃗ T ⋅ ϕ ( x ⃗ ) } / exp ⁡ { A ( η ⃗ ) } p(\vec{x}\ |\ \vec{\eta})=h(\vec{x})\cdot \exp\left \{\vec{\eta}^T\cdot \phi(\vec{x}) \right \}/\exp\left \{ A(\vec{\eta})\right \} p(x ∣ η )=h(x )⋅exp{η T⋅ϕ(x )}/exp{A(η )},可得 exp ⁡ { A ( η ⃗ ) } ⋅ p ( x ⃗ ∣ η ⃗ ) = h ( x ⃗ ) ⋅ exp ⁡ { η ⃗ T ⋅ ϕ ( x ⃗ ) } \exp\left \{ A(\vec{\eta})\right \}\cdot p(\vec{x}\ |\ \vec{\eta})=h(\vec{x})\cdot \exp\left \{\vec{\eta}^T\cdot \phi(\vec{x}) \right \} exp{A(η )}⋅p(x ∣ η )=h(x )⋅exp{η T⋅ϕ(x )}.

再两边积分可得: ∫ exp ⁡ { A ( η ⃗ ) } ⋅ p ( x ⃗ ∣ η ⃗ ) d x ⃗ = exp ⁡ { A ( η ⃗ ) } = ∫ h ( x ⃗ ) ⋅ exp ⁡ { η ⃗ T ⋅ ϕ ( x ⃗ ) } d x ⃗ \int \exp\left \{ A(\vec{\eta})\right \}\cdot p(\vec{x}\ |\ \vec{\eta})d\vec{x}=\exp\left \{ A(\vec{\eta})\right \}=\int h(\vec{x})\cdot \exp\left \{\vec{\eta}^T\cdot \phi(\vec{x}) \right \}d\vec{x} ∫exp{A(η )}⋅p(x ∣ η )dx =exp{A(η )}=∫h(x )⋅exp{η T⋅ϕ(x )}dx .

两边对 η ⃗ \vec{\eta} η 求导为: exp ⁡ { A ( η ⃗ ) } ⋅ A ′ ( η ⃗ ) = ∫ h ( x ⃗ ) ⋅ exp ⁡ { η ⃗ T ⋅ ϕ ( x ⃗ ) } ⋅ ϕ ( x ⃗ ) d x ⃗ \exp\left \{ A(\vec{\eta})\right \}\cdot A'(\vec{\eta})=\int h(\vec{x})\cdot \exp\left \{\vec{\eta}^T\cdot \phi(\vec{x}) \right \}\cdot \phi(\vec{x}) d\vec{x} exp{A(η )}⋅A′(η )=∫h(x )⋅exp{η T⋅ϕ(x )}⋅ϕ(x )dx 。

因此 A ′ ( η ⃗ ) = ∫ [ h ( x ⃗ ) ⋅ exp ⁡ { η ⃗ T ⋅ ϕ ( x ⃗ ) } / exp ⁡ { A ( η ⃗ ) } ] ⋅ ϕ ( x ⃗ ) d x ⃗ = ∫ p ( x ⃗ ∣ η ⃗ ) ⋅ ϕ ( x ⃗ ) d x ⃗ = E p ( x ⃗ ∣ η ⃗ ) [ ϕ ( x ⃗ ) ] A'(\vec{\eta})=\int \left [h(\vec{x})\cdot \exp\left \{\vec{\eta}^T\cdot \phi(\vec{x}) \right \}/\exp\left \{ A(\vec{\eta})\right \} \right ] \cdot \phi(\vec{x}) d\vec{x}=\int p(\vec{x}|\vec{\eta}) \cdot \phi(\vec{x}) d\vec{x}=E_{p(\vec{x} | \vec{\eta})}[\phi(\vec{x}) ] A′(η )=∫[h(x )⋅exp{η T⋅ϕ(x )}/exp{A(η )}]⋅ϕ(x )dx =∫p(x ∣η )⋅ϕ(x )dx =Ep(x ∣η )[ϕ(x )].

进一步也可推导得 A ′ ′ ( η ⃗ ) = D p ( x ⃗ ∣ η ⃗ ) [ ϕ ( x ⃗ ) ] A''(\vec{\eta})=D_{p(\vec{x}\ |\ \vec{\eta})}[\phi(\vec{x}) ] A′′(η )=Dp(x ∣ η )[ϕ(x )],推导过程略。

8.4. 最大熵角度解读指数族分布

概率的信息量: − log ⁡ p -\log p −logp.

熵的定义:信息量的期望,即 E p [ − log ⁡ p ] = ∫ − p ( x ) ⋅ log ⁡ p ( x ) d x E_{p}[-\log p]=\int -p(x)\cdot \log p(x)dx Ep[−logp]=∫−p(x)⋅logp(x)dx 或 E p [ − log ⁡ p ] = − ∑ x p ( x ) log ⁡ p ( x ) E_{p}[-\log p]=-\sum_xp(x)\log p(x) Ep[−logp]=−∑xp(x)logp(x).

最大熵:令熵值最大的概率分布情况,通常分布越趋向于等可能/均匀分布,熵值越大,因此最大熵也是等可能的量化分析。

对于一组离散变量的数据,其分布未知,但可以用经验分布代替,即 p ^ ( x ) = c o u n t ( x ) N \hat{p}(x)=\frac{count(x)}{N} p^(x)=Ncount(x),同时设一向量函数 f ⃗ ( x ) = [ f 1 ( x ) f 2 ( x ) ⋯ f Q ( x ) ] \vec{f}(x)=[\begin{matrix} f_1(x) & f_2(x) & \cdots & f_Q(x) \end{matrix}] f (x)=[f1(x)f2(x)⋯fQ(x)],则可以对其求期望 E p ^ [ f ⃗ ( x ) ] = Δ ⃗ E_{\hat{p}}[\vec{f}(x)]=\vec{\Delta } Ep^[f (x)]=Δ ,因此可以将最大熵问题设为一个优化问题,即 { min ⁡ ∑ x p ( x ) log ⁡ p ( x ) s.t. ∑ x p ( x ) = 1 , E p [ f ⃗ ( x ) ] = E p ^ [ f ⃗ ( x ) ] = Δ ⃗ \left\{\begin{matrix} \min \sum_xp(x)\log p(x)\\ \textbf{s.t.}\ \sum_xp(x)=1,\ \ E_p[\vec{f}(x)]=E_{\hat{p}}[\vec{f}(x)]=\vec{\Delta} \end{matrix}\right. {min∑xp(x)logp(x)s.t. ∑xp(x)=1, Ep[f (x)]=Ep^[f (x)]=Δ .

使用拉格朗日乘数法求解 L ( p , λ 0 , λ ⃗ ) = ∑ x p ( x ) log ⁡ p ( x ) + λ 0 [ 1 − ∑ x p ( x ) ] + λ ⃗ T ( Δ ⃗ − E p [ f ⃗ ( x ) ] ) \mathcal{L}(p,\lambda_0, \vec{\lambda})=\sum_xp(x)\log p(x)+\lambda_0[1-\sum_xp(x)]+\vec{\lambda}^T(\vec{\Delta}-E_p[\vec{f}(x)]) L(p,λ0,λ )=∑xp(x)logp(x)+λ0[1−∑xp(x)]+λ T(Δ −Ep[f (x)]),,对 p ( x ) p(x) p(x) 求导得 ∂ L ∂ p = ∑ x ( log ⁡ p + 1 ) − ∑ x λ 0 − ∑ x λ ⃗ T f ⃗ ( x ) \frac{\partial \mathcal{L} }{\partial p}=\sum_x(\log p+1)-\sum_x\lambda_0-\sum_x\vec{\lambda}^T\vec{f}(x) ∂p∂L=∑x(logp+1)−∑xλ0−∑xλ Tf (x),令其为0,则解得 p ( x ) = exp ⁡ { λ ⃗ T f ⃗ ( x ) + λ 0 − 1 } p(x)=\exp\{ \vec{\lambda}^T\vec{f}(x)+\lambda_0-1 \} p(x)=exp{λ Tf (x)+λ0−1},因此当 f ⃗ ( x ) = ϕ ( x ) \vec{f}(x)=\phi(x) f (x)=ϕ(x) 时,可以令 η ⃗ = λ ⃗ \vec{\eta}=\vec{\lambda} η =λ , h ( x ) ⋅ exp ⁡ { − A ( η ⃗ ) } = exp ⁡ { λ 0 − 1 } h(x)\cdot \exp\{ -A(\vec{\eta}) \}=\exp\{ \lambda_0-1 \} h(x)⋅exp{−A(η )}=exp{λ0−1},此时 p ( x ) p(x) p(x) 为指数族分布。

相关推荐
摘取一颗天上星️14 分钟前
NLP进化史:从规则模板到思维链推理,七次范式革命全解析
人工智能·自然语言处理
知舟不叙41 分钟前
深度学习——基于PyTorch的MNIST手写数字识别详解
人工智能·pytorch·深度学习·手写数字识别
Jamence44 分钟前
多模态大语言模型arxiv论文略读(118)
论文阅读·人工智能·语言模型·自然语言处理·论文笔记
愚农搬码1 小时前
LangChain 调用不同类型的多MCP服务
人工智能·后端
AI速译官1 小时前
字节跳动推出视频生成新模型Seedance
人工智能
chenquan2 小时前
ArkFlow 流处理引擎 0.4.0-rc1 发布
人工智能·后端·github
Se7en2582 小时前
使用 Higress AI 网关代理 vLLM 推理服务
人工智能
AI大模型技术社2 小时前
PyTorch手撕CNN:可视化卷积过程+ResNet18训练代码详解
人工智能·神经网络
CSTechEi2 小时前
【IEEE/EI/Scopus检索】2025年第六届模式识别与数据挖掘国际会议 (PRDM 2025)
人工智能·数据挖掘·模式识别·ei学术会议
CSTechEi2 小时前
【SPIE/EI/Scopus检索】2025 年第二届数据挖掘,计算与软件工程国际会议 (DMCSE 2025)
人工智能·数据挖掘·软件工程·信息与通信·ei学术会议