哪些学习问题适合于支持向量机?


16

表明支持向量机可以解决某些学习问题的标志或特性是什么?

换句话说,当您看到一个学习问题时,是什么让您“噢,我绝对应该为此使用SVM”而不是神经网络或决策树或其他任何东西?


删除了supervised learning标签,因为SVM还可用于无人监督的学习问题
Dawny33

可以解释一下svm如何用于不受监督的问题,以及哪个软件包可以实现它吗?
GeorgeOfTheRF

@ML_Pro请浏览我包含在评论中的链接。
Dawny33

3
@ Dawny33,将SVM应用于无监督学习是例外,而不是常规。SVM是一种有监督的学习方法。
AN6U5

1
@ AN6U5感谢您的通知:)通过exception,您的意思是这只是一个调整而不是惯例,对吗?
Dawny33

Answers:


7

SVM可用于分类(在几个组或类之间进行区分)和回归(获得数学模型来预测某物)。它们可以应用于线性和非线性问题。

直到2006年,它们都是用于机器学习的最佳通用算法。我试图找到一篇论文,对最著名算法的许多实现进行比较:svm,神经网络,树等。我很难过(您必须相信我,不好的事情)。在本文中,具有最佳性能的算法是svm,带有库libsvm。

2006年,Hinton提出了深度学习和神经网络。他将当前的技术水平提高了至少30%,这是一个巨大的进步。然而,深度学习只能在大量训练中获得良好的表现。如果您的培训课程很小,建议您使用svm。

此外,您可以在此处找到有关何时通过scikit-learn 使用不同的机器学习算法的有用信息。但是,据我所知,科学界对某个问题是否具有X,Y和Z特征没有共识,那么使用svm更好。我建议尝试其他方法。另外,请不要忘记svm或神经网络只是一种计算模型的方法。使用的功能也非常重要。


1
@HoapHumaboid我了解SVC和SVR,我们可以使用Kernels将SVM应用到NLP,并且我知道将SVM与其他学习算法进行比较的论文...我想知道一个前瞻性学习问题的特征显然,应该使用SVM解决该问题。换句话说,什么是当您看到学习问题使您走“噢,我绝对应该为此使用SVM”而不是NN或决策树或其他任何东西
Ragnar

@Ragnar请参阅我编辑后的回复
hoaphumanoid

2

假设我们处于分类设置中。

对于svm要素工程而言,基石是:

  • 这些集合必须是线性可分离的。否则,数据需要转换(例如,使用内核)。这不是由算法本身完成的,可能会破坏功能的数量。
  • 我会说,svm随着我们比其他方法(树集成)更快地增加维数,性能会受到影响。这是由于支持svms 的约束优化问题。有时功能简化是可行的,有时则不可行,这是当我们无法真正有效地使用svm
  • svm可能会与特征数量远大于观测数量的数据集作斗争。同样,可以通过查看约束优化问题来理解这一点。
  • svm算法不会对分类变量进行开箱即用的处理。
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.