RBF 内核可以将两个类进行分类,如图?

数据挖掘 机器学习 分类 支持向量机 核心 rbf
2022-02-14 02:18:35

如您所见,我有一些点(属于红色和蓝色类),我会使用 RBF 内核,但我认为 RBF 内核只有在它们以完美的圆形方式定位时才能使点线性可分。在这种情况下,我不知道如何修改内核(或使用哪些参数)以尊重这些数据具有的“椭圆”方面。 在此处输入图像描述

1个回答

您认为RBF 内核只有在以完美圆形方式定位时才能使点线性可分的理解是不正确的。对于您的数据集,很容易使用 RBF 内核来分离两个类。

为简单起见,假设您使用的是 SVM 分类器。

确实,RBF 内核看起来是球形的,而不是椭圆形的。然而,决策边界也由支持向量决定。除非您只有一个类的一个支持向量,否则决策边界通常不是球形的。

您可以轻松地可视化 SVM 给出的决策边界。例如,我只是简单地修改了这里的代码(使用sklearn.svm)来使用你的数据集,然后设置C=10,结果如下:

决策边界

所以一个更普遍的问题是:

内核的“形状”如何影响决策边界的形状?

我们可以使用一些自定义内核来可视化效果。在下图中,上排我们绘制了所用内核的形状(相同颜色表示相同的内核值),而下排显示了该内核的 SVM 决策边界。

内核

所以我们可以看到,内核的“形状”确实会影响决策边界的形状,但只会影响它的细节。整体形状仍然由实际支持的向量决定。顺便说一句,在这种情况下,所有 17 个数据点都是受支持的向量。