Current Version

MCPN v0.9.1 (beta)
19th of December, 2010

First public release of the library. Use CHM or online documentation for API reference.

Multi-Core optimized Perceptron Network

  • Fully connected feedforward multilayer perceptron network with backpropagation algorithm adapted to multiple CPU cores.
  • Specifically targeted at large 2-layered networks as that configuration could approximate any complex function of N variables given there is enough neurons in the hidden layer (number that is based on experiments with data and is very different for different tasks).
  • Makes use of all available CPU cores to operate faster.
  • Uses special weights initialization scheme (Nguyen-Widrow) that dramatically reduces number of epochs network needs to train and fast exponent function approximation that further reduces calculation time.
  • Simple to use and fully documented C++ interface.
  • Comes with performance test application that could be either run on the target system unmodified or easily adapted to your specific task to understand if MCPN could be used to solve given problem or not.
  • Builds on CodeBlocks 10.05 / MinGW and Visual Studio 10 in 32 and 64 bit configurations.
  • LGPL licensed, does not contain GPL code and could be safely used (dynamic linking) in a closed-source product.

Todo list

  • Create Linux version

  • Make trainers use validation set (correct data samples that were not used for training) after each epoch to see how network performs on unseen data

  • Let trainers restructure network in user-given boundaries to find the best network (the smallest error) configuration.