| Home |
|
MULTILAYER
PERCEPTRON - A JAVA IMPLEMENTATION v1.1 by Aydin Gurel |
|
What is this? Feed forward networks are the most widely used and the most flexible kind of neural net. This work is a java implementation of multilayer perceptron nets. Using this package, you can build and train multilayer perceptron nets with any number of layers, any number of units very easily. |
|
What can you
exactly do with it? You can: - Build multilayer perceptron nets with any number of layers and units, - Set units with linear and sigmoid activation functions and set them separately for each layer, - Set flatness parameters for sigmoid functions and set them separately for each layer, - Use momentum, set different momentum parameters for each layer, - Save and Load the configuration of the net, - Save and Load the weights, - Load training patterns from a file and train the net using these patterns, - Standardize inputs and outputs ( or targets during training ) using a separate Standardizer class, - Train the net using back propagation and with any training rate. - Use training techniques such as incremental training, batch training and mini batch training, - Calculate the average error for a set of patterns. |
|
Other
information: - Codes were tested using "Sun Java 2 SDK 1.4.0". - Outputs of the sigmoid units are between 0 and 1. - Layers are connected to each other consecutively, each unit in a layer is connected to all of the units on the next layer (and vice versa) if there is one - During training, you can switch between training techniques without any problem. - When you create a net, all weights are initialized with a uniform random value between -1 and 1. If you want to use your own weights, you have to load them after the initialization. |
|
Package: - Tlu.class is for neural unit objects. - Layer.class is for layer objects. - Mlp.class is for neural net objects. - Trainer.class is the class which trains a net using patterns. - Pattern.class is for pattern objects. It stores a pattern with input and target value(s). Neural.zip contains all source files and class files of the core modules. |
|
Example: This example shows you how to train and test a neural net. A net is created using a configuration file, initial weights and training patterns are read from files, the net is trained using batch training and incremental training consecutively, new weights are saved and the net is tested. Example.zip contains all files you need for running the example. |
| Please contact me if you wish to use the code entirely or partially in any kind of project so that I can reference it. The code is free. Also I would like to hear your feedback about the package. |
|
This package
has been used in the following projects: - Reinforcement Learning with Domain Knowledge / Leo Yaik, Rachel Lim / UNSW - Artificial Music Harmonizer / Stuart Sherwin / University or Warwick |
| Home |