【问题标题】:Gem environment for running rb-libsvm运行 rb-libsvm 的 Gem 环境
【发布时间】:2014-04-13 15:54:45
【问题描述】:

我希望有人能澄清这个关于使用我拥有的 gem 工具的非常简单的问题。

我正在尝试运行一些使用rb-libsvm 的代码,并且我使用gem install 成功安装了它;当我使用gem list 时,会列出rb-libsvm。但是,在代码中,命令./svm-predict会抛出以下错误:

sh: ./svm-train: No such file or directory
sh: ./svm-predict: No such file or directory

我还需要其他什么东西才能让 gem 在我的计算机上运行吗?

【问题讨论】:

    标签: ruby gem installation svm libsvm


    【解决方案1】:

    我不确定您是如何在 shell 上运行它的,您可以按照 https://github.com/febeling/rb-libsvm 文档中提供的示例代码在 irb 中对其进行测试

    require 'libsvm'
    
    # This library is namespaced.
    problem = Libsvm::Problem.new
    parameter = Libsvm::SvmParameter.new
    
    parameter.cache_size = 1 # in megabytes
    
    parameter.eps = 0.001
    parameter.c = 10
    
    examples = [ [1,0,1], [-1,0,-1] ].map {|ary| Libsvm::Node.features(ary) }
    labels = [1, -1]
    
    problem.set_examples(labels, examples)
    
    model = Libsvm::Model.train(problem, parameter)
    
    pred = model.predict(Libsvm::Node.features(1, 1, 1))
    puts "Example [1, 1, 1] - Predicted #{pred}"
    

    【讨论】:

    • 在irb中,存在如下问题:irb(main):010:0> question.set_examples(labels,examples) => 2 irb(main):011:0> model = Libsvm :: Model.train(problem,parameter) NameError: uninitialized constant Model from (irb):11 from /usr/bin/irb:12:in `
      ' 所有前面的代码都有效。此外,上面提到的代码我在 shell 上使用 ruby​​ filename.rb 运行代码
    • 上述注释中的“Libsvm :: Model.train(problem,parameter)”行在双冒号周围包含空格,这可能不是您想要的,即访问 Model 内部的类Libsvm 模块。
    【解决方案2】:

    gem 不包含命令行工具。请查看README

    为此,请考虑安装整个软件包。尽管名称为 libsvm,但它实际上是一个包含命令行工具和 Python 绑定的包,以及库本身。

    【讨论】:

      猜你喜欢
      • 2011-11-05
      • 2012-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多