浅谈高斯过程(Gaussian Process)与再生核希尔伯特空间(RKHS)

1. 再生核希尔伯特空间的源头

从一定程度上来说,核技巧(Kernel Trick) 的灵感可以追溯到像XOR问题这样的非线性可分问题。这类问题需要通过将输入数据映射到一个更高维的空间,使得在新空间中可以找到线性分类器。

1.1 背景:XOR问题

XOR问题是一个经典的例子:

XOR问题是一个经典的例子:
-输入是二元值,例如 ( 0 , 0 ) → 0 (0,0) \rightarrow 0 (0,0)0 ( 0 , 1 ) → 1 (0,1) \rightarrow 1 (0,1)1 ( 1 , 0 ) → 1 (1,0) \rightarrow 1 (1,0)1 ( 1 , 1 ) → 0 (1,1) \rightarrow 0 (1,1)0
-在二维平面上,这些点是非线性可分的,没有一条直线能够将两类数据分开。

在这里插入图片描述
图1: 异或问题与非线i性映射(图源:[1])

对这样的问题,如图1所示,可以将样本从原始空间映射到-个更高维的特征空间,使得样本在这个特征空间内线性可分。若将原始的二维空间映射到一个合适的三维空间,就能找到一个合适的划分超平面。

ϕ ( x ) \phi(\boldsymbol{x}) ϕ(x) 可以认为是特征向量的基函数扩展,表示将 x \boldsymbol{x} x 映射后的特征向量。于是,在特征空间中划分超平面所对应的模型可表示为

f ( x ) = w T ϕ ( x ) + b f(\boldsymbol{x})=\boldsymbol{w}^{\mathrm{T}} \phi(\boldsymbol{x})+b f(x)=wTϕ(x)+b

其中 w \boldsymbol{w} w b b b 是模型参数.类似式(6.6),有

min ⁡ w , b 1 2 ∥ w ∥ 2  s.t.  y i ( w T ϕ ( x i ) + b ) ⩾ 1 , i = 1 , 2 , … , m \begin{array}{ll} \min _{\boldsymbol{w}, b} & \frac{1}{2}\|\boldsymbol{w}\|^2 \\ \text { s.t. } & y_i\left(\boldsymbol{w}^{\mathrm{T}} \phi\left(\boldsymbol{x}_i\right)+b\right) \geqslant 1, \quad i=1,2, \ldots, m \end{array} minw,b s.t. 21w2yi(wTϕ(xi)+b)1,i=1,2,,m

其对偶问题是

公式1.1 max ⁡ α ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j ϕ ( x i ) T ϕ ( x j ) \max _\alpha \sum_{i=1}^m \alpha_i-\frac{1}{2} \sum_{i=1}^m \sum_{j=1}^m \alpha_i \alpha_j y_i y_j \phi\left(\boldsymbol{x}_i\right)^{\mathrm{T}} \phi\left(\boldsymbol{x}_j\right) αmaxi=1mαi21i=1mj=1mαiαjyiyjϕ(xi)Tϕ(xj)

 s.t.  ∑ i = 1 m α i y i = 0 α i ⩾ 0 , i = 1 , 2 , … , m \begin{array}{ll} \text { s.t. } & \sum_{i=1}^m \alpha_i y_i=0 \\ & \alpha_i \geqslant 0, \quad i=1,2, \ldots, m \end{array}  s.t. i=1mαiyi=0αi0,i=1,2,,m
求解上式涉及到计算 ϕ ( x i ) T ϕ ( x j ) \phi\left(\boldsymbol{x}_i\right)^{\mathrm{T}} \phi\left(\boldsymbol{x}_j\right) ϕ(xi)Tϕ(xj) ,这是样本 x i \boldsymbol{x}_i xi x j \boldsymbol{x}_j xj 映射到特征空间之后的内积。由于特征空间维数可能很高,甚至可能是无穷维,因此直接计算 ϕ ( x i ) T ϕ ( x j ) \phi\left(\boldsymbol{x}_i\right)^{\mathrm{T}} \phi\left(\boldsymbol{x}_j\right) ϕ(xi)Tϕ(xj) 通常是困难的.为了避开这个障碍,可以设想这样一个函数:

κ ( x i , x j ) = ⟨ ϕ ( x i ) , ϕ ( x j ) ⟩ = ϕ ( x i ) T ϕ ( x j ) \kappa\left(\boldsymbol{x}_i, \boldsymbol{x}_j\right)=\left\langle\phi\left(\boldsymbol{x}_i\right), \phi\left(\boldsymbol{x}_j\right)\right\rangle=\phi\left(\boldsymbol{x}_i\right)^{\mathrm{T}} \phi\left(\boldsymbol{x}_j\right) κ(xi,xj)=ϕ(xi),ϕ(xj)=ϕ(xi)Tϕ(xj)

即,向量 x i \boldsymbol{x}_i xi x j \boldsymbol{x}_j xj 在特征空间中的内积等于它们在原始样本空间中通过核函数 κ ( ⋅ , ⋅ ) \kappa(\cdot, \cdot) κ(,) 计算所得的结果。有了这样的核函数,我们就无需直接计算高维甚至可能是无穷维特征空间中的内积,从而大大简化了计算过程,这称为"核技巧" (kernel trick) [1]。 ϕ ( x ) \phi(x) ϕ(x)则可以称为核基函数/基函数,是核函数的隐式特征表示。对于某些核函数(如线性核或多项式核),核基函数可以显式写出,对于某些核函数(如RBF核),核基函数可能是无穷维的,因此通常不显式构造特征映射,而是直接使用核函数计算。

于是式1.1可重写为

max ⁡ α ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j κ ( x i , x j )  s.t.  ∑ i = 1 m α i y i = 0 α i ⩾ 0 , i = 1 , 2 , … , m \begin{aligned} \max _{\boldsymbol{\alpha}} & \sum_{i=1}^m \alpha_i-\frac{1}{2} \sum_{i=1}^m \sum_{j=1}^m \alpha_i \alpha_j y_i y_j \kappa\left(\boldsymbol{x}_i, \boldsymbol{x}_j\right) \\ \text { s.t. } & \sum_{i=1}^m \alpha_i y_i=0 \\ & \alpha_i \geqslant 0, \quad i=1,2, \ldots, m \end{aligned} αmax s.t. i=1mαi21i=1mj=1mαiαjyiyjκ(xi,xj)i=1mαiyi=0αi0,i=1,2,,m

求解后即可得到

公式1.2
f ( x ) = w T ϕ ( x ) + b = ∑ i = 1 m α i y i ϕ ( x i ) T ϕ ( x ) + b = ∑ i = 1 m α i y i κ ( x , x i ) + b . \begin{aligned} f(\boldsymbol{x}) & =\boldsymbol{w}^{\mathrm{T}} \phi(\boldsymbol{x})+b \\ & =\sum_{i=1}^m \alpha_i y_i \phi\left(\boldsymbol{x}_i\right)^{\mathrm{T}} \phi(\boldsymbol{x})+b \\ & =\sum_{i=1}^m \alpha_i y_i \kappa\left(\boldsymbol{x}, \boldsymbol{x}_i\right)+b . \end{aligned} f(x)=wTϕ(x)+b=i=1mαiyiϕ(xi)Tϕ(x)+b=i=1mαiyiκ(x,xi)+b.
这里的函数 κ ( ⋅ , ⋅ ) \kappa(\cdot, \cdot) κ(,) 就是"核函数"(kernel function)。式1.2显示出模型最优解可通过训练样本的核函数展开,这一展式亦称"支持向量展式"(support vector expansion).

显然,若已知合适映射 ϕ ( ⋅ ) \phi(\cdot) ϕ() 的具体形式,则可写出核函数 κ ( ⋅ , ⋅ ) \kappa(\cdot, \cdot) κ(,) .但在现实任务中我们通常不知道 ϕ ( ⋅ ) \phi(\cdot) ϕ() 是什么形式。这方面有一些基本的经验,例如对文本数据通常采用线性核,情况不明时可先尝试高斯核 [1]。

1.2 再生核希尔伯特空间RKHS

所有的核函数对应的空间都是再生核希尔伯特空间(RKHS)吗?答案是否定的,核函数的定义如下:
[定理1.1]
(核函数)令 X \mathcal{X} X 为输入空间, κ ( ⋅ , ⋅ ) \kappa(\cdot, \cdot) κ(,) 是定义在 X × X \mathcal{X} \times \mathcal{X} X×X 上的对称函数,则 κ \kappa κ 是核函数当且仅当对于任意数据 D = { x 1 , x 2 , … , x m } D=\left\{x_1, x_2, \ldots, x_m\right\} D={x1,x2,,xm} ,"核矩阵"(kernel matrix)K 总是半正定的:

K = [ κ ( x 1 , x 1 ) ⋯ κ ( x 1 , x j ) ⋯ κ ( x 1 , x m ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x i , x 1 ) ⋯ κ ( x i , x j ) ⋯ κ ( x i , x m ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x m , x 1 ) ⋯ κ ( x m , x j ) ⋯ κ ( x m , x m ) ] \mathbf{K}=\left[\begin{array}{ccccc} \kappa\left(\boldsymbol{x}_1, \boldsymbol{x}_1\right) & \cdots & \kappa\left(\boldsymbol{x}_1, \boldsymbol{x}_j\right) & \cdots & \kappa\left(\boldsymbol{x}_1, \boldsymbol{x}_m\right) \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ \kappa\left(\boldsymbol{x}_i, \boldsymbol{x}_1\right) & \cdots & \kappa\left(\boldsymbol{x}_i, \boldsymbol{x}_j\right) & \cdots & \kappa\left(\boldsymbol{x}_i, \boldsymbol{x}_m\right) \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ \kappa\left(\boldsymbol{x}_m, \boldsymbol{x}_1\right) & \cdots & \kappa\left(\boldsymbol{x}_m, \boldsymbol{x}_j\right) & \cdots & \kappa\left(\boldsymbol{x}_m, \boldsymbol{x}_m\right) \end{array}\right] K= κ(x1,x1)κ(xi,x1)κ(xm,x1)κ(x1,xj)κ(xi,xj)κ(xm,xj)κ(x1,xm)κ(xi,xm)κ(xm,xm) [1]

定理1.1表明,只要一个对称函数所对应的核矩阵半正定,它就能作为核函数使用.事实上,对于一个半正定核矩阵,总能找到一个与之对应的映射 ϕ \phi ϕ .换言之,任何一个核函数都隐式地定义了一个称为"再生核希尔伯特空间"(Reproducing Kernel Hilbert Space,简称 RKHS)的特征空间.

定理1.1定义了有效的核函数,因此有效的核函数构成的空间是再生核希尔伯特空间。常见的有效的核函数有:

  • Gaussian Kernel κ ( x , x ′ ) = exp ⁡ ( − ∥ x − x ′ ∥ 2 2 σ 2 ) \kappa\left(x, x^{\prime}\right)=\exp \left(-\frac{\left\|x-x^{\prime}\right\|^2}{2 \sigma^2}\right) κ(x,x)=exp(2σ2xx2)
  • Polynomial Kernel κ ( x , x ′ ) = ( x T x ′ + c ) d \kappa\left(x, x^{\prime}\right)=\left(x^T x^{\prime}+c\right)^d κ(x,x)=(xTx+c)d
  • Linear Kernel κ ( x , x ′ ) = x T x ′ \kappa\left(x, x^{\prime}\right)=x^T x^{\prime} κ(x,x)=xTx

除了有效的核函数之外,有一些研究尝试放宽核函数的条件,例如允许其核矩阵不是严格的半正定。这些函数在某些上下文中可能被称为“核函数”,但它们对应的不是传统意义上的 RKHS。比如:

  • Sigmoid Kernel κ ( x , x ′ ) = tanh ⁡ ( α x T x ′ + c ) \kappa\left(x, x^{\prime}\right)=\tanh \left(\alpha x^T x^{\prime}+c\right) κ(x,x)=tanh(αxTx+c)
  • Exponential Kernel κ ( x , x ′ ) = exp ⁡ ( − ∣ x − x ′ ∣ ) \kappa\left(x, x^{\prime}\right)=\exp \left(-\left|x-x^{\prime}\right|\right) κ(x,x)=exp(xx)
  • Heaviside Step Function H ( x , x ′ ) = 1  if  x ≥ x ′ ; 0  otherwise  H\left(x, x^{\prime}\right)=1 \text { if } x \geq x^{\prime} ; 0 \text { otherwise } H(x,x)=1 if xx;0 otherwise 

1.3 Mercer定理

Mercer定理
假设 K K K 是一个连续的,对称的,正定的核函数。则在区间 [ a , b ] [a, b] [a,b] 上的平方可积函数空间 L 2 [ a , b ] L^2[a, b] L2[a,b]中,存在一组由算子 T K T_K TK 的特征函数组成的正交归一基 { e i } i \left\{e_i\right\}_i {ei}i ,使得相应的特征值序列 { λ j } j \left\{\lambda_j\right\}_j {λj}j 是非负的。
与非零特征值对应的特征函数在区间 [ a , b ] [a, b] [a,b] 上是连续的,核函数 K K K 可以表示为:

K ( s , t ) = ∑ j = 1 ∞ λ j e j ( s ) e j ( t ) K(s, t)=\sum_{j=1}^{\infty} \lambda_j e_j(s) e_j(t) K(s,t)=j=1λjej(s)ej(t)

其中,该级数的收敛是绝对且一致的。

原文[2]:
Mercer’s theorem:
Suppose K K K is a continuous symmetric positive-definite kernel. Then there is an orthonormal basis { e i } i \left\{e_{\mathrm{i}}\right\}_i {ei}i

of L 2 [ a , b ] L^2[a, b] L2[a,b] consisting of eigenfunctions of T K T_K TK such that the corresponding sequence of eigenvalues { λ j } i \left\{\lambda_j\right\}_{i} {λj}i is nonnegative. The eigenfunctions corresponding to non-zero eigenvalues are continuous on [ a , b ] [a, b] [a,b] and K K K has the representation

K ( s , t ) = ∑ j = 1 ∞ λ j e j ( s ) e j ( t ) K(s, t)=\sum_{j=1}^{\infty} \lambda_j e_j(s) e_j(t) K(s,t)=j=1λjej(s)ej(t)

where the convergence is absolute and uniform.)

注意:这里条件是矩阵是正定的,也有一些版本的条件是矩阵为半正定的,如参考文献[3]。

2. 高斯过程(Gaussian Processes, GP)

2.1 定义

一个随机过程 f ( x ) : x ∈ X {f(x) : x \in \mathcal{X}} f(x):xX 是一个高斯过程,如果对于任何有限集合 x 1 , x 2 , … , x n ⊆ X {x_1, x_2, \ldots, x_n} \subseteq \mathcal{X} x1,x2,,xnX,函数值的集合 f ( x 1 ) , f ( x 2 ) , … , f ( x n ) {f(x_1), f(x_2), \ldots, f(x_n)} f(x1),f(x2),,f(xn)服从多元高斯分布:
f ( x ) ∼ G P ( m ( x ) , k ( x , x ′ ) ) f(x) \sim \mathcal{G P}\left(m(x), k\left(x, x^{\prime}\right)\right) f(x)GP(m(x),k(x,x))
其中:

  1. 均值函数 m ( x ) m(x) m(x) :定义了函数在每个输入 x x x 上的期望值,

m ( x ) = E [ f ( x ) ] m(x)=\mathbb{E}[f(x)] m(x)=E[f(x)]

  1. 协方差函数(核函数) k ( x , x ′ ) k(x, x') k(x,x) :定义了任意两个点 x , x ′ x, x' x,x 之间的相关性,
    κ ( x , x ′ ) = E [ ( f ( x ) − m ( x ) ) ( f ( x ′ ) − m ( x ′ ) ) ] \kappa\left(x, x^{\prime}\right)=\mathbb{E}\left[(f(x)-m(x))\left(f\left(x^{\prime}\right)-m\left(x^{\prime}\right)\right)\right] κ(x,x)=E[(f(x)m(x))(f(x)m(x))]

高斯过程用 G P ( m ( x ) , k ( x , x ′ ) ) \mathcal{GP}(m(x), k(x, x')) GP(m(x),k(x,x)) 来完全刻画一个随机函数的分布。

2.2 核函数和基函数

2.2.1 核函数

高斯过程的协方差函数叫做核函数,因此核函数 k ( x , x ′ ) k(x, x') k(x,x) 是高斯过程的关键部分,它决定了函数值的光滑性、复杂性和相关性。常用的核函数包括:

1.线性核:

k ( x , x ′ ) = x ⊤ x ′ k\left(x, x^{\prime}\right)=x^{\top} x^{\prime} k(x,x)=xx

-描述线性关系。
2.径向基核(RBF 核):

k ( x , x ′ ) = exp ⁡ ( − ∥ x − x ′ ∥ 2 2 l 2 ) k\left(x, x^{\prime}\right)=\exp \left(-\frac{\left\|x-x^{\prime}\right\|^2}{2 l^2}\right) k(x,x)=exp(2l2xx2)

-是最常用的核函数之一,定义了平滑函数的相关性。
3.多项式核:

k ( x , x ′ ) = ( x ⊤ x ′ + c ) d k\left(x, x^{\prime}\right)=\left(x^{\top} x^{\prime}+c\right)^d k(x,x)=(xx+c)d

-用于高阶相关性的建模。
4.Matérn 核:

k ( x , x ′ ) = 2 1 − ν Γ ( ν ) ( 2 ν ∥ x − x ′ ∥ l ) ν K ν ( 2 ν ∥ x − x ′ ∥ l ) k\left(x, x^{\prime}\right)=\frac{2^{1-\nu}}{\Gamma(\nu)}\left(\frac{\sqrt{2 \nu}\left\|x-x^{\prime}\right\|}{l}\right)^\nu K_\nu\left(\frac{\sqrt{2 \nu}\left\|x-x^{\prime}\right\|}{l}\right) k(x,x)=Γ(ν)21ν(l2ν xx)νKν(l2ν xx)

-其中 ν \nu ν 控制函数的平滑性, K ν K_\nu Kν是修正的贝塞尔函数。
-是 RBF 核的广义版本。

2.2.2 基函数

高斯过程中的核函数隐式地定义了基函数空间,而不是显式地计算基函数。不同核函数对应不同类型的特征映射:

  • 简单核函数(如线性核、多项式核)对应有限维基函数空间。
  • 复杂核函数(如 RBF 核、Matérn 核)对应无限维的基函数空间。

另一个角度,如章节1.1所讲,对于高斯过程的基函数,也可以认为是 f ( x ) = w T ϕ ( x ) + b f(\boldsymbol{x})=\boldsymbol{w}^{\mathrm{T}} \phi(\boldsymbol{x})+b f(x)=wTϕ(x)+b中的 ϕ ( x ) \phi(\boldsymbol{x}) ϕ(x)。假设高斯过程已知一些列输入 x ′ \boldsymbol{x'} x (长度为 m m m)和对应的输出 f ( x ′ ) f(\boldsymbol{x}') f(x),能否把 f ( x ) f(\boldsymbol{x}) f(x)表示为 f ( x ) = w T ϕ ( x ) + b f(\boldsymbol{x})=\boldsymbol{w}^{\mathrm{T}} \phi(\boldsymbol{x})+b f(x)=wTϕ(x)+b中的 ϕ ( x ) \phi(\boldsymbol{x}) ϕ(x)的形式呢?答案是可以的。

考虑新的输入序列 x \boldsymbol{x} x(长度为 n n n),求解对应的 f ( x ) f(\boldsymbol{x}) f(x)如下:

cov ( f ( x ) , f ( x ′ ) ) = [ κ ( x 1 , x ′ 1 ) ⋯ κ ( x 1 , x ′ j ) ⋯ κ ( x 1 , x ′ m ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x i , x ′ 1 ) ⋯ κ ( x i , x ′ j ) ⋯ κ ( x i , x ′ m ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x n , x ′ 1 ) ⋯ κ ( x n , x ′ j ) ⋯ κ ( x n , x ′ m ) ] \text{cov}(f(\boldsymbol{x}), f(\boldsymbol{x}'))=\left[\begin{array}{ccccc} \kappa\left(\boldsymbol{x}_1, \boldsymbol{x'}_1\right) & \cdots & \kappa\left(\boldsymbol{x}_1, \boldsymbol{x'}_j\right) & \cdots & \kappa\left(\boldsymbol{x}_1, \boldsymbol{x'}_m\right) \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ \kappa\left(\boldsymbol{x}_i, \boldsymbol{x'}_1\right) & \cdots & \kappa\left(\boldsymbol{x}_i, \boldsymbol{x'}_j\right) & \cdots & \kappa\left(\boldsymbol{x}_i, \boldsymbol{x'}_m\right) \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ \kappa\left(\boldsymbol{x}_n, \boldsymbol{x'}_1\right) & \cdots & \kappa\left(\boldsymbol{x}_n, \boldsymbol{x'}_j\right) & \cdots & \kappa\left(\boldsymbol{x}_n, \boldsymbol{x'}_m\right) \end{array}\right] cov(f(x),f(x))= κ(x1,x1)κ(xi,x1)κ(xn,x1)κ(x1,xj)κ(xi,xj)κ(xn,xj)κ(x1,xm)κ(xi,xm)κ(xn,xm)


cov ( f ( x ′ ) , f ( x ′ ) ) = [ κ ( x 1 ′ , x 1 ′ ) ⋯ κ ( x 1 ′ , x j ′ ) ⋯ κ ( x 1 ′ , x m ′ ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x i ′ , x 1 ′ ) ⋯ κ ( x i ′ , x j ′ ) ⋯ κ ( x i ′ , x ′ m ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x m ′ , x 1 ′ ) ⋯ κ ( x m ′ , x ′ j ) ⋯ κ ( x m ′ , x ′ m ) ] + σ y 2 I m \text{cov}(f(\boldsymbol{x}'), f(\boldsymbol{x}'))=\left[\begin{array}{ccccc} \kappa\left(\boldsymbol{x}'_1, \boldsymbol{x}'_1\right) & \cdots & \kappa\left(\boldsymbol{x}'_1, \boldsymbol{x}'_j\right) & \cdots & \kappa\left(\boldsymbol{x}'_1, \boldsymbol{x}'_m\right) \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ \kappa\left(\boldsymbol{x}'_i, \boldsymbol{x}'_1\right) & \cdots & \kappa\left(\boldsymbol{x}'_i, \boldsymbol{x}'_j\right) & \cdots & \kappa\left(\boldsymbol{x}'_i, \boldsymbol{x'}_m\right) \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ \kappa\left(\boldsymbol{x}'_m, \boldsymbol{x}'_1\right) & \cdots & \kappa\left(\boldsymbol{x}'_m, \boldsymbol{x'}_j\right) & \cdots & \kappa\left(\boldsymbol{x}'_m, \boldsymbol{x'}_m\right) \end{array}\right]+\sigma_y^2 \mathbf{I}_m cov(f(x),f(x))= κ(x1,x1)κ(xi,x1)κ(xm,x1)κ(x1,xj)κ(xi,xj)κ(xm,xj)κ(x1,xm)κ(xi,xm)κ(xm,xm) +σy2Im

因此,得到最终结果
公式2.1
f ( x ) = cov ( f ( x ) , f ( x ′ ) ) cov ( f ( x ′ ) , f ( x ′ ) ) − 1 f ( x ′ ) f(x) = \text{cov}(f(\boldsymbol{x}), f(\boldsymbol{x}'))\quad\text{cov}(f(\boldsymbol{x}'), f(\boldsymbol{x}'))^{-1}\quad f(\boldsymbol{x}') f(x)=cov(f(x),f(x))cov(f(x),f(x))1f(x)
[ κ ( x 1 , x ′ 1 ) ⋯ κ ( x 1 , x ′ j ) ⋯ κ ( x 1 , x ′ m ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x i , x ′ 1 ) ⋯ κ ( x i , x ′ j ) ⋯ κ ( x i , x ′ m ) ⋮ ⋱ ⋮ ⋱ ⋮ κ ( x n , x ′ 1 ) ⋯ κ ( x n , x ′ j ) ⋯ κ ( x n , x ′ m ) ] cov ( f ( x ′ ) , f ( x ′ ) ) − 1 f ( x ′ ) \left[\begin{array}{ccccc} \kappa\left(\boldsymbol{x}_1, \boldsymbol{x'}_1\right) & \cdots & \kappa\left(\boldsymbol{x}_1, \boldsymbol{x'}_j\right) & \cdots & \kappa\left(\boldsymbol{x}_1, \boldsymbol{x'}_m\right) \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ \kappa\left(\boldsymbol{x}_i, \boldsymbol{x'}_1\right) & \cdots & \kappa\left(\boldsymbol{x}_i, \boldsymbol{x'}_j\right) & \cdots & \kappa\left(\boldsymbol{x}_i, \boldsymbol{x'}_m\right) \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ \kappa\left(\boldsymbol{x}_n, \boldsymbol{x'}_1\right) & \cdots & \kappa\left(\boldsymbol{x}_n, \boldsymbol{x'}_j\right) & \cdots & \kappa\left(\boldsymbol{x}_n, \boldsymbol{x'}_m\right) \end{array}\right]\text{cov}(f(\boldsymbol{x}'), f(\boldsymbol{x}'))^{-1}f(\boldsymbol{x}') κ(x1,x1)κ(xi,x1)κ(xn,x1)κ(x1,xj)κ(xi,xj)κ(xn,xj)κ(x1,xm)κ(xi,xm)κ(xn,xm) cov(f(x),f(x))1f(x)
最终可知基函数可以认为是 κ ( ⋅ , x i ′ ) , i = 1 , 2 , 3 , … , m \kappa(\cdot, x'_i),i =1,2,3,\ldots, m κ(,xi),i=1,2,3,,m。笔者认为这里的 κ ( x i , ⋅ ) \kappa (x_i,\cdot) κ(xi,),也就是固定了一个变量的核函数,可以认为是一种特殊的基函数。

2.3 从RKHS看高斯过程(主要参考[4])

2.3.1 背景

2.3.1.1函数的范数

Mercer定理表明,任何正定核函数都可以用特征函数表示为:
κ ( x , x ′ ) = ∑ i = 1 ∞ λ i ϕ i ( x ) ϕ i ( x ′ ) \kappa\left(\mathbf{x}, \mathbf{x}^{\prime}\right)=\sum_{i=1}^{\infty} \lambda_i \phi_i(\mathbf{x}) \phi_i\left(\mathbf{x}^{\prime}\right) κ(x,x)=i=1λiϕi(x)ϕi(x)
其中, ϕ i \phi_i ϕi 组成一个函数空间的正交归一基:
H k = { f : f ( x ) = ∑ i = 1 ∞ f i ϕ i ( x ) , ∑ i = 1 ∞ f i 2 λ i < ∞ } \mathcal{H}_k=\left\{f: f(\mathbf{x})=\sum_{i=1}^{\infty} f_i \phi_i(\mathbf{x}), \sum_{i=1}^{\infty} \frac{f_i^2}{\lambda_i}<\infty\right\} Hk={f:f(x)=i=1fiϕi(x),i=1λifi2<}
现在在该空间中,定义两个函数 f ( x ) = ∑ i = 1 ∞ f i ϕ i ( x ) f(\mathbf{x})=\sum_{i=1}^{\infty} f_i \phi_i(\mathbf{x}) f(x)=i=1fiϕi(x) g ( x ) = ∑ i = 1 ∞ g i ϕ i ( x ) g(\mathbf{x})=\sum_{i=1}^{\infty} g_i \phi_i(\mathbf{x}) g(x)=i=1giϕi(x) 之间的内积为:
⟨ f , g ⟩ H ≜ ∑ i = 1 ∞ f i g i λ i \langle f, g\rangle_{\mathcal{H}} \triangleq \sum_{i=1}^{\infty} \frac{f_i g_i}{\lambda_i} f,gHi=1λifigi
因此
其中, ∥ f ∥ H \|f\|_H fH 是函数 f f f 在再生核希尔伯特空间(RKHS)中的范数,定义如下:

∥ f ∥ H = ⟨ f , f ⟩ H = ∑ i = 1 ∞ f i 2 λ i \|f\|_H=\langle f, f\rangle_{\mathcal{H}}=\sum_{i=1}^{\infty} \frac{f_i^2}{\lambda_i} fH=f,fH=i=1λifi2

其中, f i f_i fi 是函数 f f f 在核函数对应的特征函数 e i e_i ei 下的投影系数, λ i \lambda_i λi 是相应的特征值。

那么实际中如何求得 f i f_i fi呢?其实一般也是根据已有的输入输出对来求,首先回顾表示定理[4]。

2.3.1.2 表示定理(The Representer Theorem)

在其一般形式中,表示定理表述如下:

在一个再生核希尔伯特空间(RKHS) H k \mathcal{H}_k Hk 中,对于一个学习问题,我们的目标是最小化以下形式的目标函数:
J ( f ) = L ( f ( x 1 ) , … , f ( x N ) ) + λ ∥ f ∥ H k 2 \mathcal{J}(f)=L\left(f\left(\mathbf{x}_1\right), \ldots, f\left(\mathbf{x}_N\right)\right)+\lambda\|f\|_{\mathcal{H}_k}^2 J(f)=L(f(x1),,f(xN))+λfHk2
其中:

L L L 是损失函数,依赖于函数 f f f N N N 个训练点 { x i } i = 1 N \left\{\mathbf{x}_i\right\}_{i=1}^N {xi}i=1N 上的取值, ∣ f ∣ H k |f|_{\mathcal{H}_k} fHk 是函数 f f f 在 RKHS 中的范数,
λ > 0 \lambda>0 λ>0 是正则化参数。
则存在一个最优解 f ∗ ∈ H k f^* \in \mathcal{H}_k fHk,使得最小化 J ( f ) \mathcal{J}(f) J(f) 的解总是可以表示为:
f ∗ ( x ) = ∑ i = 1 N α i κ ( x , x i ) f^*(\mathbf{x})=\sum_{i=1}^N \alpha_i \kappa\left(\mathbf{x}, \mathbf{x}_i\right) f(x)=i=1Nαiκ(x,xi)
其中, κ ( ⋅ , ⋅ ) \kappa(\cdot, \cdot) κ(,) 是 RKHS 关联的核函数, { α i } i = 1 N \left\{\alpha_i\right\}_{i=1}^N {αi}i=1N是待求的系数。

2.3.1.3 结论

上述定理的形式 f ∗ ( x ) = ∑ i = 1 N α i κ ( x , x i ) f^*(\mathbf{x})=\sum_{i=1}^N \alpha_i \kappa\left(\mathbf{x}, \mathbf{x}_i\right) f(x)=i=1Nαiκ(x,xi)与高斯过程的结论 2.2.2章节一致。

2.3.2 RKHS的问题

RKHS有一个问题:如果基函数太多,那么 f ( x ) f(\mathbf{x}) f(x)就会过于复杂。

2.3.3 解决思路

相对于核而言,复杂的函数将具有较大的范数,因为它们需要许多基函数(特征函数)来表示。我们的目标是选择一个简单的函数,以便很好地拟合数据。

2.3.4 解决方法

我们可以通过将 f ( x ) f(\mathbf{x}) f(x)代入表达式:
f ( x ) = ∑ i = 1 N α i κ ( x , x i ) f(\mathbf{x})=\sum_{i=1}^N \alpha_i \kappa\left(\mathbf{x}, \mathbf{x}_i\right) f(x)=i=1Nαiκ(x,xi)

并利用再生性质(reproducing property)来求解参数向量 α \boldsymbol{\alpha} α ,从而得到目标函数:
J ( α ) = 1 2 σ y 2 ∣ y − K α ∣ 2 + 1 2 α T K α J(\boldsymbol{\alpha})=\frac{1}{2 \sigma_y^2}|\mathbf{y}-\mathbf{K} \boldsymbol{\alpha}|^2+\frac{1}{2} \boldsymbol{\alpha}^T \mathbf{K} \boldsymbol{\alpha} J(α)=2σy21yKα2+21αTKα
其中, K \mathbf{K} K 是核矩阵, y \mathbf{y} y 是目标值向量, σ y 2 \sigma_y^2 σy2 是噪声方差, α \boldsymbol{\alpha} α 是待求的系数向量。

通过对 α \alpha α 进行最小化,我们得到:

α ^ = ( K + σ y 2 I ) − 1 y \hat{\boldsymbol{\alpha}}=\left(\mathbf{K}+\sigma_y^2 \mathbf{I}\right)^{-1} \mathbf{y} α^=(K+σy2I)1y

因此,最优函数估计为:
公式2.2
f ^ ( x ∗ ) = ∑ i α ^ i κ ( x ∗ , x i ) = k ∗ T ( K + σ y 2 I ) − 1 y \hat{f}\left(\mathbf{x}_*\right)=\sum_i \hat{\alpha}_i \kappa\left(\mathbf{x}_*, \mathbf{x}_i\right)=\mathbf{k}_*^T\left(\mathbf{K}+\sigma_y^2 \mathbf{I}\right)^{-1} \mathbf{y} f^(x)=iα^iκ(x,xi)=kT(K+σy2I)1y

2.3.5 结论

公式2.2与公式2.1中高斯过程(GP)预测分布的后验均值形式完全一致。事实上,由于高斯分布的均值和众数是相同的,我们可以看出,带有 RKHS 正则项的线性回归等价于使用 GP 的最大后验 (MAP)估计。

参考文献

[1]: 周志华,机器学习,清华大学出版社
[2]: Wikipedia, “Mercer’s theorem”
[3]: 百度百科: Mercer定理
[4]: Kevin P. Murphy. 2012. Machine Learning: A Probabilistic Perspective. The MIT Press

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值