Machine Learning with Ruby
Tags: ruby, machinelearning, datascience
Published: 2020-05-15 13:17:06

A list of gems for Machine Learning, there is not only the Python :).

## Numo

Numo::NArray is a Numerical N-dimensional Array class
for fast processing and easy manipulation of multi-dimensional numerical data,
similar to numpy.ndaray.
This project is the successor to [Ruby/NArray](http://masa16.github.io/narray/).

URL: https://github.com/ruby-numo/numo-narray

## Yomu

Yomu is a library for extracting text and metadata from files and documents using the Apache Tika content analysis toolkit.

URL: https://github.com/yomurb/yomu

## Decision Tree

A Ruby library which implements ID3 (information gain) algorithm for decision tree learning. Currently, continuous and discrete datasets can be learned.

URL: https://github.com/igrigorik/decisiontree

## Lurn

Lurn is a ruby gem for performing machine learning tasks. The API and design patterns in Lurn are inspired by scikit-learn, a popular machine learning library for Python.

URL: https://github.com/dansbits/lurn

## Classifier Reborn

Classifier Reborn is a general classifier module to allow Bayesian and other types of classifications.

URL: https://github.com/jekyll/classifier-reborn

## Daru

daru (Data Analysis in RUby) is a library for storage, analysis, manipulation and visualization of data in Ruby.

daru makes it easy and intuitive to process data predominantly through 2 data structures: Daru::DataFrame and Daru::Vector.

URL: https://github.com/SciRuby/daru

## Rumale

Rumale (Ruby machine learning) is a machine learning library in Ruby. Rumale provides machine learning algorithms with interfaces similar to Scikit-Learn in Python. Rumale supports Support Vector Machine, Logistic Regression, Ridge, Lasso, Factorization Machine, Multi-layer Perceptron, Naive Bayes, Decision Tree, Gradient Tree Boosting, Random Forest, K-Means, Gaussian Mixture Model, DBSCAN, Spectral Clustering, Mutidimensional Scaling, t-SNE, Fisher Discriminant Analysis, Neighbourhood Component Analysis, Principal Component Analysis, Non-negative Matrix Factorization, and many other algorithms.

URL: https://github.com/yoshoku/rumale

## Nyaplot

Nyaplot is an interactive plots generator for Ruby users. Its goal is to make it easy to create interactive plots in Ruby and still allows fast prototyping, customizability, and the integration with other scientific gems.

Nyaplot is a compound word from 'Nya' and 'plot.' The word 'Nya' comes from an onomatopoeia of cat's meow in Japanese.

URL: https://github.com/domitry/nyaplot

## Disco

Collaborative filtering for Ruby

Supports user-based and item-based recommendations
Works with explicit and implicit feedback
Uses high-performance matrix factorization

URL: https://github.com/ankane/disco

## xLearn

xLearn - the high-performance machine learning library - for Ruby

Supports:

Linear models
Factorization machines
Field-aware factorization machines

URL: https://github.com/ankane/xlearn

## fastText

fastText - efficient text classification and representation learning - for Ruby

URL: https://github.com/ankane/fasttext

## Menoh Ruby Extension

This is a Ruby extension of Menoh; an ONNX runtime engine developed by @okdshin and their team @pfnet-research.

URL: https://github.com/pfnet-research/menoh-ruby

## PyCall

This library provides the features to directly call and partially interoperate with Python from the Ruby language. You can import arbitrary Python modules into Ruby modules, call Python functions with automatic type conversion from Ruby to Python.

URL: https://github.com/mrkn/pycall

## NOTE:

https://github.com/arbox/nlp-with-ruby#text-extraction

This curated list comprises awesome resources, libraries, information sources about computational processing of texts in human languages with the Ruby programming language. That field is often referred to as NLP, Computational Linguistics, HLT (Human Language Technology) and can be brought in conjunction with Artificial Intelligence, Machine Learning, Information Retrieval, Text Mining, Knowledge Extraction and other related disciplines.