Giter Site home page Giter Site logo

markdenardo / ml-lib Goto Github PK

View Code? Open in Web Editor NEW

This project forked from irllabs/ml-lib

1.0 1.0 0.0 84.66 MB

A machine learning library for Max and Pure Data

License: Other

Python 0.16% C++ 17.68% Max 80.89% Makefile 0.33% Shell 0.06% C 0.07% Objective-C 0.07% Objective-C++ 0.74%

ml-lib's Introduction

ml-lib

Build Status

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.

The goal of ml-lib is to provide a simple, consistent interface to a wide range of machine learning techniques in Max and Pure Data. The canonical NIME 2015 paper on ml-lib can be found here.

Full class documentation can be found here.

Bug Reports and Discussion

Please use the GitHub Issue Tracker for all bug reports and feature requests.

Development Status

The library has currently been tested on Mac OS X with Max 7 and 8 and on Mac OS X and Linux on i386 and armv6 architectures using Pure Data.

Bugs should be reported via the issues page.

Installation

  • For Max, install by searching for ml.lib in the Max Package Manager that can be found under File -> Show Package Manager.
  • For Pd, install by searching for ml.lib in the Deken externals manager that can be found under Help -> Find Externals. Once installed, add to your Pd search path the exact path to the ml.lib folder inside Pd/externals.

Compiling from source

Instructions for compiling ml-lib from source can be found here

Library structure

ml-lib objects follow the naming convention ml.* where “*” is an abbreviated form of the algorithm implemented by the object.

A full list of all objects and their parameters can be found here.

For more detailed descriptions of the underlying algorithms, see links below.

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 and y dimensions of hand position to a single dimension representing the distance from origin (0, 0).

Object list

Pre-processing

No objects currently implemented

Post-processing

No objects currently implemented

Feature extraction

  • ml.peak: output detected peaks from a continues stream of input values
  • ml.minmax: output a vector of minima and maxima locations (peaks) from an input vector

Classification

Regression

See the help file for each component for further details about operation and usage.

Credits

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

Special thanks to Niccolò Granieri for testing and assistance.

License

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/.

ml-lib's People

Contributors

batchku avatar niccologranieri avatar i-n-g-o avatar

Stargazers

MDN avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.