Rumale 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, 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.
Rumale::Core provides base classes and utility functions for implementing machine learning algorithm with Rumale interface.
Rumale::Clustering provides cluster analysis algorithms, such as K-Means, Gaussian Mixture Model, DBSCAN, and Spectral Clustering, with Rumale interface.
Rumale::Preprocessing provides preprocessing techniques, such as L2 normalization, standard scaling, and one-hot encoding, with Rumale interface.
Rumale::Ensemble provides ensemble learning algorithms, such as AdaBoost, Gradient Tree Boosting, and Random Forest, with Rumale interface.
Rumale::Tree provides classifier and regression based on decision tree algorithms with Rumale interface.
Rumale::Decomposition provides matrix decomposition algorithms, such as Principal Component Analysis, Non-negative Matrix Factorization, Factor Analysis, and Independent Component Analysis, with Rumale interface.
Rumale::Pipeline provides classes for chaining transformers and estimators with Rumale interface.
Rumale::Manifold provides data embedding algorithms, such as Multi-dimensional Scaling, Locally Linear Embedding, Laplacian Eigenmaps, Hessian Eigenmaps, and t-distributed Stochastic Neighbor Embedding, with Rumale interface.
Rumale::EvaluationMeasure provides evaluation measures, such as accuracy, precision, recall, and f-score, with Rumale interface.
Rumale::LinearModel provides linear model algorithms, such as Logistic Regression, Support Vector Machine, Lasso, and Ridge Regression with Rumale interface.
Rumale::ModelSelection provides model validation techniques, such as k-fold cross-validation, time series cross-validation, and grid search, with Rumale interface.