【问题标题】:One-Class Support Vector Machines一类支持向量机
【发布时间】:2011-10-15 13:03:43
【问题描述】:

所以我想确保我有这个权利。首先,我是一名计算机工程专业的本科生,拥有比软件更多的硬件/EE 经验。今年夏天,我发现自己使用了一种使用一类 SVM 的聚类算法。 SVM 只是用于分类/分离输入数据的数学模型吗? SVM 是否适用于具有一个属性/变量的数据集?我猜后者不会,可能是因为具有单个属性的分类实际上是刻板印象。我的猜测是 SVM 在具有多个属性/变量以有助于分类的数据集上表现更好。提前致谢!

【问题讨论】:

  • 这与编程无关。第一个问题的答案是yes;您更有可能在stats.stackexchange.com 上找到第二个问题的答案。

标签: machine-learning cluster-analysis analytics data-mining svm


【解决方案1】:

SVM 尝试构建 hyperplane 分离 2 个类(AFAIK,在一类 SVM 中,一类用于“正常”实例,一类用于“异常”实例)。只有一个属性,您就有一维空间,即 line。因此,这里的超平面是线上的一个。如果 2 个类的实例(这条线上的点)可以被这个超平面点分隔(即它们是线性可分的),那么是的,可以使用 SVM。否则不行。

注意,具有 几个 属性的 SVM 仍可用于分类甚至线性不可分的实例。在下一张图像中,二维空间中有 2 个类(2 个属性 - X 和 Y),一个用蓝点标记,另一个用绿色点标记。

你不能画线来分隔它们。不过,所谓的kernel trick 可用于通过组合现有属性来生成更多属性。有了更多属性,您可以获得更高维度的空间,所有实例可以在其中被分隔 (video)。不幸的是,一个属性不能与自身结合,因此对于一维空间内核技巧不适用。

因此,您的问题的答案是:当且仅当 2 个类的实例彼此可线性分离时,SVM 才可用于只有一个属性的集合

【讨论】:

  • 这个答案有点误导:没有内核技巧没有人会使用 SVM。如果没有内核技巧,SVM 只是一个稍微改进的感知器,在 60 年代就已经很好理解了。
  • @Bean:感知器和支持向量机(以及许多其他!)都只是概念的名称,实际的方法/实现有很多细节。是的,在某些条件下它们变得相等,在其他条件下 - 非常不同。但重要的是他们的主要思想及其对机器学习领域的影响。例如,感知器本质上是逻辑回归模型,但人工神经网络的发明导致了诸如 Kohonen 映射之类的东西。现在我们可以看到,在 SVM 中引入的内核概念是如何应用于神经网络的。
猜你喜欢
  • 2011-07-01
  • 2018-02-05
  • 2013-08-31
  • 2014-05-12
  • 2016-02-20
  • 2016-03-15
  • 2021-06-28
  • 2013-07-14
  • 2021-04-10
相关资源
最近更新 更多