0%

SVM中高斯核为什么可以映射到无穷多维

前言

通过简单形式解释为什么SVM中,高斯核可以把原始维度映射到无穷多维。

多项式核函数

简单情形多项式核比如:

\[k(x,y)=(x^Ty)^2\]

首先考虑简单情形,原始维度只有2维,即\[x=\left[\begin{matrix} x_1\\ x_2 \end{matrix} \right] \]\[y=\left[\begin{matrix} y_1\\ y_2 \end{matrix} \right]\]

则有:\[k(x,y)=(x_1y_1+x_2y_2)^2=x_1^2y_1^2+2x_1x_2y_1y_2+x_2^2y_2^2=\left[\begin{matrix} x_1^2 \\ \sqrt{2}x_1x_2 \\ x_2^2 \end{matrix} \right]^T\left[\begin{matrix} y_1^2 \\ \sqrt{2}y_1y_2 \\ y_2^2 \end{matrix} \right]\].

可以看出,相当于找到一个映射\(\Phi(z)\),把原来的\[z=\left[\begin{matrix} z_1\\ z_2 \end{matrix} \right] \]映射到了\[\left[\begin{matrix} z_1^2 \\ \sqrt{2}z_1z_2 \\ z_2^2 \end{matrix} \right]\]。这就是相当于把原来\(\mathbb{R}^2\)空间中的特征映射到了\(\mathbb{R}^3\)中。

紧接着,把原始维度泛化到\(n\)维:

\[\begin{align}k(x,y) &=(x_1y_1+x_2y_2+\cdots+x_ny_n)^2 \\ &=\sum_{i=1}^n(x_i^2y_i^2)+2\cdot\sum_{i=1}^{n-1}\sum_{j=i+1}^{n}x_iy_ix_jy_j \\ &= \left[\begin{matrix} x_1^2 \\ \sqrt{2}x_1x_2 \\ \sqrt{2}x_1x_3 \\\cdots \\ x_2^2 \\ \sqrt{2}x_2x_3 \\ \cdots\\ x_n^2 \end{matrix} \right]^T\left[\begin{matrix} y_1^2 \\ \sqrt{2}y_1y_2 \\ \sqrt{2}y_1y_3 \\\cdots \\ y_2^2 \\ \sqrt{2}y_2y_3 \\ \cdots\\ y_n^2 \end{matrix} \right] \end{align} \].

即找到一个映射\(\Phi(\cdot)\)将原来\(n\)维的特征映射到了\(\frac{n(n+1)}{2}\)维。

高斯核

现在再看简单版的高斯核[1]:

\[k(x,y)=\exp (-||x-y||^2)\]

先考虑2维情况:

\[\begin{align} k(x,y) &=\exp (-||x-y||^2) \\ &=\exp (-(x_1^2+x_2^2+y_1^2+y_2^2-2x_1y_1-2x_2y_2)) \\ &= \exp(-(x_1^2+x_2^2))\cdot \exp(-(y_1^2+y_2^2))\cdot \exp(2(x_1y_1+x_2y_2)) \\ &= \exp(-||x||^2)\cdot\exp(-||y||^2)\cdot \exp(2x^Ty) \\ &= \exp(-||x||^2)\cdot\exp(-||y||^2)\cdot \sum_{n=0}^{\infty}\frac{(2x^Ty)^n}{n!} \quad \text{(泰勒展开式: $e^x=\sum_{n=0}^\infty \frac{x^n}{n!} $)} \end{align}\]

根据前面的多项式核可知后面的\(\sum_{n=0}^{\infty}\frac{(2x^Ty)^n}{n!}\)中的每一\(n\)阶项可以找到相应的映射\(\phi_n\)

所以\[k(x,y)=(\exp(-||x||^2) \cdot \left[\begin{matrix} \frac{\phi_0(x)}{\sqrt{0!}} \\ \frac{\phi_1(x)}{\sqrt{1!}} \\ \frac{\phi_2(x)}{\sqrt{2!}} \\\cdots \\ \frac{\phi_n(x)}{\sqrt{n!}} \\ \cdots\\ \end{matrix} \right] )^T \cdot ( \exp(-||y||^2)\cdot \left[\begin{matrix} \frac{\phi_0(y)}{\sqrt{0!}} \\ \frac{\phi_1(y)}{\sqrt{1!}} \\ \frac{\phi_2(y)}{\sqrt{2!}} \\\cdots \\ \frac{\phi_n(y)}{\sqrt{n!}} \\ \cdots\\ \end{matrix} \right]) \]

可以看出可以找到映射\[\Phi(x) = \exp(-||x||^2) \cdot \left[\begin{matrix} \frac{\phi_0(x)}{\sqrt{0!}} \\ \frac{\phi_1(x)}{\sqrt{1!}} \\ \frac{\phi_2(x)}{\sqrt{2!}} \\\cdots \\ \frac{\phi_n(x)}{\sqrt{n!}} \\ \cdots\\ \end{matrix} \right] \],该映射相当于把原来2维的特征映射到了无穷维。

#参考

[1] https://zh.wikipedia.org/wiki/%E5%BE%84%E5%90%91%E5%9F%BA%E5%87%BD%E6%95%B0%E6%A0%B8

[2] https://murongxixi.github.io/2018/04/23/%E5%A4%9A%E9%A1%B9%E5%BC%8F%E6%A0%B8vsrbf%E6%A0%B8/

[3] https://www.quora.com/Why-does-the-RBF-radial-basis-function-kernel-map-into-infinite-dimensional-space-mentioned-many-times-in-machine-learning-lectures