支持向量机的线性核和非线性核?


45

使用支持向量机时,有没有关于选择线性核与非线性核(例如RBF)的指南?我曾经听过,一旦特征数量很大,非线性内核往往表现不佳。关于这个问题有参考吗?


1
据我所知,这是基于当前的问题,在实践中使用此类拇指法很危险。
htrahdis 2013年

Answers:


66

通常,决定是使用线性内核还是RBF(aka高斯)内核。需要考虑两个主要因素:

  1. 解决线性核的优化问题快得多,例如参见LIBLINEAR。
  2. 通常,对于非线性核(或至少与线性核一样好),最佳的预测性能会更好。

已经证明,线性核是RBF的简并版本,因此线性核永远比正确调整的RBF核更准确。引用我链接的论文摘要:

分析还表明,如果使用高斯核进行了完整的模型选择,则无需考虑线性SVM。

NTU的实践指南中简要介绍了基本的经验法则,以支持向量分类(附录C)。

如果要素的数量很大,则可能不需要将数据映射到更高维度的空间。即,非线性映射不能改善性能。使用线性核就足够了,只需搜索参数C。

您的结论或多或少是正确的,但您的论点却倒退了。在实践中,当特征数量很大时(例如,无需映射到更高维度的特征空间),线性核往往表现得很好。一个典型的例子是文档分类,在输入空间中有数千个维度。

在这些情况下,非线性核不一定比线性核精确得多。从根本上讲,这意味着非线性内核会失去吸引力:它们需要更多的资源来进行训练,而预测性能却几乎没有或根本没有提高,所以为什么要打扰呢。

TL; DR

始终首先尝试线性,因为它可以更快地进行训练(AND测试)。如果精度足够,请轻拍背部以完成一项出色的工作,然后继续处理下一个问题。如果不是,请尝试使用非线性核。


1
我有这样的解释为内核的技巧:stats.stackexchange.com/questions/131138/...

37

尽管整个视频值得一看,但在本视频的 14:46开始,Andrew Ng给出了一个很好的经验法则解释。

关键点

  • 当要素数量大于观测数量时,请使用线性核。
  • 当观测数量大于要素数量时,使用高斯核。
  • 如果观测数大于50,000,则使用高斯核时可能会出现问题;因此,可能要使用线性核。

同意.......
datmannz '17

1
链接已
消失
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.