跳到内容

ewalker544/libsvm-go

存储库文件导航

libsvm-go:支持向量机

这是Go编程语言中LIBSVM的完整端口。伦敦银行支持向量机是一套工具和API库,用于支持向量分类、回归和分布估计。此端口以Go包的形式实现libsvm库,该包名为libSvm(库服务)。它还实现了svm训练svm预测命令行工具。

此端口没有外部包依赖项,只使用本机标准库。

安装

转到github.com/ewalker544/libsvm-go制作

兼容性说明

我已尝试使Go实现svm列车svm-预测插件与原始LIBSVM 3.18发行版兼容。这是为了允许您使用原始发行版中可用的其他工具,如轻松.py网格.py.

svm-预测应100%兼容插件。然而,svm列车插件兼容,但有一个例外。例外情况是命令中使用的参数权重标志。在这个实现中,标志是

-w i,weight:对于C-SVC,将类i的参数C设置为weight*C(默认值为1)

有关svm列车svm-预测命令,请参考原始伦敦银行支持向量机网站。

API示例

培训

进口 “github.com/ewalker544/libsvm-go”
    
参数 以下为:= libSvm(库服务).新建参数()//使用默认值创建参数对象
参数.内核类型 = libSvm(库服务).      //使用多项式核
    
模型 以下为:= libSvm(库服务).新建模型(参数)//从参数属性创建模型对象
    
//根据培训数据和参数属性创建问题规范
问题错误 以下为:= libSvm(库服务).新问题(“a9a.列车”参数)模型.列车(问题)//根据问题规范训练模型
    
模型.转储(“a9a.型号”)//将模型转储到用户特定的文件中

预测

进口 “github.com/ewalker544/libsvm go”
    
//从训练生成的模型文件创建模型对象
模型 以下为:= libSvm(库服务).从文件新建模型(“a9a.型号”)x个 以下为:= 制作(地图[整数]浮点64)//用测试向量填充x
    
预测标签 以下为:= 模型.预测(x个)//给定测试向量,预测float64标签

关于

Go编程语言中LIBSVM的完整端口

资源

许可证

星星

观察者

叉子

发布

未发布版本

包装

未发布包

贡献者3

  •  
  •  
  •