支持向量机背后的基本哲学

时间:2012-07-16 03:53:10

标签: visualization multidimensional-array pca svm

我正在通过阅读大量材料来研究支持向量机(SVM)。然而,似乎大多数都关注如何通过使用线性,多项式,RBF /高斯等几个内核对输入2D数据进行映射来对输入2D数据进行分类。

我的第一个问题是,SVM能否处理高维(n-D)输入数据?

根据我的发现,答案是肯定的!

如果我的理解是正确的,那么n-D输入数据将是

  1. 在希尔伯特超空间中构建,那么这些数据将是
  2. 通过使用某些方法(例如PCA?)将它们组合在一起/将其投影回2D平面进行简化,以便
  3. 内核方法可以将其映射到适当的形状,例如线条或曲线可以将其分成区分组。
  4. 这意味着大多数指南/教程都侧重于第(3)步。但是我检查的一些工具箱无法绘制输入数据是否大于2D。如何将数据投影到2D?

    如果没有数据投影,他们如何对其进行分类?

    我的第二个问题是:我的理解是否正确?

1 个答案:

答案 0 :(得分:2)

My first question is, does SVM can handle high-dimensional (n-D) input data?

是。我已经处理了数据,其中n>使用LIBSVM软件时为2500:http://www.csie.ntu.edu.tw/~cjlin/libsvm/。我使用了线性和RBF内核。

My second question is, does it correct my understanding?

我不完全确定你的意思,所以我会试着评论你最近说的话。我相信你的直觉一般是正确的。数据在一些n维空间中“构建”,并且使用维度为n-1的超平面将数据分类为两组。但是,通过使用内核方法,可以使用线性方法生成此信息,而不会占用计算机的所有内存。

我不确定你是否已经看过这个,但如果你没有看到,你可能会对本文中的一些信息感兴趣:http://pyml.sourceforge.net/doc/howto.pdf。我复制并粘贴了一些可能会吸引您的想法的文本:

  

内核方法是一种仅通过点积依赖于数据的算法。在这种情况下,点积可以用核函数代替,核函数计算某些可能高维特征空间中的点积。这有两个优点:第一,使用为线性分类器设计的方法生成非线性决策边界的能力。其次,内核函数的使用允许用户将分类器应用于没有明显的固定维向量空间表示的数据。生物信息学中此类数据的主要例子是序列,DNA或蛋白质,以及蛋白质结构。

如果您能够解释您所指的“指南”,也会有所帮助。我不认为我以前曾经不得不在二维平面上投影数据,而且无论如何对于具有荒谬数量的数据(或称为“特征”)的数据都没有意义。 LIBSVM)。使用选定的内核方法应该足以对这些数据进行分类。