|
"nn_util" is a highly efficient multi-layer perceptron (MLP) neural network library with a variety of built-in training protocols. This code is written in highly portable C which has been successfully compiled on numerous computing platforms; Linux with gcc, Compaq's ccc, and Intel's icc, IRIX with MIPSPro C/C++, AIX with gcc and IBM's xlc, Solaris with gcc. "nn_util" was initially distributed as part of the Open Source GAUL project but was extracted in order to make GAUL more focused on its direct goals.
"nn_util" has two main advantages over other similar libraries already freely available on the web. Firstly, it is very small and efficient. Without a huge number of optional features or extensive, and unnecessary generalisation, it has remained in a form that is very simple to understand and to extend or modify. Since it only trains and simulates MLPs, it is very fast. Secondly, it has a very simple API; it is trivial to incorporate it in other programs which may introduce their own training schemes or use those provided.
"nn" is a standalone NN simulator which forms an example template for such embedding of "nn_util". An example program in the GAUL distribution trains a neural network using a Lamarckian GA with adaptation performed by either the usual back-propagation with momentum, or back-propagation with decay and momentum.
Some potentially useful features are still missing, and it is unlikely that they will be added in the near future. Such features would include network merging and node pruning. More likely to be added soon are convenient I/O routines for data and simulation results.
*** Due to diskspace quota issues, nn_util is not currently available for download. This is a temporary situation, please check back. ***
Download the full source-code package, nn_util-1.0-1.tgz, under the terms of the GNU General Public License. Download documentation in PDF format, nn_util-docs-1.0.pdf
Features include:
- Easy to embed within other software.
- Lightweight and efficient, standalone, MLP simulator.
- Multiple training protocols are provided, and it is trivial to implement others.
|