我正在阅读有关SVM的信息,并且了解到我们使用核函数,因此数据在高维(向量?)空间中变得线性可分。但后来我也了解到他们使用软边距的想法。但我的问题是,如果数据在高空间中无论如何都是线性可分的,为什么要使用软边距?或者这是否意味着即使在与内核映射之后也不一定意味着它会变得线性可分?
使用核函数是否使数据线性可分?如果是这样,为什么要使用软边距 SVM?
使用核函数是否使数据线性可分?
在某些情况下,但不是其他情况。例如,线性内核引入了一个与原始输入空间等效的特征空间(直到点积保留变换,如旋转和反射)。如果数据在输入空间中不是线性可分的,那么它们也不会在特征空间中。度数 >1 的多项式内核将数据非线性映射到更高维的特征空间。在输入空间中不能线性分离的数据可能在特征空间中是线性可分的(取决于特定的数据和内核),但在其他情况下可能不是。RBF 内核将数据非线性映射到无限维特征空间。如果内核带宽选择得足够小,则数据在特征空间中总是线性可分的。
当线性可分性成为可能时,为什么要使用软边距 SVM?
输入特征可能没有足够的关于类标签的信息来完美地预测它们。在这些情况下,完美分离训练数据会过拟合,并且会损害泛化性能。考虑以下示例,其中一个类中的点是从各向同性高斯分布中提取的,而另一类中的点是从周围的环形分布中提取的。最佳决策边界是通过这些分布之间的低密度区域的圆。数据并不是真正可分离的,因为分布重叠,并且每个类别的点最终都位于最佳决策边界的错误一侧。
如上所述,具有小带宽的 RBF 内核允许训练数据在特征空间中的线性可分性。使用此内核的硬边距 SVM 在训练集上实现了完美的准确度(背景颜色表示预测类别,点颜色表示实际类别):
硬边距 SVM 最大化边距,但受限于没有训练点被错误分类的约束。RBF 内核确保可以满足此约束。然而,由此产生的决策边界是完全过拟合的,并且不能很好地推广到未来的数据。
相反,我们可以使用软边距 SVM,它允许一些边距违规和错误分类以换取更大的边距(权衡由超参数控制)。希望更大的利润将提高泛化性能。这是具有相同 RBF 内核的软边距 SVM 的输出:
尽管训练集上的错误更多,但决策边界更接近真实边界,并且软边距 SVM 会更好地泛化。通过调整内核可以进行进一步的改进。
你在纠结两个不同的事情。SVM 使用的分类算法在一些由内核诱导的特征空间中总是线性的(例如超平面)。硬边距 SVM,通常是您在学习 SVM 时遇到的第一个示例,它需要特征空间中的线性可分数据,或者没有解决训练问题的方法。通常,第一个示例在输入空间中有效,但同样可以在您选择的任何特征空间中完成。
但我的问题是,如果数据在高空间中无论如何都是线性可分的,为什么要使用软边距?
软边距 SVM不需要数据是可分离的,即使在特征空间中也是如此。这是硬边距和软边距之间的主要区别。软边距 SVM 允许实例落在边距内,甚至位于分离超平面的错误一侧,但使用铰链损失来惩罚这些实例。
或者这是否意味着即使在与内核映射之后也不一定意味着它会变得线性可分?
非线性核的使用永远不能保证任何数据集在诱导特征空间中线性可分。这不是必需的。我们使用内核的原因是将数据从输入空间映射到更高维空间,其中(更高维)超平面将更好地分离数据。就这些。如果数据在特征空间中完全可分离,则根据定义,您的训练准确度为。即使使用内核,这仍然很少见。
您可以找到使数据线性可分的内核,但这通常需要非常复杂的内核,这会导致结果泛化性差。这方面的一个例子是具有非常高的的 RBF 内核,它基本上将单位矩阵作为内核矩阵产生(这是完全可分离的,但会在看不见的数据上泛化不好)。
是的,它变成了线性可分的,特别是如果你总是使用映射到无限维空间的 RBF 内核。
当人们谈论软保证金时,它与您的想法不同。SVM 的设计要求两个类的功能余量 [1] 至少为 1。但是,不需要总是满足这个要求,因为这个要求比线性可分更严格。因此,您引入了松弛变量以适应不满足功能边际要求的点。
[1] https://stackoverflow.com/questions/14658452/how-to-understand-the-functional-margin-in-svm
阅读更多材料:
1]给定二维空间中的一组点,如何为 SVM 设计决策函数?
2]如何理解 RBF SVM 的效果
尽管可以选择高斯核并在特征空间中实现可分离性,但这可能不是最小化预期损失(即真实风险而不是经验风险)的最佳策略。中标记点的示例,其中负点位于 ( ) 单位球中,正点位于半径为 2 的球之外。但是,假设训练样本中也有一些异常值:一些积极的点位于单位球内的“消极”区域。
现在,如果我们使用包含数据点的范数的多项式核作为新维度,那么我们几乎可以线性地分离特征空间中的数据。当然有一些异常值,所以使用这个内核我们仍然会有一些训练错误。但是,如果异常值对应于我们问题中的基本噪声,那么贝叶斯最优决策规则实际上可能是这样一种假设,即如果范数至少为 2,则将点分类为正,否则为负。
事实上,如果异常值的出现是因为对于某些点而不是或的意义上不是确定性的,那么噪声是基本的问题,我们应该避免适应它。我们可以改用高斯核,使数据线性可分,但这会导致过度拟合并损害我们假设的真正风险。
这个例子表明,在某些情况下确实想要使用内核,数据在新的特征空间中可能仍然不是线性可分的,所以我们仍然需要 soft-margin SVM 公式。