热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

kernel方法的直观理解

在我们进入kernel的工作之前,了解支持向量机或SVM更为重要,因为kernel是在SVM模型中实现的。因此,支持向量机是有监督的机器学

在我们进入kernel的工作之前,了解支持向量机或 SVM 更为重要,因为kernel是在 SVM 模型中实现的。因此,支持向量机是有监督的机器学习方法,用于分类和回归问题,例如将苹果分类为水果类,同时将狮子分类为动物类。


为了演示,下面是支持向量机的样子:

在这里,我们可以看到一个将绿点与蓝点分开的超平面。超平面比环境平面小一维。例如在上图中,我们有代表环境空间的二维空间,但是划分或分类空间的唯一维度比环境空间少一维,称为超平面。

但是如果我们有这样的输入怎么办:

使用线性分类器解决这种分类非常困难,因为没有好的线性线应该能够对红点和绿点进行分类,因为点是随机分布的。这里使用了核函数,它将点带到更高的维度,解决那里的问题并返回输出。这样一想,我们可以看到绿点被包围在某个外围区域,而红色点在外围,同样,可能还有其他场景,绿点可能分布在梯形区域中。

所以我们要做的是将首先被一维超平面(“或直线”)分类的二维平面转换为三维区域,这里我们的分类器即超平面将不是一条直线,而是一个二将切割该区域的维平面。

为了对核有一个数学上的理解,让我们了解一下江丽丽的核方程,即:

K(x, y)= 其中,
K 是核函数,
X 和 Y 是维度输入,
f 是从 n 维到 m 维空间的映射,并且,
是点积。
 

示例说明如下

假设我们有两个点,x= (2, 3, 4) 和 y= (3, 4, 5)

正如我们所见,K(x, y) =

我们先计算

 

f(x)=(x1x1, x1x2, x1x3, x2x1, x2x2, x2x3, x3x1, x3x2, x3x3)
f(y)=(y1y1, y1y2, y1y3, y2y1, y2y2, y2y3, y3y1, y3y2, y3y3)
所以,
f(2, 3, 4)=(4, 6, 8, 6, 9, 12, 8, 12, 16) 和
f(3,4, 5)=(9, 12, 15, 12, 16, 20 , 15, 20, 25)
所以点积
f (x)。f (y) = f(2,3,4) 。f(3,4,5)=
(36 + 72 + 120 + 72 +144 + 240 + 120 + 240 + 400)=
1444
并且,
K(x, y) = (2*3 + 3*4 + 4* 5) ^2=(6 + 12 + 20)^2=38*38=1444。

 


推荐阅读
author-avatar
hfdljflkd_863
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有