具有感知器损失的支持向量机

机器算法验证 支持向量机 感知器
2022-03-17 06:05:08

典型的支持向量分类器使用以下优化过程:

min12||w||2+Ci=1Nζi
yi(wTxi+b)1ζi
ζi0

这种铰链损失设置会稍微惩罚边缘内正确分类的数据点。现在,如果我们轻轻地修改约束,结果将是一个具有正则化感知器损失的学习机器,它只会惩罚错误分类的数据点。

yi(wTxi+b)ζi

在此处输入图像描述

我知道事情是这样的有历史原因(最大化边际修辞等)但是有没有特殊的理论原因不以这种方式实现支持向量分类器?会有什么好处和坏处?

1个回答

最大化利润不仅仅是“花言巧语”。它是支持向量机的本质特征,确保训练好的分类器具有最优的泛化特性。更准确地说,使边距变大会使新数据上的分类误差很小的概率最大化。其背后的理论称为Vapnik-Chervonenkis (VC) 理论

在您的问题中,您考虑了一个软边距分类器,但推理对于硬边距分类器同样有效,它仅适用于线性可分数据集。在这种情况下,你所有的都会简单地变成,从而最小化你的目标函数中的总和。因此,为简单起见,我将重新表述线性可分数据的论点。ζi0

训练支持向量机相当于优化:

min w2s.t.   yi(wTxi+b)1

我们想要最小化w2因为这最大化了边距γ

γ=1w

这些约束不仅确保了训练集中的所有点都被正确分类,而且保证了边距最大化。只要存在的点,训练就会通过调整继续。yi(wTxi+b)<1wb

现在,您建议我们可以使用不同的约束:

min w2s.t.   yi(wTxi+b)0

这个问题的解决方案很简单:只需设置也将为零。然而,这并没有给你任何关于类边界的信息:现在是一个空向量,根本没有定义任何超平面!w=0b=0w2w

或者,从不同的角度来看:

想象一下使用一些不同的学习算法进行训练,比如说感知器算法。您已经找到了一些,它们可以在您的训练集上完美分类。换句话说,您的约束对于每个都满足。但是,这个阶级边界是现实的吗?wbyi(wTxi+b)0i

举个例子:类边界将蓝色点和红色点分开,但几乎每个类都接触一个(即满足“感知器”条件,但不满足SVM条件):

次优分离

相比之下,下面的有一个“大边距”,满足 SVM 条件:

大边距分离

直观上可以看出,该分类器的边界尽可能远离训练点,具有更好的泛化机会。