核方法 Kernel method

1.内积(点积)

内积,又叫做点积,数量积或标量积。假设存在两个向量 a = [ a 1 , a 2 , . . . , a n ] a=[a_{1}, a_{2}, ..., a_{n}] a=[a1,a2,...,an] b = [ b 1 , b 2 , . . . , b n ] b=[b_{1},b_{2},...,b_{n}] b=[b1,b2,...,bn],内积的计算方法为:
a ⋅ b = a 1 b 1 + a 2 b 2 + ⋯ + a n b n a\cdot b= a_{1}b_{1}+a_{2}b_{2}+\cdots +a_{n}b_{n} ab=a1b1+a2b2++anbn

2.核方法 1

核方法的主要思想是基于这样一个假设:“在低维空间中不能线性分割的点集,通过转化为高维空间中的点集时,很有可能变为线性可分的” ,例如有两类数据,一类为 x < a ∪ x > b x<a\cup x>b x<ax>b;另一部分为 a < x < b a<x<b a<x<b。要想在一维空间上线性分开是不可能的。然而我们可以通过F(x)=(x-a)(x-b)把一维空间上的点转化到二维空间上,这样就可以划分两类数据 F ( x ) > 0 F(x)>0 F(x)>0 F ( x ) < 0 F(x)<0 F(x)<0;从而实现线性分割。如下图所示:
图1

定义一个核函数 K ( x 1 , x 2 ) = ⟨ ϕ ( x 1 ) , ϕ ( x 2 ) ⟩ K(x_{1},x_{2})=\left \langle \phi (x_{1}),\phi (x_{2})\right \rangle K(x1,x2)=ϕ(x1),ϕ(x2), 其中 x 1 x_{1} x1 x 2 x_{2} x2是低维度空间中的点(在这里可以是标量,也可以是向量), ϕ ( x i ) \phi (x_{i}) ϕ(xi)是低维度空间的点转化为高维度空间中的点的表示, ⟨ , ⟩ \left \langle ,\right \rangle ,表示向量的内积。这里核函数的表达方式一般都不会显式地写为内积的形式,即我们不关心高维度空间的形式。
这里有个很重要的问题,就是我们为什么要关心内积。一般的我们可以把分类或回归问题分为两类:参数学习和基于实例的学习。参数学习就是通过一堆训练数据把模型的参数学习出来,训练完成之后训练数据就没有用了,新数据使用已经训练好的模型进行预测,例如人工神经网络。而基于实例的学习(又叫基于内存的学习)是在预测的时候会使用训练数据,例如KNN算法,会计算新样本与训练样本的相似度。计算相似度一般通过向量的内积来表示。从这里可以看出,核方法不是万能的,它一般只针对基于实例的学习。

3.核方法的定义和例子2

给定一个映射关系 ϕ \phi ϕ,我们定义相应的核函数为:
K ( x , y ) = ϕ ( x ) T ϕ ( y ) K(x,y)=\phi (x)^{T}\phi (y) K(x,y)=ϕ(x)Tϕ(y)
则内积运算 < ϕ ( x ) , ϕ ( y ) > <\phi (x), \phi (y)> <ϕ(x),ϕ(y)>可以用核 K ( x , y ) K(x,y) K(x,y)来表示。

例如,给定两个 n n n维向量 x x x y y y x , y ∈ R n x,y\in \mathbb{R}^{n} x,yR

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值