My first question is, does SVM can handle high-dimensional (n-D) input data?
是的。我在使用 LIBSVM 软件时处理了 n > 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)。使用选定的内核方法应该足以对此类数据进行分类。