支持向量机原始形式实现

Posted

技术标签:

【中文标题】支持向量机原始形式实现【英文标题】:Support Vector Machine Primal Form Implementation 【发布时间】:2014-07-08 07:19:33 【问题描述】:

我目前正在研究一个支持向量机 (SVM) 项目。我正在研究的 SVM 版本是 Linear SVM in Primal Form,我很难理解从哪里开始。

总的来说,我想我理解这个理论;基本上我需要在一定的约束下最小化 w 的范数。并且拉格朗日函数将是我要最小化的目标函数(在应用拉格朗日乘数之后)。

我不明白的是,我的教授告诉我,我们将使用 Quasi-Newton 方法以及 BFGS 更新。我已经尝试过牛顿法的 2D 和 3D 案例,我认为我对算法有很好的掌握,但我不知道如何应用准牛顿法来查找系数 alpha。此外,到目前为止,我阅读的许多文献都告诉我应用二次规划来找到系数。

Quasi-Newton 的迭代算法与求 w... 的系数有何关系?二次规划与拟牛顿有何关系?谁能告诉我发生了什么?

【问题讨论】:

这个问题对于任何 Stack Exchange 站点来说都太宽泛了,这个主题更适合 stats.stackexchange.com。阅读那里的帮助中心并写一个更具体的问题。 【参考方案1】:

你在这里搞错了很多事情

“alpha 系数”只有对偶形式,所以在您的情况下找不到它们 “应用二次规划”,二次规划是一个问题,不是解决方案。您不能“应用 QP”,您只能解决一个 QP,在您的情况下,这将使用准牛顿法解决 “(...) 如何与寻找 w 的系数相关”完全相同,因为这种优化技术与寻找任何函数的最佳系数有关。您将最小化 w 的函数,因此应用任何优化技术(特别是准网络)将导致解决方案表示为 w 系数

【讨论】:

好的,那么我现在要解决一个 QP 问题了。我有另一个问题。据我了解,QP 问题是泰勒展开的第二和第三项,我的目标函数(这是对的吗?或者 QP 所指的 f(x) 是不同的东西?)。但是为什么要最小化这些呢?通过这样做,我究竟为什么要摆脱它?我是否会像牛顿法一样获得下一个索引?我知道我有很多问题,但请在这里帮助我.. 如果您有其他问题,您应该单独提出一个问题,cmets 不是此类讨论的地方。 QP 问题只是最小化/最大化具有线性约束的二次函数的问题。就这样。它与任何函数的 Taylos 扩展无关。 那么当您应用函数的泰勒展开式时,第二项和第三项与 QP 最小化的项完全相同,这是否巧合? en.wikipedia.org/wiki/Quasi-Newton_method 顺便感谢您的意见。我真的很感激。这是我第一次在 *** 上提问。如果我不遵守规则,请与我交谈。我下次一定会的.. 不,这不是巧合,但情况恰恰相反。如果您想优化 Taylor expension 到第三项,您会遇到无约束二次优化问题的特殊情况。但这不适用于其他方式,QP 不是“泰勒展开式”(尽管对于每个 QP 问题,您都可以找到具有这种形式的泰勒展开式的函数)。

以上是关于支持向量机原始形式实现的主要内容,如果未能解决你的问题,请参考以下文章

支持向量机(SVM)常见问题

支持向量机(SVM)常见问题

python实现支持向量机之非线性支持向量机和核函数(理论五)

支持向量机

13支持向量机SVM:SMO算法

python实现支持向量机之理论基础