Reproducing Kernel Hilbert Space,再生核希尔伯特空间

  • Eigen Decomposition
  • Kernel Function
  • Reproducing Kernel Hilbert Space
  • Support Vector Machine
  • 领域自适应入门参考博文

原文链接:http://songcy.net/posts/story-of-basis-and-kernel-part-2/

本文主要讨论和函数核再生核希尔伯特空间(reproducing kernel Hilbert space, RKHS)。
核方法的动机在于映射一个Rn\mathcal{R}^{n}Rn空间中的向量为特征空间中的另一个向量。
如下图所示,红色和蓝色的数据点在Rn\mathcal{R}^{n}Rn空间中是不易分的。但如果将这些数据点映射到高维特征空间,我们也许可以使其容易分开。本文不提供严格的理论定义,而是对基本思想的直观描述。

Eigen Decomposition

对于实对称矩阵A\mathbf{A}A, 存在实数λ\lambdaλ和向量x\mathbf{x}x使得
Ax=λx(1)\mathbf{Ax}=\lambda \mathbf{x} \tag{1} Ax=λx(1)

Kernel Function

函数 f(x)f(\mathbf{x})f(x) 可以看作是一个无限向量。对于一个有着两个独立变量的 K(x,y)K(\mathbf{x,y})K(x,y),我们可以将它看作是一个无限的矩阵。对此有K(x,y)=K(y,x)K(\mathbf{x,y})=K(\mathbf{y,x})K(x,y)=K(y,x)并且
∬f(x)K(x,y)f(y)dxdy≥0\iint f(\mathbf{x}) K(\mathbf{x,y}) f(\mathbf{y}) d\mathbf{x}d\mathbf{y}\geq 0∬f(x)K(x,y)f(y)dxdy≥0
则对于任意的函数fff,K(x,y)K(\mathbf{x,y})K(x,y)是对称正定的,在这种情况下K(xK(\mathbf{x}K(x,y)\mathbf{y})y)是一个核函数.
类似于矩阵的特征根和特征向量,存在特征根λ\lambdaλ和特征函数 ψ(x)\psi(\mathbf{x})ψ(x) 使得
∫K(x,y)ψ(x)dx=λψ(y)\int K(\mathbf{x,y})\psi(\mathbf{x})d\mathbf{x}=\lambda\psi(\mathbf{y})∫K(x,y)ψ(x)dx=λψ(y)

个人理解就是左边的式子对 x 做积分,就得到一个关于y的特征函数的特征根

那么对于不同的特征根λ1,λ2\lambda_{1},\lambda_{2}λ1​,λ2​, 且分别对应于不同的特征函数 ψ1(x)\psi_{1}(\mathbf{x})ψ1​(x), ψ2(x)\psi_{2}(\mathbf{x})ψ2​(x), 我们可以得到

∫λ1ψ1(x)ψ2(x)dx=∬K(y,x)ψ1(y)dyψ2(x)dx=∬K(x,y)ψ2(x)dxψ1(y)dy=∫λ2ψ2(y)ψ1(y)dy=∫λ2ψ2(x)ψ1(x)dx\begin{aligned}\int \lambda_{1} \psi_{1}(\mathbf{x}) \psi_{2}(\mathbf{x}) d \mathbf{x} &=\iint K(\mathbf{y}, \mathbf{x}) \psi_{1}(\mathbf{y}) d \mathbf{y} \psi_{2}(\mathbf{x}) d \mathbf{x} \\&=\iint K(\mathbf{x}, \mathbf{y}) \psi_{2}(\mathbf{x}) d \mathbf{x} \psi_{1}(\mathbf{y}) d \mathbf{y} \\&=\int \lambda_{2} \psi_{2}(\mathbf{y}) \psi_{1}(\mathbf{y}) d \mathbf{y} \\&=\int \lambda_{2} \psi_{2}(\mathbf{x}) \psi_{1}(\mathbf{x}) d \mathbf{x}\end{aligned}∫λ1​ψ1​(x)ψ2​(x)dx​=∬K(y,x)ψ1​(y)dyψ2​(x)dx=∬K(x,y)ψ2​(x)dxψ1​(y)dy=∫λ2​ψ2​(y)ψ1​(y)dy=∫λ2​ψ2​(x)ψ1​(x)dx​

因此 <ψ1,ψ2>=∫ψ1(x)ψ2(x)dx=0<\psi_{1},\psi_{2}>=\int \psi_{1}(\mathbf{x})\psi_{2}(\mathbf{x})d\mathbf{x}=0 <ψ1​,ψ2​>=∫ψ1​(x)ψ2​(x)dx=0
再一次地,特征函数为正交的。此处ψ\psiψ表示函数本身(一个无限的向量)。
对于一个核函数,无限的特征根{λi}i=1∞\{\lambda_{i}\}^{\infty}_{i=1}{λi​}i=1∞​ 与无限的特征函数 {ψi}i=1∞\{\psi_{i}\}^{\infty}_{i=1}{ψi​}i=1∞​ 可以找到。同样地,对于矩阵来说
K(x,y)=∑i=0∞λiψi(x)ψi(y)K(\mathbf{x}, \mathbf{y})=\sum_{i=0}^{\infty} \lambda_{i} \psi_{i}(\mathbf{x}) \psi_{i}(\mathbf{y})K(x,y)=i=0∑∞​λi​ψi​(x)ψi​(y)

即 Mercer’s theorem,此处<ψ1,ψ2>=0,i≠j<\psi_{1},\psi_{2}>=0,i\neq j<ψ1​,ψ2​>=0,i​=j。因此, {ψi}i=1∞\{\psi_{i}\}^{\infty}_{i=1}{ψi​}i=1∞​构建了一组函数空间的正交基。

常见核

  • Polunomial kernel K(x,y)=(γxTy+C)dK(\mathbf{x,y})=(\gamma x^{T}y+C)^dK(x,y)=(γxTy+C)d
  • Gaussian radial basis kernel K(x,y)=exp⁡(−γ∣∣x−y∣∣2)K(\mathbf{x,y})=\exp (-\gamma ||\mathbf{x-y}||^{2})K(x,y)=exp(−γ∣∣x−y∣∣2)
  • Sigmoid kernel K(x,y)=tanh⁡(γxTy+C)K(\mathbf{x,y})=\tanh (\gamma \mathbf{x^{T}y}+C)K(x,y)=tanh(γxTy+C)

Reproducing Kernel Hilbert Space

{λiψi}i=1∞\{\sqrt{\lambda_{i}} \psi_{i}\}_{i=1}^{\infty}{λi​​ψi​}i=1∞​为一组正交基并构造一个希尔伯特空间 H\mathcal{H}H(Hilbert space)。在空间中的任何函数和向量都可以用基线性表示出来。假设

f=∑i=1∞fiλ1ψif=\sum\limits_{i=1}^{\infty}f_{i}\sqrt{\lambda_{1}}\psi_{i}f=i=1∑∞​fi​λ1​​ψi​

我们将 H\mathcal{H}H 中的一个无限向量记为 fff
f=(f1,f2,⋯)HTf=(f_{1},f_{2},\cdots)_{\mathcal{H}}^{T}f=(f1​,f2​,⋯)HT​
对于其他的函数g=(g1,g2,⋯)HTg=(g_{1},g_{2},\cdots)_{\mathcal{H}}^{T}g=(g1​,g2​,⋯)HT​,有
<f,g>H=∑i=1∞figi<f,g>_{\mathcal{H}}=\sum_{i=1}^{\infty}f_{i}g_{i}<f,g>H​=i=1∑∞​fi​gi​

对于核函数KKK,在此使用K(x,y)K(\mathbf{x}, \mathbf{y})K(x,y)来表示在参数点x,y\mathbf{x,y}x,y处的KKK值的评估,使用K(⋅,⋅)K(\cdot ,\cdot )K(⋅,⋅)来表示函数本身(即无限矩阵),使用K(x,⋅)K(\mathbf{x},\cdot )K(x,⋅)来表示矩阵的第x\mathbf{x}x行。例如,我们将核函数的一个参数固定为x\mathbf{x}x,则可以将其看作为一个参数的函数或无限的向量,则有
K(x,⋅)=∑i=0∞λiψi(x)ψiK(\mathbf{x},\cdot)=\sum_{i=0}^{\infty}\lambda_{i}\psi_{i}(\mathbf{x})\psi_{i}K(x,⋅)=i=0∑∞​λi​ψi​(x)ψi​
在H\mathcal{H}H空间中,可记作
K(x,⋅)=(λ1ψ1(x),λ2ψ2(x),⋯)HTK(\mathbf{x},\cdot)=(\sqrt{\lambda_{1}}\psi_{1}(\mathbf{x}),\sqrt{\lambda_{2}}\psi_{2}(\mathbf{x}),\cdots)_{\mathcal{H}}^{T}K(x,⋅)=(λ1​​ψ1​(x),λ2​​ψ2​(x),⋯)HT​
因此
<K(x,⋅),K(y,⋅)>H=∑i=0∞λiψi(x)ψi(y)=K(x,y)<K(\mathbf{x,\cdot}),K(\mathbf{y},\cdot)>_{\mathcal{H}}=\sum_{i=0}^{\infty} \lambda_{i} \psi_{i}(\mathbf{x})\psi_{i}(\mathbf{y})=K(\mathbf{x,y})<K(x,⋅),K(y,⋅)>H​=i=0∑∞​λi​ψi​(x)ψi​(y)=K(x,y)

这就是再生性,因此H\mathcal{H}H被称为再生希尔伯特空间( reproducing kernel Hilbert space ,RKHS)

回到最初的问题:怎样将点映射到特征空间?如果定义一种映射:
Φ(x)=K(x,⋅)=(λ1ψ1(x),λ2ψ2(x),⋯)T\mathbf{\Phi}(\mathbf{x})=K(\mathbf{x}, \cdot)=\left(\sqrt{\lambda_{1}} \psi_{1}(\mathbf{x}), \sqrt{\lambda_{2}} \psi_{2}(\mathbf{x}), \cdots\right)^{T}Φ(x)=K(x,⋅)=(λ1​​ψ1​(x),λ2​​ψ2​(x),⋯)T

然后我们将点x\mathbf{x}x映射到H\mathcal{H}H,此处Φ\PhiΦ不是一个函数,因为它指向特征空间H\mathcal{H}H的向量或函数,于是有
<Φ(x),Φ(y)>H=<K(x,⋅),K(y,⋅)>H=K(x,y)<\mathbf{\Phi}(\mathbf{x}), \mathbf{\Phi}(\mathbf{y})>_{\mathcal{H}}=<K(\mathbf{x}, \cdot), K(\mathbf{y}, \cdot)>_{\mathcal{H}}=K(\mathbf{x}, \mathbf{y})<Φ(x),Φ(y)>H​=<K(x,⋅),K(y,⋅)>H​=K(x,y)

因此,我们不需要知道什么是映射,特征空间在哪里,或者特征空间的基础是什么。对于对称正定函数KKK,必须至少存在一个映射Φ\bold{\Phi}Φ和一个特征空间H\mathcal{H}H,使
<Φ(x),Φ(y)>=K(x,y)<\mathbf{\Phi}(\mathbf{x}), \mathbf{\Phi}(\mathbf{y})>=K(\mathbf{x}, \mathbf{y})<Φ(x),Φ(y)>=K(x,y)
这就是所谓的kernel trick。

Support Vector Machine

支持向量机(SVM)是RKHS最广为人知的应用之一。假设我们有数据对(xi,yi)i=1n{(\mathbf{x}_i,y_i)}_{i=1}^n(xi​,yi​)i=1n​,其中yiy_iyi​为1或-1,表示点xi\mathbf{x}_{i}xi​的类。支持向量机假设一个超平面来最好地分离这两个类。

min⁡β,β012∣∣β∣∣2+C∑i=1nξi\min_{\beta,\beta_{0}}\frac{1}{2}||\beta||^{2}+C\sum_{i=1}^{n}\xi_{i}β,β0​min​21​∣∣β∣∣2+Ci=1∑n​ξi​
subjecttoξi≥0,yi(xiTβ+β0)≥1−ξi,∀isubject \ to \ \xi_{i}\geq 0,y_{i}(\mathbf{x}_{i}^{T}\beta+\beta_{0})\geq1-\xi_{i},\forall isubject to ξi​≥0,yi​(xiT​β+β0​)≥1−ξi​,∀i

有时这两个类在Rn\mathcal{R}^nRn空间中很难分离,因此可以将xi\mathbf{x}_ixi​映射到高维特征空间中,在高维特征空间中这两个类很容易分离。原来的问题可以重新表述为

min⁡β,β012∣∣β∣∣2+C∑i=1nξi\min_{\beta,\beta_{0}}\frac{1}{2}||\beta||^{2}+C\sum_{i=1}^{n}\xi_{i}β,β0​min​21​∣∣β∣∣2+Ci=1∑n​ξi​
subjecttoξi≥0,yi(Φ(xi)Tβ+β0)≥1−ξi,∀isubject \ to \ \xi_{i}\geq 0,y_{i}(\Phi(\mathbf{x}_{i})^{T}\beta+\beta_{0})\geq1-\xi_{i},\forall isubject to ξi​≥0,yi​(Φ(xi​)Tβ+β0​)≥1−ξi​,∀i

增广拉格朗日函数为
Lp=12∣∣β∣∣2+C∑i=1nξi−∑i=1nαi[yi(Φ(xi)Tβ+β0)−(1−ξi)]−∑i=1nμiξiL_{p}=\frac{1}{2} ||\beta||^{2}+C\sum_{i=1}^{n}\xi_{i}-\sum_{i=1}^{n}\alpha_{i}[y_{i}(\Phi(\mathbf{x}_{i})^{T}\beta+\beta_{0})-(1-\xi_{i})]-\sum_{i=1}^{n}\mu_{i}\xi_{i}Lp​=21​∣∣β∣∣2+Ci=1∑n​ξi​−i=1∑n​αi​[yi​(Φ(xi​)Tβ+β0​)−(1−ξi​)]−i=1∑n​μi​ξi​

由于∂Lp∂β=0\frac{\partial L_{p}}{\partial \beta} =0∂β∂Lp​​=0
我们得到β=∑i=1nαiyiΦ(xi)\beta =\sum_{i=1}^{n} \alpha_{i}y_{i}\Phi(\mathbf{x}_{i})β=i=1∑n​αi​yi​Φ(xi​)

也就是说,β\boldsymbol{\beta}β可以写成xi\mathbf{x}_ixi​s !我们可以将β\boldsymbol{\beta}β替换为新的优化问题。目标函数变为
12∥∑i=1nαiyiΦ(xi)∥2+C∑i=1nξi=12<∑i=1nαiyiΦ(xi),∑j=1nαjyjΦ(xj)>+C∑i=1nξi=12∑i=1n∑j=1nαiαjyiyj<Φ(xi),Φ(xj)>+C∑i=1nξi=12∑i=1n∑j=1nαiαjyiyjK(xi,xj)+C∑i=1nξi\begin{aligned}& \frac{1}{2}\left\|\sum_{i=1}^{n} \alpha_{i} y_{i} \boldsymbol{\Phi}\left(\mathbf{x}_{i}\right)\right\|^{2}+C \sum_{i=1}^{n} \xi_{i} \\=& \frac{1}{2}<\sum_{i=1}^{n} \alpha_{i} y_{i} \mathbf{\Phi}\left(\mathbf{x}_{i}\right), \sum_{j=1}^{n} \alpha_{j} y_{j} \mathbf{\Phi}\left(\mathbf{x}_{j}\right)>+C \sum_{i=1}^{n} \xi_{i} \\=& \frac{1}{2} \sum_{i=1}^{n} \sum_{j=1}^{n} \alpha_{i} \alpha_{j} y_{i} y_{j}<\mathbf{\Phi}\left(\mathbf{x}_{i}\right), \mathbf{\Phi}\left(\mathbf{x}_{j}\right)>+C \sum_{i=1}^{n} \xi_{i} \\=& \frac{1}{2} \sum_{i=1}^{n} \sum_{j=1}^{n} \alpha_{i} \alpha_{j} y_{i} y_{j} K\left(\mathbf{x}_{i}, \mathbf{x}_{j}\right)+C \sum_{i=1}^{n} \xi_{i}\end{aligned}===​21​∥∥∥∥∥​i=1∑n​αi​yi​Φ(xi​)∥∥∥∥∥​2+Ci=1∑n​ξi​21​<i=1∑n​αi​yi​Φ(xi​),j=1∑n​αj​yj​Φ(xj​)>+Ci=1∑n​ξi​21​i=1∑n​j=1∑n​αi​αj​yi​yj​<Φ(xi​),Φ(xj​)>+Ci=1∑n​ξi​21​i=1∑n​j=1∑n​αi​αj​yi​yj​K(xi​,xj​)+Ci=1∑n​ξi​​
约束改变为:
yi[Φ(xi)T(∑j=1nαjyjΦ(xj))+β0]=yi[(∑j=1nαjyj<Φ(xi),Φ(xj)>)+β0]=yi[(∑j=1nαjyjK(xi,xj))+β0]≥1−ξi,∀i\begin{aligned} &y_{i}\left[\mathbf{\Phi}\left(\mathbf{x}_{i}\right)^{T}\left(\sum_{j=1}^{n} \alpha_{j} y_{j} \mathbf{\Phi}\left(\mathbf{x}_{j}\right)\right)+\beta_{0}\right] \\ =& y_{i}\left[\left(\sum_{j=1}^{n} \alpha_{j} y_{j}<\mathbf{\Phi}\left(\mathbf{x}_{i}\right), \mathbf{\Phi}\left(\mathbf{x}_{j}\right)>\right)+\beta_{0}\right] \\ =& y_{i}\left[\left(\sum_{j=1}^{n} \alpha_{j} y_{j} K\left(\mathbf{x}_{i}, \mathbf{x}_{j}\right)\right)+\beta_{0}\right] \geq 1-\xi_{i}, \forall i\end{aligned}==​yi​[Φ(xi​)T(j=1∑n​αj​yj​Φ(xj​))+β0​]yi​[(j=1∑n​αj​yj​<Φ(xi​),Φ(xj​)>)+β0​]yi​[(j=1∑n​αj​yj​K(xi​,xj​))+β0​]≥1−ξi​,∀i​

我们需要做的是确定一个核函数并解出α,β0,ξi{\ α},β_0, ξ_i α,β0​,ξi​。我们不需要实际构造特征空间。对于具有未知类的新数据x\mathbf{x}x,我们可以使用一下算式预测它的类

y^=sign[Φ(x)Tβ+β0]=sign[Φ(x)T(∑i=1nαiyiΦ(xi))+β0]=sign(∑i=1nαiyi<Φ(x),Φ(xi)>+β0)=sign(∑i=1nαiyiK(x,xi)+β0)\begin{array}{ll} \hat{y} &=\mathbf{sign}[\Phi(\mathbf{x})^{T}\beta+\beta_{0}]\\ &=\mathbf{sign}[\Phi(\mathbf{x})^{T}(\sum_{i=1}^{n}\alpha_{i}y_{i}\Phi(\mathbf{x}_{i}))+\beta_{0}]\\ &=\mathbf{sign}(\sum_{i=1}^{n}\alpha_{i}y_{i}<\Phi(\mathbf{x}),\Phi(\mathbf{x}_{i})>+\beta_{0})\\ &=\mathbf{sign}(\sum_{i=1}^{n}\alpha_{i}y_{i}K(\mathbf{x},\mathbf{x}_{i})+\beta_{0}) \end{array} y^​​=sign[Φ(x)Tβ+β0​]=sign[Φ(x)T(∑i=1n​αi​yi​Φ(xi​))+β0​]=sign(∑i=1n​αi​yi​<Φ(x),Φ(xi​)>+β0​)=sign(∑i=1n​αi​yi​K(x,xi​)+β0​)​

核方法增强了支持向量机的鉴别能力。

领域自适应入门参考博文

  1. MMD, https://www.cnblogs.com/zhangcn/p/13710192.html
  2. 核均值嵌入, https://www.cnblogs.com/zhangcn/p/13710192.html
  3. 再生Hilbert空间,https://www.cnblogs.com/zhangcn/p/13289236.html
  4. Domain Adaptation1,https://www.cnblogs.com/zhangcn/p/14239570.html

DA-1-再生核Hilbert空间相关推荐

  1. 核函数,再生核Hilbert空间,表示定理

    在许许多多的分类模型中,线性模型f(x)=w⊤xf(x)=w⊤x是最为简单高效的一种,它最后可以得到一个线性分界面,如下图左图所示,但是在数据集 S={x1,-,xm},   xi∈XS={x1,-, ...

  2. 再生核Hilbert空间

    支持向量机:Kernel II  by pluskid, on 2011-01-25, in Machine Learning     28 comments 本文是"支持向量机系列&quo ...

  3. 机器学习随笔三—再生核Hilbert空间

    我们做的非线性映射 ,它将原始特征空间中的数据点映射到另一个高维空间中,之前我们没有提过,其实这个高维空间在这里有一个华丽的名字--"再生核希尔伯特空间 (Reproducing Kerne ...

  4. 再生核希尔伯特空间(Reproducing Kernel Hilbert Space)

    再生核希尔伯特空间(Reproducing Kernel Hilbert Space) 一.Basic Definitions 1.The Basic Idea 2.The Reproducing K ...

  5. MachineLearning(4)-核函数与再生核希尔伯特空间

    核函数与再生核希尔伯特空间 1.支持向量积-核函数 2.一个函数为核函数的条件 3.核函数与希尔伯特空间 3.1希尔伯特空间-Hilbert空间 1.支持向量积-核函数 核(kernel)的概念由Ai ...

  6. 再生核希尔伯特空间(RKHS)

    今天看一篇论文,看到了一个名词,RKHS(Reproducing Kernel Hilbert space)即再生核希尔伯特空间,不太明所以,所以百度查一查,这里简单记录一下. 线性空间 通俗来讲,线 ...

  7. 函数空间一览:从线性空间到再生核希尔伯特空间

    文章目录 0. 基础概念 0.1 代数系统 0.2 数域 0.3 完备的空间 1. 线性空间/向量空间 2. 度量空间 3. 赋范向量空间 4. 内积空间 5. 巴拿赫空间 6. 希尔伯特空间 7. ...

  8. 泛函p121可分Hilbert空间都同构于l^2

    如何理解最后面两句话, L^2与l^2同构 L^2里面 有理系数多项式 是可数稠密子集 所以L^2可分 可分Hilbert空间都同构于 l^2 傅里叶级数是一个稠密的子集 转载于:https://ww ...

  9. 再生希尔伯特空间_向量、函数向量、再生核希尔伯特空间、核技巧

    参考引用:A Story of Basis and Kernel 来源:http://songcy.net/ 向量与内积 在一个 空间中,我们可以通过 个独立向量的线性组合来表示这个空间里的任意向量. ...

最新文章

  1. dup and dup2的剖析
  2. python 自动化办公 uibot_使用 Python 扩展丰富 UiBot 的功能及在 UiBot 中引用 Python 模块...
  3. 找斐波那契数列中的第N个数——递归与函数自调用算法
  4. comment desc显示表结构_营销模块数据库表解析(二)
  5. puppet应用原理及安装部署
  6. π!到底蕴藏了多少不为人知的秘密?|今日最佳
  7. github 公钥 私钥_搭建自己的技术博客系列 2:把 Hexo 博客部署到 GitHub 上
  8. java生成自定义标志、大小的二维码
  9. scala 基础类库 —— 文件操作
  10. Linux系统启动简单流程:
  11. MOT多目标跟踪之JDE
  12. 什么是弱密码,如何避免
  13. QQ空间说说刷赞网页版开放公测
  14. 我们说运营,到底是在说运营什么?
  15. ubuntu下安装 julia-1.4.2
  16. CSS3 画的哆啦A梦
  17. 干货 | 深度学习之卷积神经网络(CNN)的模型结构
  18. WESAD:情绪分类多模态传感器数据集
  19. 简历被肆意贩卖,个人信息安全何在?
  20. 如何批量替换文件内容(文本格式)

热门文章

  1. 955 加班少的公司名单(2021年)
  2. 用语言笼络人心的十一个要点
  3. 比auto.js更强大、更简单的一站式辅助解决方案「冰狐智能辅助」
  4. 关于双击.py文件闪退的问题
  5. 2024华南理工大学计算机考研信息汇总
  6. 保持进程同步的方法有哪些?
  7. pikachu通关笔记
  8. 前端小技巧:js 动态创建table标签下的tr标签
  9. SAP FI 会计凭证
  10. 献给老年朋友们的网址汇集