机器学习中的核函数

核函数的定义

核函数包括线性核函数、多项式核函数、高斯核函数等,其中高斯核函数最常用,可以将数据映射到无穷维,也叫做径向基函数(Radial Basis Function 简称 RBF)。

机器学习中,对于线性可分的情况研究的比较透彻,但是很多情况是我们希望我们的模型学习非线性的模型。通常的做法就是选择一个函数ϕ(x)将x映射到另一个空间中,即通过某非线性变换ϕ(x) ,将输入空间映射到高维特征空间。关键是如何选择ϕ(x)。

假设X是输入空间,H是X映射到的高维特征空间,存在一个映射ϕ使得X中的点x能够计算得到H空间中的点h: h=ϕ(x)
对于所有的X中的点都成立。x,z是X空间中的点,如果支持向量机的求解只用到内积运算,而在低维输入空间又存在某个函数k(x,z)满足条件: k(x,z)=ϕ(x)⋅ϕ(z) 则称k为核函数,而ϕ为映射函数。

核函数带来的好处很明显,如果先要映射到高维空间然后进行模型学习,计算量远远大于在低维空间中直接直接采用核函数计算

核函数的使用

上面,我们提到,使用核函数关键在于选择应设函数ϕ(x),一般有三种做法 :

1)通过核函数,比如RBF。如果ϕ(x) 具有足够高的维数,我们总是有足够的能力来拟合训练集,但是对于测试集的泛化往往不佳。非常通用的特征映射通常只基于局部光滑的原则,并且没有将足够的先验信息进行编码来解决高级问题。

2)另一种选择是手动地设计ϕ,在深度学习以前,这种方法对于每个单独的任务都需要人们数十年的努力,从业者各自擅长特定的领域(如语音识别或计算机视觉),并且不同领域之间很难迁移 (transfer)。

3)深度学习方式是去学习这个函数ϕ(x)

那么能不能不通过映射函数而直接使用核函数计算高维空间的点的距离以及夹角呢?

答案是可以的,核函数的技巧就是不显示的定义映射函数,而在高维空间中直接使用核函数进行计算。

核函数必须是连续的,对称的,并且最优选地应该具有正(半)定Gram矩阵。


显然,Gram矩阵是半正定的。

常用核函数


在实际计算中,通常会选用高斯核。

举例

假设有一张二维空间的图片,匾额和门现行不可分



然儿,当映射到三维空间后,则变成了现行可分



 如上面的例子所说,核函数的作用就是隐含着一个从低维空间到高维空间的映射,而这个映射可以把低维空间中线性不可分的两类点变成线性可分的。

参考资料:
https://baike.baidu.com/item/%E6%A0%B8%E5%87%BD%E6%95%B0/4693132
https://blog.csdn.net/cqy_chen/article/details/77932270
https://www.cnblogs.com/hezhiyao/p/7238500.html

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 以西瓜书为主线,以其他书籍作为参考进行补充,例如《统计学习方法》,《PRML》等 第一章 绪论 1.2 基本术语 ...
    danielAck阅读 10,144评论 0 5
  • 原文章为scikit-learn中"用户指南"-->"监督学习的第七节:Gaussian Processes"##...
    HabileBadger阅读 18,827评论 0 9
  • 机器学习是做NLP和计算机视觉这类应用算法的基础,虽然现在深度学习模型大行其道,但是懂一些传统算法的原理和它们之间...
    在河之简阅读 20,663评论 4 65
  • 团玉冷光笛竖吹, 鸿鹄展翅意相随。 壮志山河多傲骨, 取捧冰雪画作梅。
    释迦干屎橛阅读 1,449评论 0 3
  • 阳光 不是给 休眠的种子 苍天大树 也是 从种子发芽的 野蛮生长 那管它 风雨雷电 来吧,长呀! 我就在那 枝繁叶茂
    我心飞翔lijing阅读 1,280评论 0 0