我最近的研究兴趣包括再生核希尔伯特空间(Reproducing Kernel Hilbert Space,RKHS),花了一些时间学习这方面的相关知识,这篇文章算是对我的理解的一个回顾。
RKHS 的定义
正式地讲,一个定义在非空集合 X 上的 RKHS HK 是一个希尔伯特空间。此外,它的所有的逐点求值泛函(point-wise evaluator)Fx:f↦f(x) 是线性且有界的。这意味着 ∀x∈X,存在 Cx<∞,使得
f(x)≤Cx∥f∥HK, ∀f∈HK.
RKHS 和核函数的关系
从 RKHS 到核函数
前面讲述的 RKHS 的定义似乎和核函数没有关系,那么 RKHS 中的“再生核”又是什么意思呢?很快我们就会发现,RKHS 和正定核函数有着密切的关系。事实上,基于 Riesz Representation Theorem,对于一个希尔伯特空间 H,一个泛函 L:H→R 是线性且有界的,当且仅当存在一个唯一的 η∈H,使得
⟨η,f⟩H=L[f].
把 Riesz Representation Theorem 和 RKHS 的定义联系起来,不难发现,一个 RKHS 的所有逐点求值泛函 Fx 都有他们自己的 representer ηx∈H,使得
⟨ηx,f⟩HK=Fx[f]=f(x),
而这就会导出一个核函数
K(x,y)=⟨ηx,ηy⟩HK.
因此,我们还有核片段(kernel section)Kx=ηx,∀x∈X,以及
⟨Kx,f⟩HK=f(x),
这就是 RKHS 的再生性质。
从核函数到 RKHS
反过来,任何一个正定核函数都可以导出一个 RKHS。我们有下面的定理:
对于一个定义在一个紧凑的度量空间 X 上的 Mercer 核函数 K(x,y),存在一个唯一的 RKHS HK,满足
- 所有的核片段都属于 HK;
- 具有再生性质
对应的 RKHS HK 可以是所有核片段所张成的线性空间的完备空间:
HK=span({Kx}x∈X).
在这个 RKHS HK 中,假设 f∈HK=∑i=1pciKxi,g∈HK=∑i=1qdiKyi (p 或者 q 可以是无穷),内积定义为
⟨f,g⟩HK=i=1∑pj=1∑qcidjK(xi,yj).
RKHS 的频谱表示
给定核函数 K,我们可以定义一个线性算子 LK:
LK[f](x)=∫XK(x,y)f(y) dμ(y).
这里,μ 是 X 的一个 σ-finite 且非退化的测度。对于空间 L2μ,内积定义为
⟨f,g⟩L2μ=∫Xf(x)g(x) dμ(x).
因此, LK 可以表示为
LK[f](x)=⟨Kx,f⟩L2μ.
这里需要注意 LK 不是一个泛函。相反,它的输入是一个函数,输出仍然是一个函数。
基于 Mercer Theorem,给定一个紧凑度量空间 X 和一个非退化且 σ-finite Borel 测度 μ,令 K 是一个 Mercer 核函数,定义在 X×X。那么,存在一个 L2μ 的完整的单位正交基,他们可以由可数的连续函数 {ρi}i∈J 来表示,满足
LK[ρi]=ζiρi,
其中,i∈J 且 ζ1≥ζ2≥⋯≥0.
若 K 是严格正定的,ζi>0;如果特征值的个数是无限的,limn→∞ζi=0。
那么,核函数就可以表示为
K(x,y)=i∈J∑ζiρi(x)ρi(y).
这可以由下面的式子推出:
LK[ρi](x)=⟨Kx,ρi⟩L2μ=ζiρi(x),
因此
K(x,y)=Kx(y)=i∈J∑ζiρi(x)ρi(y).
到此,我们就可以把基于核函数 K 的 RKHS HK 表示为
HK={f f(x)=i∈J∑ciρi(x), s.t. i∈J∑ζici2<∞}.
如果 f=∑i∈Jciρi, g=∑i∈Jdiρi,那么
⟨f,g⟩HK=i∈J∑ζicidi.
因此我们可以看到,ζiρi 可以看作是 HK 的单位正交基。
有趣的是,L2μ 和 HK 之间存在同构映射。基于测度 μ 的平方可积函数空间可以表示为
L2μ={f f(x)=i∈J∑ciρi(x), s.t. i∈J∑ci2<∞}.
我们定义 LK1/2 为
LK1/2[ρi]=ζiρi,
对于 f=∑i∈Jciρi,若 f∈L2μ,我们有 ∑i∈Jci2<∞。那么 LK1/2[f]=∑i∈Jζiciρi, 显然 ∑i∈Jζi(ζici)2=∑i∈Jci2<∞。因此 LK1/2f∈HK。这个映射也是一个双射。
我们也能得出,LK1/2 保持内积:
⟨f,g⟩L2μ=⟨LK1/2f,LK1/2g⟩HK.
因此,我们说 LK1/2 是 L2μ 到 HK 的同构映射。
表示定理
一般形式
给定希尔伯特空间 H (注意这不一定是 RKHS)以及下面的优化问题
f∈HargminΦ(L1[f],L2[f],…,LN[f],∥f∥H),
其中
- 每个 Li:H→R 是线性且有界的;
- 目标函数 Φ 关于最后一个参数 ∥f∥H 是严格递增的;
- 优化问题至少有一个解。
这个优化问题的解可以表示为如下形式,
f∗=i=1∑Nαiηi,
其中 ηi 是泛函 Li 的 representer。
RKHS 情况
若 H 是一个核函数 K 诱导的 RKHS HK,Li 的 representer 则为
ηi(x)=⟨ηi,Kx⟩HK=Li[Kx].
更具体地,如果 Li 是逐点求值泛函,xi∈X,那么优化问题为
f∈HargminΦ(f(x1),f(x2),…,f(xN),∥f∥H),
此时 Kxi 即为 Li 的 representer,那么
f∗=i=1∑NαiKxi.
这即表示定理在 RKHS 情形下的形式。
在机器学习中的应用
表示定理在机器学习中非常有用。给定一个损失函数,我们可以在这个损失函数上添加约束项,得到约束的目标函数
Obj=N1i=1∑Nl(yi,f(xi))+γ∥f∥HK2,
对其的优化即为一般的表示定理的一个特殊情形。
核函数隐含的特征空间
我们可以把 HK 当作 K 隐含诱导的特征空间,其特征映射为 ϕ:x↦Kx。在这个新特征空间中,
⟨ϕ(x),ϕ(y)⟩HK=⟨Kx,Ky⟩HK=K(x,y).
我们将要在这个新的特征空间 HK 中找到一个元素 f,使得在这个空间的“线性函数”能给我们最小的目标函数值,
=f∈HKmin N1i=1∑Nl(f(xi),yi)+∥f∥HK2f∈HKmin N1i=1∑Nl(⟨f,Kxi⟩HK,yi)+⟨f,f⟩HK,
这正是我们在常见的欧氏空间中的岭回归——找到元素 β,然后预测函数就可以表示为 βTx=⟨β,x⟩。
值得一提的是,直观上分析,由于 ∥β∥HK2 约束项的存在以及高维空间的线性回归预测值 ⟨β,Kxi⟩ 不受 β 中垂直于 {Kxi}i=1N 的部分的影响,我们最终优化得到的最优 β 只能是各个 Kxi 线性组合后的结果。这其实也是证明前文中的 表示定理 的思路。
常见核函数
常见的核函数包括
- 线性核;
- 多项式核;
- 径向基函数 (RBF) 核。
径向基核函数
径向基核函数的形式为
K(x,y)=exp(−2σ2∥x−y∥2).
或者,另外一个常称作“Gaussian kernel”的形式,
K(x,y)=exp(−ρ∥x−y∥2),
其中 ρ>0。高斯核是一种具有平移不变性的核函数。高斯核诱导的范数 ∥⋅∥HK,随着 p 的增大而越来越约束 RKHS 中的函数。我们可以这样想象——随着 p 的增大,不同的核片段的区别将会变得更小,因此 K(x,y) 的特征值会变得更小,导致更大的范数值。
假设 f=∑i=1pαiKxi。那么
∥f∥HK2=αTKα=fTK−1f.
从频谱的角度来看,
∥f∥HK2=i∈J∑ζici2.
随着 ζi 的减小,∥f∥HK2 将会变得越来越大。
因此,对于一个固定的 f,我们有
ρ→∞⇒∥f∥HK→∞.