分享 用 Ruby 做过贝叶斯分类或者 SVM 分类算法的大牛进来踩踩

bao1018 · 2013年09月18日 · 最后由 lips 回复于 2015年04月06日 · 5041 次阅读

想实现一个分类功能,目前可以选择的算法是贝叶斯分类 (Naive Bayesian classification) 或者支持向量机 (Support Vector Machines), 有做过的大牛吗?可以谈谈哪个方案准确度更高些,具体实现方法是什么吗? 我自己也 research 了一些信息: 国外的一些基于 Ruby 的实践: http://www.igvita.com/2008/01/07/support-vector-machines-svm-in-ruby/ http://www.igvita.com/2007/05/23/bayes-classification-in-ruby/

已有的工具: http://classifier.rubyforge.org/ https://rubygems.org/gems/crm114

求分享经验!

2 个准确度都很高,影响准确度的最重要元素是训练数据,而且如果做中文分类的话,分词算法也是一个重要影响元素,无法简单地说哪个更高。

@quakewang 请问有什么现成的英文的模型可以推荐的?

SVM 之菜鸟实现 简单易懂,不过是 python 的

Nbayeisan training 速度很快。SVM 精度稍微高点

这么多已经实现的,调用下已有的 jar 吧

@xstmjh 莫非我要用 jRuby?

#8 楼 @bao1018 你也可以纯 ruby call java jar

svm 有点厉害。我只用 python 实现了 k-means。

我觉得没必要用 ruby 再轮一遍,可以看下 weka,都是调的 jar

贝叶斯是基于样本密度的,SVM 是基于平面划分的。准确率没有什么好比较的,关键是特征值要选好,模型要训练好。用过 libsvm,感觉效果和速度都可以,推荐使用。

@xstmjh 请问有 weka 做 SVM 的例子吗?

已经实现了 SVM 分类和自动训练的功能,多谢各位的建议!

做过就大牛了?大牛也太好当了

#10 楼 @Ryan k-means 和 SVM 不是干一个事情的唉。。。。

#13 楼 @bao1018 weka 很简单的,随便谷歌下,很多大学都用

为何不用 python 呢?

需要 登录 后方可回复, 如果你还没有账号请 注册新账号