Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
M

machine-learning-with-ruby

> 编程语言
Open source

Curated list: Resources for machine learning in Ruby

2.2K stars0 likes1 views
WebsiteGitHub

About

Curated list: Resources for machine learning in Ruby

[RubyNLP | RubyDataScience | RubyInterop]

Awesome Machine Learning with Ruby [][ruby]

Curated List of Ruby Machine Learning Links and Resources

[Machine Learning][ml] is a field of [Computational Science][cs] - often nested under [AI][ai] research - with many practical applications due to the ability of resulting algorithms to systematically implement a specific solution without explicit programmer's instructions. Obviously many algorithms need a definition of [features][fe] to look at or a biggish [training set][ts] of data to derive the solution from.

This curated list comprises [awesome][awesome] libraries, data sources, tutorials and presentations about [Machine Learning][ml] utilizing the [Ruby][ruby] programming language.

A lot of useful resources on this list come from the development by [The Ruby Science Foundation][sciruby], our [contributors][contributors] and our own day to day work on various ML applications.

:sparkles: Every contribution is welcome! Add links through pull requests or create an issue to start a discussion.

Follow us on Twitter and please spread the word using the #RubyML hash tag!

Contents

  • :sparkles: Tutorials
  • Machine Learning Libraries
    • Frameworks
    • Neural networks
    • Deep Learning
    • Kernel methods
    • Evolutionary algorithms
    • Bayesian methods
    • Decision trees
    • Clustering
    • Linear classifiers
    • Statistical models
    • Gradient boosting
    • Vector search
  • Applications of machine learning
  • Data structures
  • Data visualization
  • Articles, Posts, Talks, and Presentations
  • Projects and Code Examples
  • Heroku buildpacks
  • Books, Blogs, Channels
  • Community
  • Related Resources
  • License

:sparkles: Tutorials

Please help us to fill out this section! :smiley:

  • Ruby neural networks
  • How to implement linear regression in Ruby [code]
  • How to implement classification using logistic regression in Ruby
  • How to implement simple binary classification using a Neural Network in Ruby [code]
  • How to implement classification using a SVM in Ruby [code]
  • Unsupervised learning using k-means clustering in Ruby [code]
  • Teaching an AI to play a simple game using Q-Learning in Ruby [code]
  • Teaching a Neural Network to play a game using Q-Learning in Ruby [code]
  • Using the Python scikit-learn machine learning library in Ruby using PyCall [code]
  • How to evolve neural networks in Ruby using the Machine Learning Workbench

Machine Learning Libraries

[Machine Learning][ml] algorithms in pure Ruby or written in other programming languages with appropriate bindings for Ruby.

Frameworks

  • LangChain.rb - Build ML/AI-supercharged applications with Ruby's LangChain.
  • weka - JRuby bindings for Weka, different ML algorithms implemented through Weka.
  • ai4r - Artificial Intelligence for Ruby.
  • classifier-reborn - General classifier module to allow Bayesian and other types of classifications. [dep: GLS]
  • scoruby - Ruby scoring API for PMML (Predictive Model Markup Language).
  • rblearn - Feature Extraction and Crossvalidation library.
  • data_modeler - Model your data with machine learning. Ample test coverage, examples to start fast, complete documentation. Production ready since 1.0.0.
  • shogun - Polyfunctional and mature machine learning toolbox with Ruby bindings.
  • aws-sdk-machinelearning - Machine Learning API of the Amazon Web Services.
  • azure_mgmt_machine_learning - Machine Learning API of the Microsoft Azure.
  • machine_learning_workbench - Growing machine learning framework written in pure Ruby, high performance computing using Numo, CUDA bindings through Cumo. Currently implementating neural networks, evolutionary strategies, vector quantization, and plenty of examples and utilities.
  • Deep NeuroEvolution - Experimental setup based on the machine_learning_workbench towards searching for deep neural networks (rather than training) using evolutionary algorithms. Applications to the OpenAI Gym using PyCall.
  • rumale - Machine Learninig toolkit in Ruby with wide range of implemented algorithms (SVM, Logistic Regression, Linear Regression, Random Forest etc.) and interfaces similar to [Scikit-Learn][scikit] in Python.
  • eps - Bayesian Classification and Linear Regression with exports using PMML and an alternative backend using [GSL][gsl].
  • ruby-openai - OpenAI API wrapper
  • Instruct - Inspired by Guidance; weave code, prompts and completions together to instruct LLMs to do what you want.

Neural networks

  • neural-net-ruby - Neural network written in Ruby.
  • ruby-fann - Ruby bindings to the Fast Artificial Neural Network Library (FANN).
  • cerebrum - Experimental implementation for Artificial Neural Networks in Ruby.
  • tlearn-rb - Recurrent Neural Network library for Ruby.
  • brains - Feed-forward neural networks for JRuby based on brains.
  • machine_learning_workbench - Framework including pure-Ruby implementation of both feed-forward and recurrent neural networks (fully connected). Training available using neuroevolution (Natural Evolution Strategies algorithms).
  • rann - Flexible Ruby ANN implementation with backprop (through-time, for recurrent nets), gradient checking, adagrad, and parallel batch execution.

Deep learning

  • tensor_stream - Ground-up and standalone reimplementation of TensorFlow for Ruby.
  • red-chainer - Deep learning framework for Ruby.
  • tensorflow - Ruby bindings for TensorFlow.
  • ruby-dnn - Simple deep learning for Ruby.
  • torch-rb - Ruby bindings for LibTorch using rice.
  • mxnet - Ruby bindings for mxnet.

Kernel methods

  • rb-libsvm - Support Vector Machines with Ruby and the LIBSVM library. [dep: bundled]

Evolutionary algorithms

  • machine_learning_workbench - Framework including pure-Ruby implementations of Natural Evolution Strategy algorithms (black-box optimization), specifically Exponential NES (XNES), Separable NES (sNES), Block-Diagonal NES (BDNES) and more. Applications include neural network search/training (neuroevolution).
  • simple_ga - Simplest Genetic Algorithms implementation in Ruby.

Bayesian methods

  • linnaeus - Redis-backed Bayesian classifier.
  • naive_bayes - Simple Naive Bayes classifier.
  • nbayes - Full-featured, Ruby implementation of Naive Bayes.

Decision trees

  • decisiontree - Decision Tree ID3 Algorithm in pure Ruby. [dep: GraphViz | post].

Clustering

  • kmeans-clusterer - k-means clustering in Ruby.
  • k_means - Attempting to build a fast, memory efficient K-Means program.
  • knn - Simple K Nearest Neighbour Algorithm.

Linear classifiers

  • liblinear-ruby-swig - Ruby interface to LIBLINEAR (much more efficient than LIBSVM for text classification).
  • liblinear-ruby - Ruby interface to LIBLINEAR using SWIG.

Statistical models

  • rtimbl - Memory based learners from the Timbl framework.
  • lda-ruby - Ruby implementation of the LDA (Latent Dirichlet Allocation) for automatic Topic Modelling and Document Clustering.
  • maxent_string_classifier - JRuby maximum entropy

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Rubyawesomeawesome-listlistmachine-learning

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言