aureservoir::TrainLS< T > Class Template Reference

#include <train.h>

Inheritance diagram for aureservoir::TrainLS< T >:

Inheritance graph
[legend]
Collaboration diagram for aureservoir::TrainLS< T >:

Collaboration graph
[legend]

Detailed Description

template<typename T>
class aureservoir::TrainLS< T >

trains the ESN offline in two steps, as described in Jaeger's "Tutorial on training recurrent neural networks"
See also:
http://www.faculty.iu-bremen.de/hjaeger/pubs/ESNTutorial.pdf
1. teacher-forcing/sampling: collects the internal states and desired outputs
2. computes output weights usings LAPACK's least square algorithm
See also:
http://www.netlib.org/lapack/single/sgels.f
The differences to the TrainPI algorithm is explained here:
See also:
class TrainPI

Public Member Functions

 TrainLS (ESN< T > *esn)
virtual ~TrainLS ()
class TrainLS Implementation
virtual void train (const typename ESN< T >::DEMatrix &in, const typename ESN< T >::DEMatrix &out, int washout) throw (AUExcept)

Protected Member Functions

void clearData ()
class TrainBase Implementation
void checkParams (const typename ESN< T >::DEMatrix &in, const typename ESN< T >::DEMatrix &out, int washout) throw (AUExcept)
void collectStates (const typename ESN< T >::DEMatrix &in, const typename ESN< T >::DEMatrix &out, int washout)
void squareStates ()

Protected Attributes

ESN< T > * esn_
ESN< T >::DEMatrix M
ESN< T >::DEMatrix O

Constructor & Destructor Documentation

template<typename T>
aureservoir::TrainLS< T >::TrainLS ( ESN< T > *  esn  )  [inline]

template<typename T>
virtual aureservoir::TrainLS< T >::~TrainLS (  )  [inline, virtual]


Member Function Documentation

template<typename T>
void aureservoir::TrainLS< T >::train ( const typename ESN< T >::DEMatrix in,
const typename ESN< T >::DEMatrix out,
int  washout 
) throw (AUExcept) [inline, virtual]

training algorithm

Implements aureservoir::TrainBase< T >.

template<typename T>
void aureservoir::TrainBase< T >::checkParams ( const typename ESN< T >::DEMatrix in,
const typename ESN< T >::DEMatrix out,
int  washout 
) throw (AUExcept) [inline, protected, inherited]

check parameters

template<typename T>
void aureservoir::TrainBase< T >::collectStates ( const typename ESN< T >::DEMatrix in,
const typename ESN< T >::DEMatrix out,
int  washout 
) [inline, protected, inherited]

collect network states with simulation algorithm

template<typename T>
void aureservoir::TrainBase< T >::squareStates (  )  [inline, protected, inherited]

squares states for SIM_SQUARE

template<typename T>
void aureservoir::TrainBase< T >::clearData (  )  [inline, protected, inherited]

frees allocated data for M and O


Field Documentation

template<typename T>
ESN<T>* aureservoir::TrainBase< T >::esn_ [protected, inherited]

reference to the data of the network

template<typename T>
ESN<T>::DEMatrix aureservoir::TrainBase< T >::M [protected, inherited]

matrix for network states and inputs over all timesteps

template<typename T>
ESN<T>::DEMatrix aureservoir::TrainBase< T >::O [protected, inherited]

matrix for outputs over all timesteps


The documentation for this class was generated from the following files:
Generated on Wed Mar 12 21:16:15 2008 for aureservoir by  doxygen 1.5.3