核方法的理解

核方法在非线性分类问题上有很好的解决思路,应用于学习器SVM以及降维KPCA上,当然二者路径也不同,SVM就是从低维不可分映射到高维可分,而KPCA是从低维不可分映射到高维后再降维到低维可分,但都脱离不来这个核方法。

核方法的原理大致是:在将低维映射到高维的过程中,如果在高维空间计算点积,其复杂度可想而知,但通过核函数可以在低维空间内得到高维空间的点积。

理解的核心在于:核函数如何做到这点呢?

核方法的理解

通过这个解释,可以看出选择一定的核函数,可以实现低维空间计算高维空间的点积。

核函数怎么定义:

对一个二维空间做映射,选择的新空间是原始空间的所有一阶和二阶的组合,得到了五个维度;如果原始空间是三维,那么我们会得到 19 维的新空间,随着维度的增加,非线性组合的数目是呈爆炸性增长,维度无穷无尽。

核方法的理解

核函数有如此的好处,但构造核函数本身就是一件不容易的事。

巧妙的核技巧令人垂涎:通过核函数,用低维的计算量得到了高维的结果,没有增加计算复杂度的同时,得到了性质更好的高维投影。

核方法的理解

只要涉及到内积运算,都可运用核函数替代来得到高维投影的内积,于是虽然寻找核函数困难,根据Mercer定理还是有规律可循。

核方法的理解

被证明可用的核函数有:

核方法的理解

总结:核方法在线性与非线性间架起一座桥梁,通过巧妙地引进核函数,避免了维数灾难,没有增加计算复杂度却实现了高维点积运算。核函数的定义需满足Mercer定理,被证明可用的主要有三类线性核、高斯核、多项核。

深入学习:

https://www.ics.uci.edu/~welling/teaching/KernelsICS273B/svmintro.pdf

https://arxiv.org/pdf/math/0701907.pdf