Fascinating World of Neural Nets  
add to favorites   tell a friend
Introduction to KCM
Why Neural Nets?
Introduction to ANN
ANN in Real World
Tools & Utilities
Blog Articles
Discussion Board
NNDef Toolkit
Knowledge Models
nBank Project

NNDef ToolKit

Each artificial neural network can be viewed as a mean to capture knowledge, by training or learning from experience, and represent intelligence by processing new data.

For example a network trained to filter Spam based on keywords could substitute piece of intelligence a human would use by operating an email system.

On the journey to era of intelligent machines there would be a need for systems to seamlessly expand their "knowledge base". As observed throughout human history that would require a media to share and exchange knowledge. And that in turn would require some standardization of the way knowledge is represented.

The goal of NNDef is to facilitate exchange and execution of Neural Networks in a standard way.

Currently NNDef project includes following modules:


DTD stands for "Document Type Definition" which formulates the meta-data for representing structured documents. DTD define the legal building blocks of an XML (Extensible Markup Language) document.
NNDef DTD allows a Neural Network to be expressed as XML document in a standard and portable format, referred to as KnowledgePack.
Such documents can be shared and executed using the runtime modules of NNDef.

NNDef Runtime Engine:

For portability purposes this package is developed using java and can run on any platform. The engine will be initialized by a Neural Network definition (represented in NNDef XML format) and would be able to process inputs data and generate outputs based on knowledge captured in the ANN definition.
Executed from command-line NNDef Runtime Engine would recognize the required input parameters for selected network and prompt the user to provide missing data.
It will then compute and return the resulting data by applying the network logic.

NNDef Runtime Library:

The same ANN definition can be embedded in other applications using NNDef runtime library.
At the moment the library supports static, dynamic and multi-threaded binding for Java language. A Perl and C/C++ library would be available soon.
This package is optimized for performance and size and is seamlessly integrateable into any type of application.

NNDef Matlab Exporter:

The most important aspect of Neural Network development is design and training.
Normally Expert use special authoring and simulations packages for that purpose.
One of the most frequently used packages is Matlab NN-toolkit.
In order to simplify the use, NNDef provides a Network Exporter for Matlab that will generate XML file from a trained network.

NNDef Transformers and Sample Models:

Transformers are used to convert Neural Network models from different authoring and simulation packages to NNDef xml format.

In addition NNDef repository includes trained models in NNDef xml format for immediate use.

License Agreement:

All components of NNDef projects are free of charge for commercial and non-commercial use as long as the following conditions are adhered to.

Copyright remains Pejman Makhfi's, and as such you must retain this notice and the following text and disclaimers in all redistributions of the software and resulting products.
All advertising materials mentioning features or use of this software must display the acknowledgement.


NNDef is offered "as is". We do not provide any warranty of the items whatsoever, whether express, implied, or statutory, including, but not limited to, any warranty of merchantability or fitness for a particular purpose or any warranty that the contents of the items will be error-free. In no respect shall we incur any liability for any damages, including, but limited to, direct, indirect, special, or consequential damages arising out of, resulting from, or any way connected to the use of the items.



Version 1.0 December 17, 2003

Go to Download page


NNDef Matlab Exporter

Version 1.0 January 2, 2004

Click here to Download


NNDef Runtime Engine & Library
Version 1.0 January 2, 2004

Go to Download Page


NNDef SNNS Converter
Version 1.0 February 14, 2004

Go to Download Page


NNDef Sample Neural Network Models
Version 1.0 February 15, 2004

Model Repository


Last Update: 03/06/2004