利用核方法将低维数据映射到高维
2020-11-06 本文已影响0人
小潤澤
前言
在分类问题中,有一些数据在地位空间里面是线性不可分的,但是我们把这一些数据映射到高维空间,我们就可以找到一个线性超平面,将两类数据线性分类。那么这样把低维空间的data映射到高维空间的方法我们称之为核方法
类比于降维,降维是将高维空间的data保留其最大特征,然后将其投影到低维空间;而核方法则是将低维的data映射到高维空间。
核方法的作用
正如前言所说的,线性化的方法往往最为直接,简单。例如在回归问题中,线性回归无疑是最简单的方式,但是往往很多时候我们得到的并不是直接的线性关系,通常需要我们对数据做一些变形,比方说对决策变量和响应变量做一些函数变化后,使其满足线性关系;或者根据散点图估算非线性的函数关系式,利用非线性最小二乘法估计参数,并评价模型效果。
对于分类问题来说,常见的例如SVM,我们需要在空间中找到一个线性的超平面来对你对data进行而分类,有一些情况可以进行线性分类,但是有一些不能进行线性分类。而不能线性分类又可以看成两种,一种是完全不可以线性分类,一种是在当前维度的空间无法线性分类,但是在高维空间里面可以进行线性分类(在数学上证明过的)。

比方说上图,在二维空间内是无法线性可分的,但是我们通过观察发现Tumor和Normal又是可分开的,那么我们需要把数据映射到高维空间上,在高维空间中寻找到一个超平面,线性分类这两个group
比方说将二维数据通过高斯核函数映射到三维:

在三维空间内我们就可以很轻松的找到个线性超平面进行二分类。那么我们将三维空间的线性可分超平面结合数据点的分布(在三维空间的高斯分布中,黑点位于顶峰的位置,靠中心,白点则位于较为外侧的部位),投影到原二维平面后,得到的椭圆决策边界即为二维平面的分类曲线

高斯核函数
高斯核的表达式为:

对于高斯核函数,我们怎么把低维数据映射到高维呢?借助泰勒公式:

高维空间的每一个元素为:

比方说我们想将二维data通过高斯核函数转换成三维data,我们将泰勒展开式取2阶就可以了,假设在二维平面内我们有x这个点(x1,x2表示二维坐标):

其中Z1,Z2,Z3是三维空间构成的新坐标,这样就实现了低维数据映射到高维
部分参考:
透彻理解高斯核函数背后的哲学思想与数学思想