核函数的作用

核函数在机器学习和支持向量机(SVM)中扮演着至关重要的角色,它们允许算法在更高维的空间中进行分类,而无需显式地计算高维空间中的坐标。下面通过一个简单的例子来说明核函数是如何工作的,特别是如何将一个在低维空间中不可分的问题转换为高维空间中可分或近似可分的问题。

例子:异或(XOR)问题

异或(XOR)问题是一个经典的线性不可分问题。在二维平面上,假设我们有四个点:

  • (0, 0) 属于类别 -1
  • (1, 0) 属于类别 1
  • (0, 1) 属于类别 1
  • (1, 1) 属于类别 -1

这四个点无法被一个直线(线性分类器)完全分开。但是,如果我们使用核函数将这些点映射到一个更高的维度空间,就有可能找到一个超平面来分离它们。

使用核函数(如多项式核)

考虑使用一个二次多项式核函数,它可以将二维空间中的点映射到一个三维或更高维的空间中。对于任意两个点 x=(x1​,x2​) 和 y=(y1​,y2​),一个二次多项式核函数可以定义为:

K(x,y)=(1+x1​y1​+x2​y2​)2

展开后得到:

K(x,y)=1+x12​y12​+x22​y22​+2x1​y1​+2x1​y1​x2​y2​+2x2​y2​

这个核函数实际上是在计算两个点在某个高维空间中的内积(虽然我们不直接知道这个高维空间是什么)。

可以直接看出一种映射方法,核函数就对应他们的内积。注意相同的内积有好多种映射

应用核函数到XOR问题

现在,我们不需要显式地将每个点映射到高维空间,而只是计算这些点之间的核函数值。在这个例子中,通过选择适当的核函数(以及可能的SVM的其他参数,如惩罚项C),我们可以找到一个决策边界,该边界在隐式的高维空间中能够正确地将这四个点分开。

注意
  • 核函数的选择对于SVM的性能至关重要。在这个例子中,二次多项式核可能不是最优选择,但它足以说明核函数如何将线性不可分问题转换为可分或近似可分的问题。
  • 在实践中,可能需要通过交叉验证等方法来选择合适的核函数及其参数。
  • 核函数的使用使得SVM能够处理复杂的非线性关系,而无需显式地构建高维特征空间。

核函数存在的条件

2a1ad6b7a103443dac5f9e7e3d441762.png

核函数存在的条件就是说明一件事。核函数高维向量的内积。内积矩阵就是半正定矩阵

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值