NeurApp 1.1
NeurApp - software for exploring approximation by artificial neural networks on functions of one or two variables.

IG::Neural::NeuralApproximatorNeuron Class Reference

Approximator of response by using neural networks, based on the NeuronDotNet library. $A Igor Mar11 Jul11; Tako78 Jul11;. More...

Inheritance diagram for IG::Neural::NeuralApproximatorNeuron:
Collaboration diagram for IG::Neural::NeuralApproximatorNeuron:

List of all members.

Classes

class  MyNeuronBackPropagation
 Replacement for BackpropagationNetwork from NeuronDotNet, adapts some functionality to the needs of enclosing class. More...

Public Member Functions

 NeuralApproximatorNeuron ()
override void PrepareNetwork ()
 Prepares neural network for use. If networks have not yet been created accordinfg to internal data, they are created. If networks are already prepared then this method does nothing.
override void CreateNetwork ()
 Creates the neural network anew. It the network already exists on the current object, it is discarded.
override void ResetNetwork ()
 Resets the neural network(s), clears information generated during training.
override void DestroyNetwork ()
 Destroys the neural network.
override void CalculateOutput (IVector input, ref IVector output)
 Calculates and returns the approximated output values corresponding to the specified inputs, by using the current neural network(s).

Protected Member Functions

override void PrepareNetworksArray ()
 Prepares the networks array (allocates it if necessary) for storing all neural networks of the current object. When using a single network for all outputs, it is stored to the single element of an array.
override void SaveNetworkSpecific (string fileOrDirectoryPath)
 Saves the state of the neural network to the specified file. If the file already exists, its contents are overwritten.
override void LoadNetworkSpecific (string fileOrDirectoryPath)
 Restores neural network from a file where it has been stored before.
override void PrepareInternalTrainingData ()
 Prepares internal training data that is needed by the native training algorithm.
override void TrainNetworkSpecific (int numEpochs)
 Trains neural network wiht the specified data, performing the specified number of epochs. The maximal number of epochs that is set on the current object does not have any effect in this method, and the method can perform more epochs tha specified by that limit.

Protected Attributes

LinearLayer _inputVal
 Network(s) used for approximation.
SigmoidLayer[] _hiddenVal
SigmoidLayer _outputVal
BackpropagationConnector[] _connector
MyNeuronBackPropagation[] _networks

Properties

TrainingSet[] TrainingSetSingleOutput [get, set]
 Gets or sets training sets for multiple networks.
TrainingSet TrainingSetInOut [get, set]
 Gets or sets training set single network with multiple output.

Private Attributes

TrainingSet _trainingSet = null
TrainingSet[] _trainingSetSingleOutput = null

Detailed Description

Approximator of response by using neural networks, based on the NeuronDotNet library. $A Igor Mar11 Jul11; Tako78 Jul11;.


Constructor & Destructor Documentation

IG::Neural::NeuralApproximatorNeuron::NeuralApproximatorNeuron ( ) [inline]

Member Function Documentation

override void IG::Neural::NeuralApproximatorNeuron::PrepareNetworksArray ( ) [inline, protected, virtual]

Prepares the networks array (allocates it if necessary) for storing all neural networks of the current object. When using a single network for all outputs, it is stored to the single element of an array.

$A Igor Mar11 Jul11; Tako78 Jul29;

Implements IG::Neural::NeuralApproximatorBase.

override void IG::Neural::NeuralApproximatorNeuron::PrepareNetwork ( ) [inline]

Prepares neural network for use. If networks have not yet been created accordinfg to internal data, they are created. If networks are already prepared then this method does nothing.

Some things suc as creation of a neural network follow the pattern of lazy evaluation. $A IgorJul11; Tako78 Jul29;

Implements IG::Neural::INeuralApproximator.

override void IG::Neural::NeuralApproximatorNeuron::CreateNetwork ( ) [inline]

Creates the neural network anew. It the network already exists on the current object, it is discarded.

$A Igor Jul11; Tako78 Jul29;

Implements IG::Neural::INeuralApproximator.

override void IG::Neural::NeuralApproximatorNeuron::ResetNetwork ( ) [inline]

Resets the neural network(s), clears information generated during training.

$A Igor Jul11; Tako78 Jul29;

Implements IG::Neural::INeuralApproximator.

override void IG::Neural::NeuralApproximatorNeuron::DestroyNetwork ( ) [inline]

Destroys the neural network.

$A Igor Jul11; Tako78 Jul29;

Implements IG::Neural::INeuralApproximator.

override void IG::Neural::NeuralApproximatorNeuron::SaveNetworkSpecific ( string  fileOrDirectoryPath) [inline, protected, virtual]

Saves the state of the neural network to the specified file. If the file already exists, its contents are overwritten.

Parameters:
fileOrDirectoryPathPath to the file into which the network is saved or of a directory into which network is saved (in this case default names are generated).

$A Igor Jul11; Tako78 Jul29;

Implements IG::Neural::NeuralApproximatorBase.

override void IG::Neural::NeuralApproximatorNeuron::LoadNetworkSpecific ( string  fileOrDirectoryPath) [inline, protected, virtual]

Restores neural network from a file where it has been stored before.

Parameters:
fileOrDirectoryPathPath to the file from which the neural network is read.

$A Igor Jul11; Tako78 Jul29;

Implements IG::Neural::NeuralApproximatorBase.

override void IG::Neural::NeuralApproximatorNeuron::PrepareInternalTrainingData ( ) [inline, protected, virtual]

Prepares internal training data that is needed by the native training algorithm.

$A Igor Jul11; Tako78 Jul29;

Implements IG::Neural::NeuralApproximatorBase.

override void IG::Neural::NeuralApproximatorNeuron::TrainNetworkSpecific ( int  numEpochs) [inline, protected, virtual]

Trains neural network wiht the specified data, performing the specified number of epochs. The maximal number of epochs that is set on the current object does not have any effect in this method, and the method can perform more epochs tha specified by that limit.

Parameters:
numEpochsNumber of epochs used in training of the network.

This method just enforces a fixed number of epochs and can be used to form more complex training procedures. Most common method used for training is that without arguments, which takse into account various tolerances that may be set on this object and the maximal number of epochs. $A Igor Jul11; Tako78 Jul29;

Implements IG::Neural::NeuralApproximatorBase.

override void IG::Neural::NeuralApproximatorNeuron::CalculateOutput ( IVector  input,
ref IVector  output 
) [inline]

Calculates and returns the approximated output values corresponding to the specified inputs, by using the current neural network(s).

Parameters:
inputInput parameters.
outputVector where approximated values are stored.
Returns:
Vector of output values generated by the trained neural network.

$A Igor Jul11; Tako78 Jul29;

Implements IG::Neural::INeuralApproximator.


Member Data Documentation

Network(s) used for approximation.

BackpropagationConnector [] IG::Neural::NeuralApproximatorNeuron::_connector [protected]

Property Documentation

TrainingSet [] IG::Neural::NeuralApproximatorNeuron::TrainingSetSingleOutput [get, set, protected]

Gets or sets training sets for multiple networks.

$A Tako78 Jul29;

TrainingSet IG::Neural::NeuralApproximatorNeuron::TrainingSetInOut [get, set, protected]

Gets or sets training set single network with multiple output.

$A Tako78 Jul29;


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties