75-什么是核函数

本文介绍了SVM算法中的核心概念——核函数,特别是多项式核函数的运作机制。核函数允许我们在原始数据上进行非线性变换,而无需显式地进行特征映射,从而简化计算。通过举例说明,阐述了如何使用核函数直接计算变换后的内积,展示了核函数如何帮助解决非线性可分问题。最后提到了高斯核函数,暗示了后续将进一步探讨。
摘要由CSDN通过智能技术生成

什么是核函数

  在 SVM 算法中有一个很重要的概念叫做核函数(Kernel Function)。那什么是核函数呢?这篇博客将以多项式核为例向大家介绍 SVM 中核函数到底是什么?

  对于 SVM 的本质,其实就是求解下面这样一个最优化问题:

在这里插入图片描述
  
  但是在求解这个最优化的问题中,我们还是需要将这个问题进行变形,变成一个在数学上更好解的问题:

在这里插入图片描述
  
  这个式子看起来非常的复杂,这里略去推导过程。在上面这个式子中有非常重要的一项:

在这里插入图片描述
  
  换句话说,这一项意味着对于样本数据集中的任意两个向量都要做一下向量间的点乘。如果我们要使用多项式特征,对于原来的样本 x i x^i xi ,我们给它添加上多项式特征后变成:

在这里插入图片描述
对于另外一个样本 x j x^j xj 同理:

在这里插入图片描述
  
  这样做完之后,由于我们要使用新的特征了,我们不再使用 x i x^i xi x j x^j xj 了,所以我们的目标函数就变成了:

在这里插入图片描述
  
  那么核函数,它是这样一个思想:我们有没有可能不将 x i x^i xi x j x^j xj 先分别转换成 x ′ i x'^i xi x ′ j x'^j xj 再做这个乘法。我们有没有一种可能设置一个函数 K K K ,这个函数传入两个参数 x i x^i xi x j x^j xj,我们直接对原来的两个样本进行数学运算,直接计算出 x ′ i x'^i xi x ′ j x'^j xj

在这里插入图片描述
  
  如果我们能设计出这样的一个函数 K K K 的话,那么在目标函数中我们就可以进行相应的替换:

在这里插入图片描述
  
  这里的 K K K 取不同的函数就相当于是现在我们的原始数据集上进行了一个变化,之后把 x i x^i xi 变成了 x ’ i x’^i xi,把 x j x^j xj 变成了 x ′ j x'^j xj,之后再对这两个样本进行乘法。我们的 K K K 函数的作用是想省略掉这一步,我们不进行这种变形了,我们直接拿原来的样本带进一个函数中,用这个函数直接算出来 x ′ i x'^i xi x ′ j x'^j xj 点乘之后得到的结果。那么这个 K K K 函数就是核函数。

  其实核函数不是 SVM 本身特有的一种技巧。事实上,只要我们的式子中存在 x i x^i xi x j x^j xj 这样的式子或者类似这样的式子,我们都可以应用核函数技巧。

  下面就以多项式核函数为例,让我们更清晰的看到核函数是如何运作的?

  在多项式核函数中,核函数的定义如下:

在这里插入图片描述
  对于两个向量 x x x y y y,我们将上面的式子进行展开:

在这里插入图片描述
  
  相当于我们给原来的向量添加了二次方的多项式项,然后再进行点乘,这个过程我们可以不把变换后的数据表示出来,我们直接用原本数据带入以下式子就好了:

在这里插入图片描述
  
  这个式子和 x ′ ⋅ y ′ x' · y' xy 点乘的结果是一致的。这就是核函数的一个优势,它大大降低了我们计算的复杂度。

  再回到之前的目标函数中,我们将 K K K 函数进行替换,我们就完成了给我们的样本添加二次方这样的特征之后再使用 SVM 进行计算。

在这里插入图片描述
  
  当然,我们需要拓展一下,由于我们的多项式不仅仅能制造二次方这样的多项式特征,我们可以计算任意的 d e g r e e degree degree 这样的特征,所以 K K K 函数可以写成:

在这里插入图片描述
  
  我们也将原来小括号内的 1 换成了 c c c,这里的 d d d c c c 相当于两个新的超参数。这就是多项式核函数。

  我们也可以查看 sklearn 官方文档
  
在这里插入图片描述
  
  其实核函数的基本原理就是在替换原来样本的 x ⋅ y x · y xy,其实我们可以利用核函数的思路来表示线性 SVM:

在这里插入图片描述
  
  当我们理解了核函数的概念之后,就可以介绍很多不同的核函数,它们对应不同的对于我们原始数据样本点相应的转换。其中最为著名的核函数就是高斯核函数,下一篇博客将对高斯核函数进行具体介绍。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值