在sci-kit learn中使用libSVM或R中的e1070进行训练和使用支持向量机有什么区别?



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

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

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

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

对于这样一个可能含糊不清的问题,我提前道歉。

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

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

我认为,除非你在问题中澄清几件事,否则提供进一步的建议将是困难的:你的目标是什么?你已经知道 LIBSVM 了吗?这是一个学习项目吗?谁在为你的时间买单?你觉得在Python还是R中更舒服?

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

但有些领域R更好。我过去读过Python不能正确处理分类特征(至少不是开箱即用)。这对某些人来说可能是一件大事。

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

Python 绝对更适合通用编程,scikit-learn有助于对所有任务使用单一编程语言。

最新更新