对核函数的理解


核函数和映射没有关系。核函数只是用来计算映射到高维空间之后的内积的一种简便方法。

一般英文文献对Kernel有两种提法,一是Kernel Function,二是Kernel Trick。从Trick一词中就可以看出,这只是一种运算技巧而已,不涉及什么高深莫测的东西。

具体巧在哪里呢?我们如果想进行原本就线性不可分的数据集进行分割,那么选项一是容忍错误分类,即引入Soft Margin;选项二是我们可以对Input Space做Feature Expansion,把数据集映射到高维中去,形成了Feature Space。我们几乎可以认为(引用Caltech的课堂用语“We are safe but not certain”)原本在低维中线性不可分的数据集在足够高的维度中存在线性可分的超平面。

围绕选项二,那么我们所做的就是要在Feature Space套用原本在线性可分情况下的Input Space中使用过的优化方法,来找到那个Maximaizing Margin的超平面。原理机制一模一样,是二次规划,唯一不同是代入数据的不同,我们需要代入\phi(x_i)而不是x_i。这时(在假设我们已知了如何选取mapping之后)才有了核函数的概念。

具体Trick的意义,就是简化计算二次规划中间的一步内积计算。也即中间步骤有一步必须求得\phi(x_i)'\phi(x_j),而我们可以定义核函数K(x_i,x_j)=\phi(x_i)'\phi(x_j),使得我们在不需要显式计算每一个\phi(x_i)、甚至不需要知道\phi(\cdot )长什么样的情况下,直接求出\phi(x_i)'\phi(x_j)的值来。

也就是说,核函数、内积、相似度这三个词是等价的。因为inner product其实就是一种similarity的度量。核函数和映射是无关的。

但为什么这么多的认知中核函数是一种映射呢。一来这两件事一般先后进行,所以常常被混为一谈。二来就像前面所述,核函数让人们不需要知道 \phi(\cdot )长什么样,不需要知道怎么选取映射,就能够算出内积。因此这常常被认作是一种implicit mapping。这是由Mercer Theorem保证的,即只要核函数满足一定条件,那么映射空间一定存在。


        核方法本身是应对高维投影的一种运算技巧。从理论思想上来说,确实是投影到高维空间后就有很大的可能性线性可分,也确实可以用这种思路找一种投影方式。而在求解类似SVM问题中,我们发现求解“高维”空间的分割超平面与求解原空间的分割超平面的区别只在于一个内积的差异而已。因此大家就都只用核方法来求解低维线性不可分问题啦,也不用真正求解这个投影是什么样啦

        核函数本身就是巧妙的跳过了如何从低维空间映射到高维空间这个过程,而直接求出了低维空间的两个向量在高维空间的内积,也就是说只要两个低维空间的向量输入到一个核函数之后,这个函数值就可以表示为:把这两个向量映射到某高维空间后的内积。 换个方法理解,即如果一个函数满足一定的条件( 具体什么条件不记得了)那么它就可以被当做核函数,并且这种函数的函数值一定 对应着这两个低维空间向量映射到某高维空间向量后的内积

注意一点:既然是技巧,那肯定是有条件的,核函数并不是随便拉一个函数就可以充当的,那么这个条件就是括号里面的红色的条件,具体可以自己查一下,忘记了。而且只要满足这个条件, 必然有这种 对应关系,从而可以直接求核函数的值即可,还有一个潜意识是:因为我们并不关心原来的低维向量映射到什么样的高维空间中去,所以只要有一个高维空间就行了,而且这个“有一个” 恰好对应着上一句的“ 必然
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Micrle_007

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值