【问题标题】:How to decrease execution time for SVM如何减少 SVM 的执行时间
【发布时间】:2017-03-03 05:39:51
【问题描述】:

我目前正在处理一个包含 20 个特征和 400K 行的数据集。我正在使用 e1071 库使用 SVM 进行多类分类。我有这个代码,大约需要 2 天才能得到结果。有没有办法可以使用同一个库来降低时间复杂度?如果不是,我应该在 R 中优先考虑哪些其他库或选项?

svm.model <- svm(y ~., data = traindata, gamma = 0.01, cost = 10, kernel= "radial")

【问题讨论】:

  • 我会尝试对 1000-10000 行进行二次抽样,然后看看使用较少数量的样本可以获得什么性能 - 这可能足以获得一个体面的模型。也可以尝试不同的内核。
  • 是的,我确实尝试过。但是在取 40K 大小的样本与整个数据比较时,误差差异是显着的。
  • 你在做训练/测试、交叉折叠验证等吗?
  • 是的,50% 的数据用于训练,25% 用于测试和验证。

标签: r machine-learning svm libsvm


【解决方案1】:

我建议尝试降维(例如使用 PCA)来减少特征数量,这会提高性能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-28
    • 2012-12-31
    • 2016-01-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多