关于高斯核函数的映射

来源:11-7 RBF核函数

慕仙9024469

2019-10-11

老师您好,有个问题不太明白,就是为什么高斯核函数的地标数与样本数相同呢,我看网上的推导公式,不管样本数多少结果都是无穷维

写回答

1回答

liuyubobobo

2019-10-12

我听了一遍课程内容,确实有歧义。我简单澄清一下:


1)课程中介绍的 landmark 的方式,是帮助同学们理解,高斯核函数为什么能够做到非线性分类的。因为高斯核函数的本质是把低维数据映射成高维数据。


2)使用 landmrk 的方式,我们可以直观地看到这个映射结果。课程中以两个landmark,将一维数据映射成二维数据距离。

通常,如果使用手动方式,真的将数据升为高维,来模拟高斯核函数到底在如何改变数据,我们会选择使用样本数那么多的地标。在每个样本点上,都有一个地标。注意,这是我们人为选择的结果,而不是数学结论。


3)但实际上,高斯核函数到底把数据变成了什么样,是描述不清楚的。就是因为,高斯核函数的本质,是把数据映射到了无穷维。这一点,课程中也介绍了。但是,虽然我们把数据映射到了无穷维, 但是这样的两个无穷维的数据点乘的结果,却可以非常简单的用高斯核函数表达出来。这就是核函数的威力:我们不用管数据变成什么样,只需要知道他们点乘的方式,就能求解 SVM 了。


所以,选取 m 个landmark 的方式,是对 RBF Kernel SVM 的一个模拟,来帮助同学们理解,RBF Kernel 到底对原始数据做了什么。实际上,你是对的,RBK Kernel 将数据映射成为了无穷维。

//img.mukewang.com/szimg/5da0d2e409b7e52320001106.jpg


继续加油!:)

3
3
慕仙9024469
回复
liuyubobobo
非常感谢老师耐心解答!我在这里绕了好久,上面的说法是我的理解不是老师说的,我又回头看了老师的回复和课程,大概理解了,最后关于自然语言那块稍微有点不太明白,等学那块知识的时候再回头理解下。谢谢老师!
2019-10-15
共3条回复

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5838 学习 · 2437 问题

查看课程