ml-lib is a library of machine learning externals for Max and Pure Data. ml-lib is primarily based on the Gesture Recognition Toolkit by Nick Gillian ml-lib is designed to work on a variety of platforms including OS X, Windows, Linux, on Intel and ARM architectures.
- Download the latest release from the GitHub releases page
- For Max, add the
ml.*.mxo
externals and the ml-lib helpfiles to your Max Search Path - For Pd, add
ml.*.pd_*
to your Pd search path and add the "ml" library to your startup flags by opening up the application Preferences and adding "-lib ml" to the Startup Flags
ml-lib objects follow the naming convention ml.*
where “*” is an abbreviated form of the algorithm implemented by the object.
Objects fall into one of five categories:
- Pre-processing: pre-process data prior to used as input to a classification or regression object
- Post-processing: post-process data after being output from a classification or regression object
- Feature extraction: extract “features” from control data. Feature vectors can be used as input to classification or regression objects
- Classification: take feature vectors as input, and output a value representing the class of the input. For example an object detecting hand position might output 0 for left, 1 for right, 2 for top and 3 for bottom.
- Regression: perform an M x N mapping between an input vector and an output vector with one or more dimensions. For example an object may map
x
andy
dimensions of hand position to a single dimension representing the distance from origin (0, 0).
No objects currently implemented
No objects currently implemented
ml.peak
: output detected peaks from a continues stream of input valuesml.minmax
: output a vector of minima and maxima locations (peaks) from an input vector
ml.adaboost
: Adaptive Boostingml.dtw
: Dynamic Time Warpingml.gmm
: Gaussian Mixture Modelml.hmm
: Hidden Markov Modelsml.knn
: k’s Nearest Neighbourml.mindist
:Minimum Distanceml.randforest
: Random Decision Forestml.softmax
: Softmaxml.svm
: Support Vector Machines
ml.linreg
: Linear Regressionml.logreg
: Logistic Regressionml.mlp
: Multi-layer Perceptron Artificial Neural Networks (ANN)
See the help file for each component for further details about operation and usage.
This software has been designed and developed by Ali Momeni and Jamie Bullock. The Gesture Recognition Toolkit is developed by Nick Gillian
ml-lib is supported by Art Fab, the College of Fine Arts and The Frank-Ratchye STUDIO for Creative Inquiry at Carnegie Mellon University
ml-lib is copyright (c) 2014 Carnegie Mellon University.
ml-lib is distributed under the GNU General Public License version 2. A copy of this is available in the accompanying LICENSE file. See also http://www.gnu.org/licenses/.