【问题标题】:How to use libsvm to get probability output如何使用libsvm获取概率输出
【发布时间】:2016-04-04 15:44:31
【问题描述】:

我想在 LIBSVM 中使用 -b 选项,但在 Matlab 中找不到示例用法。当我尝试写这个时:

svmtrain(bow, [1;0;0;0;0;0;0;0], '-b 1');

我收到“参数数量错误”错误。当我从参数中删除“-b 1”时,在 svmpredict 中我只得到 0 或 1 结果。我想要概率结果。我该怎么做?

谢谢

【问题讨论】:

    标签: matlab svm libsvm


    【解决方案1】:

    您调用的 svmtrain 函数不是 libsvm - 它是 Matlab 的统计工具箱 svmtrain.m!

    使用which svmtrain查看实际调用了哪个文件。确保您使用了 libsvm 的 make 来编译必要的 libsvm mex 文件并且它们位于 Matlab 的路径中。在我的安装中,我将 libsvm 的 svmtrain 和 svmpredict mex 文件重命名为 libsvm_svmtrain 和 libsvm_svmpredict 以避免这种歧义。

    【讨论】:

    • 我已下载 libsvm 并将其放入我的工作区目录。如何在 Windows 中编译这些 mex 文件?有什么教程吗?
    • 在 libsvm\Matlab 文件夹中查找 make.m。那里还有一个自述文件。
    • 进入 /libsvm-master/matlab 目录后,在 matlab 中调用“make”命令,所有 MEX 都成功完成。但是,当我使用 shich svmtrain 时,它仍然显示 matlab 统计工具箱。如何改变它?很抱歉出现多个问题
    • 如果 mex 文件在那里,我猜该路径不正确。确保将 libsvm-master/matlab 目录本身添加到您的路径中。 stackoverflow.com/questions/15557908/…
    • 正如你所做的那样,我已将名称更改为 libsvm_train 等。它起作用了
    猜你喜欢
    • 2014-09-09
    • 2011-09-22
    • 2016-12-30
    • 1970-01-01
    • 2014-08-11
    • 2015-02-01
    • 2011-02-15
    • 2014-04-07
    • 1970-01-01
    相关资源
    最近更新 更多