在sci-kit学习中使用libSVM或在R中使用e1070来训练和使用支持向量机有什么区别?

时间:2014-03-02 00:52:54

标签: python r machine-learning scikit-learn svm

最近我考虑选择使用R或Python来训练支持向量机。

除了两种编程语言所固有的特殊优点和缺点之外,我想知道是否有任何启发式指导方针可以根据包本身来决定走哪条路。

我正在考虑培训模型的速度,可扩展性,不同内核的可用性以及其他与性能相关的方面。

鉴于一些不同大小的数据集,如何决定采用哪条路径?

我提前为这样一个可能模糊的问题道歉。

2 个答案:

答案 0 :(得分:4)

我没有使用e1070的经验,但是通过谷歌搜索它似乎使用或基于LIBSVM(我不知道足够的R来确定哪个来自曲目条目)。 Scilearnkit也使用LIBSVM。

在这两种情况下,模型都将由LIBSVM进行训练。速度,可伸缩性,各种可用选项将完全相同,并且在使用这些库的SVM时,您将面临的主要限制是LIBSVM的局限性。

我认为除非你在问题中澄清一些事情,否则提供进一步的建议会很困难:你的目标是什么?你知道LIBSVM吗?这是一个学习项目吗?谁在为你付出时间?你觉得在Python或R中感觉更舒服吗?

答案 1 :(得分:0)

有时候我有同样的问题。是的,e1070和scikit-learn都使用LIBSVM。我只有e1070的经验。

但有些地方R 更好。我过去曾读过Python没有正确处理分类功能(至少不是开箱即用)。这对某些人来说可能是个大问题。

我也更喜欢R的formula界面。还有一些不错的数据操作包。

Python对于通用编程肯定更好,scikit-learn有助于为所有任务使用单一编程语言。