机器学习——SVM核函数

核函数这块,原理理解起来,相对比较简单

但还是会有一些不太理解的地方

对于非线性可分的数据而言,在当前维度,直接使用SVM有分不出的情况

那么就可以从当前维度,直接升到更高维度,进行计算。

例如原本数据只有3个影响因素 x a , x b , x c x_a,x_b,x_c xa,xb,xc(性别)(年龄)(样貌),那么根据这三个维度的数据,可以拓展成更高维度(更多个不具名的影响因素),例如xc、xd、xe、xf、xg,再代入SVM的对偶问题里进行计算

其实有一本书《人工智能数学基础》里,描述的还是挺清晰的

另外讲到高斯核函数的时候,还给出了推导

这里的推导,实际就是在印证高斯核函数中,是如何拓展成高维向量,并且高维向量的点积,是如何用当前低维数据进行计算的。

K ( x , y ) = e − ∣ ∣ x − y ∣ ∣ 2 = e − x 2 e − y 2 1 + ( 2 x . y ) 1 1 ! + ( 2 x . y ) 2 2 ! + ( 2 x . y ) 3 3 ! . . . K(x,y) = e^{-||x-y||²}=e^{-x^2}e^{-y^2}1+\\frac{(2x.y)\^1}{1!}+\\frac{(2x.y)\^2}{2!}+\\frac{(2x.y)\^3}{3!}... K(x,y)=e−∣∣x−y∣∣2=e−x2e−y21+1!(2x.y)1+2!(2x.y)2+3!(2x.y)3...

这里高维向量的点积,体现在 e − x 2 e − y 2 1 + ( 2 x . y ) 1 1 ! + ( 2 x . y ) 2 2 ! + ( 2 x . y ) 3 3 ! . . . e^{-x^2}e^{-y^2}1+\\frac{(2x.y)\^1}{1!}+\\frac{(2x.y)\^2}{2!}+\\frac{(2x.y)\^3}{3!}... e−x2e−y21+1!(2x.y)1+2!(2x.y)2+3!(2x.y)3...

在SVM对偶函数求解里,正是需要求解点积

假设原数据的x总共分为3个影响因素 x a , x b , x c x_a,x_b,x_c xa,xb,xc

则两条数据分别为 ( x a 1 , x b 1 , x c 1 ) (x_{a1},x_{b1},x_{c1}) (xa1,xb1,xc1), ( x a 2 , x b 2 , x c 2 ) (x_{a2},x_{b2},x_{c2}) (xa2,xb2,xc2)

则它们的点积为 x a 1 x a 2 + x b 1 x b 2 + x c 1 x c 2 x_{a1}x_{a2}+x_{b1}x_{b2}+x_{c1}x_{c2} xa1xa2+xb1xb2+xc1xc2

但如果,现在将3个影响因素通过某种关系,上升到无穷个影响因素, x e , x f , x g , x h , x k x_e,x_f,x_g,x_h,x_k xe,xf,xg,xh,xk

这两条数据就变为了
x e 1 , x f 1 , x g 1 , x h 1 , x k 1 . . . x_{e1},x_{f1},x_{g1},x_{h1},x_{k1}... xe1,xf1,xg1,xh1,xk1...
x e 2 , x f 2 , x g 2 , x h 2 , x k 2 . . . x_{e2},x_{f2},x_{g2},x_{h2},x_{k2}... xe2,xf2,xg2,xh2,xk2...

则它们的点积为
x e 1 x e 2 + x f 1 x f 2 + x g 1 + x h 1 x h 2 + x k 1 x k 2 + . . . x_{e1}x_{e2}+x_{f1}x_{f2}+x_{g1}+x_{h1}x_{h2}+x_{k1}x_{k2}+... xe1xe2+xf1xf2+xg1+xh1xh2+xk1xk2+...

但由于高维度的点积计算量太大,找到一个原低维的计算式等于高维的点积结果,那个计算式就是核函数!

高斯核函数中的 e − x 2 e − y 2 1 + ( 2 x . y ) 1 1 ! + ( 2 x . y ) 2 2 ! + ( 2 x . y ) 3 3 ! . . . e^{-x^2}e^{-y^2}1+\\frac{(2x.y)\^1}{1!}+\\frac{(2x.y)\^2}{2!}+\\frac{(2x.y)\^3}{3!}... e−x2e−y21+1!(2x.y)1+2!(2x.y)2+3!(2x.y)3...无穷维的两条数据点积,对应的计算式正是 e − ∣ ∣ x − y ∣ ∣ 2 e^{-||x-y||²} e−∣∣x−y∣∣2,这正是核函数

只是高斯核函数还有一个参数σ,也叫核半径

e − ∣ ∣ x − y ∣ ∣ 2 2 σ e^{\frac{-||x-y||²}{2σ}} e2σ−∣∣x−y∣∣2,当x,y两条数据差距非常小,很接近时,核函数值接近1,

当x,y两条数据差距非常大时,核函数值接近0

这就像是正态分布(高斯分布)

那么σ的作用,就是调节用的:

极端来看,当σ值非常非常非常非常大时,如果x和y两条数据差距比较大,核函数值也依然接近1

因此,核函数正是一个低维升高维求解线性关系,并用低维数据计算替代高维点积的计算式。

相关推荐
回眸&啤酒鸭2 天前
【回眸】Minicart 电商购物车核心功能落地指南
人工智能
一隅论数智2 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
AI的探索之旅2 天前
97 个 OpenCV 实例(三十):双目立体,从标定到点云
人工智能·opencv·计算机视觉
AlbertZein2 天前
Step-5-Preview 上手实测:3D 游戏、金融分析、网页设计一次跑完
人工智能·aigc
LaughingZhu2 天前
Product Hunt 每日热榜 | 2026-09-19
人工智能·深度学习·神经网络·搜索引擎·百度
美狐美颜SDK开放平台2 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
wukangjupingbb2 天前
智能网联汽车安全能力框架
人工智能
龙亘川2 天前
明月照湾区,智启新赛道:从顶流文旅IP盛会看智慧文旅升级路径
人工智能·智慧城市·开源软件·数据可视化
飞猫的边缘AI2 天前
边缘AI应用:家用AI摄像头怎么做数据训练?
人工智能·边缘计算·ai算法·边缘ai