lovesvidon的个人博客分享 http://blog.sciencenet.cn/u/lovesvidon

博文

【ML系列】核函数的分解(补充)

已有 6072 次阅读 2018-10-11 11:59 |系统分类:科研笔记

本篇主要是对文章【ML系列】从贝叶斯线性回归到高斯过程中关于内积映射作为核函数的一个补充。根据核的定义,我们可以将特征空间映射后的数据集$\phi(X)$以及测试数据$\phi(x_{*})$与权重矩阵$w$的内积作为预测值与观测值间的协方差,同时将该协方差视为核,所以最初的核的定义为:

$$ k(x_{*}, X) = \phi(x_{*})^T\Sigma_p\phi(X) $$

如果我们将实对称矩阵$\Sigma_p$拆分开后,可以把核看作是两个特征空间的内积,即可以把核函数写为:

$$ k(x_{*}, X) = \psi(x_{*})^T \psi(X) $$

也就是说,任何一个核函数都应当可以分解为两个映射相同的特征空间的内积,这里需要强调一点的是$\psi$映射后的特征空间的的维度与$\phi$是相同的,所以如果可以将核函数分解的话,那么我们就可以获得该核函数所对应的映射后的特征空间维度。

这里加一点个人理解,我认为核函数的概念应该是工程界为了进一步抽象化特征空间映射而提出来的,但实际应用中却与特征空间脱钩了,如果不清楚核函数的来源,很容易将其机制理解成特征空间映射的结果是来源于核函数的,但事实却是相反

经常应用的两个既定的核函数,一个是n次方多项式核函数,一个是高斯核函数。我们先看n次方多项式核函数的分解,我们以2次方为例:

$$k(X_1, X_2) = < X_1, X_2 >^2$$

其中$X_1 = \begin{matrix}[x_1 & y_1]^T\end{matrix}$,$X_2 = \begin{matrix}[x_2 & y_2]^T\end{matrix}$,将其带入到核函数中:

$$ \begin{align} k(X_1, X_2) & = (x_1x_2 + y_1 y_2)^2\\ & = x_1^2x_2^2 + 2x_1x_2y_1y_2 + y_1^2 + y_2^2 \\ & = \begin{matrix}[x_1^2 & \sqrt{2}x_1y_1 & y_1^2]\end{matrix} \left[\begin{matrix} x_2^2\\\sqrt{2}x_2y_2\\y_2^2 \end{matrix}\right] \end{align}$$

进而得出特征空间映射后的数据集为:$ \psi(X) = \begin{matrix}[x^2 & \sqrt{2}xy & y^2]^T\end{matrix} $,可以发现特征空间映射$\psi$把二维数据映射到三维空间了,但需要强调一点的是,这在核函数中是体现不出来的,核函数得到的只是应用特征空间映射后的协方差。


高斯核函数

高斯核函数在表达式上可以写为:

$$ k(X_1, X_2) = \exp\left(-\frac{1}{2}((X_1 - X_2)^T\Sigma^{-1}(X_1 - X_2)) \right) $$

让我们假设样本$X_1 = [x_1]$,$X_2 = [x_2]$均为一维数据集,下面的推导过程参考了台大林轩田的机器学习课程课间:

$$ \begin{align} k(X_1, X_2) & = \exp\left(-\frac{1}{2\sigma^2}(x_1 - x_2)^2\right) \\ & = \exp\left(-\frac{x_1^2}{2\sigma^2}\right)  \exp\left(-\frac{x_2^2}{2\sigma^2}\right)  \exp\left(-\frac{x_1x_2}{\sigma^2}\right) \end{align} $$

将$\exp\left(-\frac{x_1x_2}{\sigma^2}\right)$做泰勒展开,可以得到:
$$ \begin{align} k(X_1, X_2) & = \exp\left(-\frac{x_1^2}{2\sigma^2}\right)  \exp\left(-\frac{x_2^2}{2\sigma^2}\right) \left( \Sigma_{i = 0}^{\infty} \frac{(x_1x_2)^i}{i!} \right) \\ & = \left[\begin{matrix} \exp\left(-\frac{x_1^2}{2\sigma^2}\right) \\ x_1 \exp\left(-\frac{x_1^2}{2\sigma^2}\right) \\ \frac{x_1^2}{2}\exp\left(-\frac{x_1^2}{2\sigma^2}\right)\\ ...  \end{matrix}\right]^T \left[\begin{matrix} \exp\left(-\frac{x_2^2}{2\sigma^2}\right) \\ x_2 \exp\left(-\frac{x_2^2}{2\sigma^2}\right) \\ \frac{x_2^2}{2}\exp\left(-\frac{x_2^2}{2\sigma^2}\right)\\ ...  \end{matrix}\right] \end{align}$$




https://blog.sciencenet.cn/blog-3189881-1140230.html

上一篇:【ML系列】从贝叶斯线性回归到高斯过程
下一篇:简单明晰强化学习中Monte Carlo方法与TD方法的相关问题
收藏 IP: 210.45.251.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-26 22:52

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部