MultiLayerFFNN Class Reference

multi layer neural network with configurable activation functions More...

#include <multilayerffnn.h>

Inherits FeedForwardNN, and InvertableModel.

Inherited by Elman.

Inheritance diagram for MultiLayerFFNN:

Inheritance graph
[legend]
Collaboration diagram for MultiLayerFFNN:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 MultiLayerFFNN (double eps, const std::vector< Layer > &layers)
virtual ~MultiLayerFFNN ()
virtual void init (unsigned int inputDim, unsigned int outputDim, double unit_map=0.0)
 initialisation of the network with the given number of input and output units
virtual const matrix::Matrix process (const matrix::Matrix &input)
 passive processing of the input
virtual const matrix::Matrix learn (const matrix::Matrix &input, const matrix::Matrix &nom_output, double learnRateFactor=1)
 performs learning and returns the network output before learning (process should be called before)
virtual const matrix::Matrix response (const matrix::Matrix &input) const
virtual unsigned int getInputDim () const
 returns the number of input neurons
virtual unsigned int getOutputDim () const
 returns the number of output neurons
virtual void damp (double damping)
 damps the weights and the biases by multiplying (1-damping)
bool store (FILE *f) const
 stores the layer binary into file stream
bool restore (FILE *f)
 restores the layer binary from file stream
virtual paramkey getName () const
 return the name of the object
virtual paramval getParam (const paramkey &key) const
 returns the value of the requested parameter or 0 (+ error message to stderr) if unknown.
virtual bool setParam (const paramkey &key, paramval val)
 sets the value of the given parameter or does nothing if unknown.
virtual paramlist getParamList () const
 The list of all parameters with there value as allocated lists.
virtual const LayergetLayer (unsigned int layer) const
virtual const matrix::MatrixgetWeights (unsigned int to_layer) const
virtual const matrix::MatrixgetBias (unsigned int of_layer) const

Protected Attributes

double eps
std::vector< Layerlayers
std::vector< matrix::Matrixweights
std::vector< matrix::Matrixbias
std::vector< matrix::Matrixys
std::vector< matrix::Matrixzs
bool initialised

Detailed Description

multi layer neural network with configurable activation functions


Constructor & Destructor Documentation

MultiLayerFFNN double  eps,
const std::vector< Layer > &  layers
[inline]
 

Parameters:
eps learning rate
layers Layer description (the input layer is not specified (always linear))

virtual ~MultiLayerFFNN  )  [inline, virtual]
 


Member Function Documentation

void damp double  damping  )  [virtual]
 

damps the weights and the biases by multiplying (1-damping)

Implements FeedForwardNN.

virtual const matrix::Matrix& getBias unsigned int  of_layer  )  const [inline, virtual]
 

virtual unsigned int getInputDim  )  const [inline, virtual]
 

returns the number of input neurons

Implements AbstractModel.

virtual const Layer& getLayer unsigned int  layer  )  const [inline, virtual]
 

virtual paramkey getName  )  const [inline, virtual]
 

return the name of the object

Reimplemented from Configurable.

Reimplemented in Elman.

virtual unsigned int getOutputDim  )  const [inline, virtual]
 

returns the number of output neurons

Implements AbstractModel.

virtual paramval getParam const paramkey key  )  const [inline, virtual]
 

returns the value of the requested parameter or 0 (+ error message to stderr) if unknown.

Reimplemented from Configurable.

virtual paramlist getParamList  )  const [inline, virtual]
 

The list of all parameters with there value as allocated lists.

Returns:
list of key-value pairs

Reimplemented from Configurable.

virtual const matrix::Matrix& getWeights unsigned int  to_layer  )  const [inline, virtual]
 

void init unsigned int  inputDim,
unsigned int  outputDim,
double  unit_map = 0.0
[virtual]
 

initialisation of the network with the given number of input and output units

Implements AbstractModel.

Reimplemented in Elman.

const Matrix learn const matrix::Matrix input,
const matrix::Matrix nom_output,
double  learnRateFactor = 1
[virtual]
 

performs learning and returns the network output before learning (process should be called before)

Implements AbstractModel.

Reimplemented in Elman.

const Matrix process const matrix::Matrix input  )  [virtual]
 

passive processing of the input

Implements AbstractModel.

Reimplemented in Elman.

const Matrix response const matrix::Matrix input  )  const [virtual]
 

See also:
InvertableModel::response (process should be called before)

Implements InvertableModel.

bool restore FILE *  f  )  [virtual]
 

restores the layer binary from file stream

Implements Storeable.

Reimplemented in Elman.

virtual bool setParam const paramkey key,
paramval  val
[inline, virtual]
 

sets the value of the given parameter or does nothing if unknown.

Reimplemented from Configurable.

bool store FILE *  f  )  const [virtual]
 

stores the layer binary into file stream

Implements Storeable.

Reimplemented in Elman.


Member Data Documentation

std::vector<matrix::Matrix> bias [protected]
 

double eps [protected]
 

bool initialised [protected]
 

std::vector<Layer> layers [protected]
 

std::vector<matrix::Matrix> weights [protected]
 

std::vector<matrix::Matrix> ys [protected]
 

std::vector<matrix::Matrix> zs [protected]
 


The documentation for this class was generated from the following files:
Generated on Tue Jan 16 02:14:47 2007 for Robotsystem of the Robot Group Leipzig by doxygen 1.3.8