我正在跟随Andrew Ng教授的斯坦福机器学习课程,我想用ruby开始实现这些例子。
是否有任何框架/宝石/库/现有代码可以在ruby中进行机器学习?我找到了一些相关的问题和项目,但似乎都很旧。
我正在跟随Andrew Ng教授的斯坦福机器学习课程,我想用ruby开始实现这些例子。
是否有任何框架/宝石/库/现有代码可以在ruby中进行机器学习?我找到了一些相关的问题和项目,但似乎都很旧。
请务必查看这个Gist,其中有大量信息:
此外,以下是一些值得注意的算法库(可能已经在上面的Gist中列出):
AI4R
http://www.ai4r.org/ - https://github.com/SergioFierens/ai4r
AI4R是一个Ruby算法实现的集合,涵盖了多个人工智能领域,并提供使用它们的简单实用示例。这是一个面向AI研究人员的Ruby游乐场。实现了以下内容:
遗传算法(Genetic algorithms)
自组织映射(Self-organized maps, SOM)
神经网络:带有反向传播学习的多层感知器,Hopfield网络。
自动分类器(机器学习):ID3(决策树),PRISM(J. Cendrowska, 1987),多层感知器,OneR (也称为One Attribute Rule, 1R),ZeroR,Hyperpipes,Naive Bayes,IB1(D. Aha,D. Kibler-1991)。
数据聚类:K-means,Bisecting k-means,Single linkage,Complete linkage,Average linkage,Weighted Average linkage,Centroid linkage,Median linkage,Ward's method linkage,Diana(分散性分析)
kmeans-clusterer - Ruby中的k-means聚类:
kmeans-clustering - 并行化k-means聚类的简单Ruby gem:
tlearn-rb - 用于Ruby的循环神经网络库:
TensorFlow Ruby wrapper - 我们写下这篇文章时,在构建TensorFlow Ruby API方面似乎有一些进展:
https://github.com/tensorflow/tensorflow/issues/50#issuecomment-216200945
如果对你来说JRuby是一个可行的Ruby替代品:
weka-jruby - 基于Weka Java库的JRuby机器学习和数据挖掘:
jruby_mahout - JRuby Mahout是一个宝石(gem),在JRuby世界中释放了Apache Mahout的力量:
更新: 上面的Resources for Machine Learning in Ruby gist现在已经开始作为一个存储库进行维护:https://github.com/arbox/machine-learning-with-ruby
试试Rumale和Numo::NArray https://github.com/yoshoku/rumale
Rumale(Ruby机器学习)是一个用Ruby编写的机器学习库。Rumale提供了与Python中Scikit-Learn类似的机器学习算法接口。Rumale支持线性/核支持向量机、逻辑回归、线性回归、岭回归、Lasso回归、分解机、朴素贝叶斯、决策树、AdaBoost、梯度树提升、随机森林、Extra-Trees、K最近邻分类器、K-Means、K-Medoids、高斯混合模型、DBSCAN、幂迭代聚类、多维缩放、t-SNE、主成分分析和非负矩阵分解等算法。