MDP 3.3 released! This is a bug-fix release

  • support sklearn versions up to 0.12
  • cleanly support reload
  • fail gracefully if pp server does not start
  • several bug-fixes and improvements

Get the full list of changes since last release.


MDP 3.2 released!

  • improved sklearn wrappers
  • update sklearn, shogun, and pp wrapeprs to new versions
  • do not leave temporary files around after testing
  • refactoring and cleaning up of HTML exporting features
  • improve export of signature and docstring to public methods
  • fixed and updated FastICANode to closely resemble the original Matlab version (thanks to Ben Willmore)
  • support for new numpy version
  • new NeuralGasNode (thanks to Michael Schmuker)
  • several bug fixes and improvements

Modular toolkit for Data Processing (MDP) is a Python data processing framework.

From the user’s perspective, MDP is a collection of supervised and unsupervised learning algorithms and other data processing units that can be combined into data processing sequences and more complex feed-forward network architectures.

From the scientific developer’s perspective, MDP is a modular framework, which can easily be expanded. The implementation of new algorithms is easy and intuitive. The new implemented units are then automatically integrated with the rest of the library.

The base of available algorithms is steadily increasing and includes signal processing methods (Principal Component Analysis, Independent Component Analysis, Slow Feature Analysis), manifold learning methods ([Hessian] Locally Linear Embedding), several classifiers, probabilistic methods (Factor Analysis, RBM), data pre-processing methods, and many others.

Using MDP is as easy as:

>>> import mdp

>>> # perform PCA on some data x
>>> y = mdp.pca(x) 

>>> # perform ICA on some data x using single precision
>>> y = mdp.fastica(x, dtype='float32') 

To learn more about MDP, read through the Documentation.