【问题标题】:SVM results in Rapidminer much worse than in knimeSVM 导致 Rapidminer 比 knime 更糟糕
【发布时间】:2016-09-14 19:02:20
【问题描述】:

我正在使用 knime 比较项目的各种分类算法。我对支持向量机 (LibSVM) 获得的结果非常满意。 然后我想尝试分层分类并为 knime 安装 Rapidminer 插件。为了让事情顺利进行,我首先测试了没有层次结构的 SVM 实现。

比较 knime LibSVM 实现和 rapidminer LibSVM 实现的结果,我注意到 rapidminer 实现产生的结果更差。 事实上,knime 实现产生了大约 2.4% 的错误率,而 rapidminer 产生了大约 2.4% 的错误率。 61%。 这是为什么?我做错了吗?

我使用 C-SVC SVM 和线性内核、1.0 成本、0.001 epsilon 和 80mb 缓存用于两种实现。

文档是维基百科文章文本,经过预处理、转换为二进制文档向量并标有某种类型。

我希望你能帮助我。

【问题讨论】:

  • 没有库版本有点难说(我猜 RapidMiner 使用比 KNIME 更旧的 LibSVM),但旧 LibSVM 版本中可能存在错误。也有可能我在数据转换中出错了,RapidMiner(在 KNIME 内)看到了错误的数据。你能检查一下 KNIME 之外的 RapidMiner 5.3.15 版本吗? (查看最新的 7.1.x 版本或者您是否可以访问 7.2 预览版也可能很有趣。我知道最近的 RapidMiners 中存在一些关于导入/导出的疯狂限制。我理解您是否不想检查这些。 ) 谢谢。
  • 非常感谢您的回复。数据转换似乎是问题所在。使用 rapidminer studio (5.3.15) 错误率下降到 3.3%,这足以继续。
  • 我试图重现您的问题:drive.google.com/file/d/0B_71sAq09Nu2VzM3bmxoakNJN00/… 虽然我只有细微的差别。我发现可疑的是您在 RapidMiner 中使用了 Nominal to ... 运算符。我认为这不是必需的。 (在我的工作流程中,我已从流程中删除了行 id 列以强调此更改,但您也可以单击Row ID 选项卡上的Use 按钮以不使用它(其文本将变为Do not use) .)

标签: svm libsvm rapidminer text-classification knime


【解决方案1】:

在这种情况下,您不需要包含Row IDs(Row ID 选项卡,通过单击它使按钮显示Do not use,以防它是Use 并且文本字段未禁用),并且您不应该对它们执行Nominal to... 转换。之后,您应该在这两种情况下得到相似的结果。

【讨论】:

    猜你喜欢
    • 2017-01-25
    • 1970-01-01
    • 2021-02-28
    • 2016-07-21
    • 2015-03-12
    • 2021-04-05
    • 2022-01-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多