|
GPLIB++
|
#include <NeuralNetwork.h>

Public Types | |
| typedef std::vector < boost::shared_ptr < GeneralNeuron > > | tNeuralLayer |
| typedef std::vector< tNeuralLayer > | tNeuralArray |
| typedef std::vector < SigmoidalNeuron::tneurontype > | ttypeVector |
| typedef std::vector< ttypeVector > | ttypeArray |
Public Member Functions | |
| void | SetAlpha (const double a) |
| Set the momentum multiplier. More... | |
| void | SetMu (const double m) |
| Set the adaptation stepsize. More... | |
| void | SetLayers (ttypeArray typeArray, bool cachedoutput=false) |
| Configure the layers of the network according to the types in typeArray. More... | |
| void | InitWeights (const double MaxWeight, const double MaxBias) |
| Initialize the weights with random values with the specified maxima. More... | |
| void | PrintTopology (std::string filename) |
| Print the topology and weights of the network for plotting with the dot program. More... | |
| virtual void | PrintWeights (std::ostream &output) |
| Print the weights of the network to the specified output stream. More... | |
| virtual const gplib::rvec & | GetWeightsAsVector () |
| Return the network weights as a single vector. More... | |
| virtual void | AdaptFilter (const gplib::rvec &Input, const gplib::rvec &Desired) |
| Adapt the Filter with the current input and desired. More... | |
| virtual void | CalcOutput (const gplib::rvec &Input, gplib::rvec &Output) |
| Calculate the output with the given input. More... | |
| NeuralNetwork (const int inputsize, const int outputsize) | |
| The minium values for the network are the length of the input and output. More... | |
| NeuralNetwork (const int inputsize, const int outputsize, const double mu_, const ttypeArray &Layerssetup, const double maxinit, bool cachedoutput=false) | |
| Extended constructor with most of the necessary values. More... | |
| virtual | ~NeuralNetwork () |
Public Member Functions inherited from gplib::AdaptiveFilter | |
| const gplib::rvec & | GetFilterOutput () const |
| Access to the last calculated output (not sure if needed) More... | |
| const gplib::rvec & | GetEpsilon () const |
| Return the last estimation error. More... | |
| AdaptiveFilter (const int inputsize, const int outputsize) | |
| The constructor needs to know the length of the input and output vectors for memory allocation. More... | |
| virtual | ~AdaptiveFilter () |
Additional Inherited Members | |
Protected Member Functions inherited from gplib::AdaptiveFilter | |
| unsigned int | GetInputLength () |
| Access function for derived classes for the inputlength. More... | |
| unsigned int | GetOutputLength () |
| Access function for derived classes for the outputlength. More... | |
| void | SetEpsilon (const gplib::rvec &MyEps) |
| Possibility for derived classes to set estimation error. More... | |
| void | SetOutput (const gplib::rvec &Out) |
| Possibility for derived classes to set output. More... | |
The class NeuralNetwork manages the network output calculation, neuron storage and weight adaptation Derived from AdaptiveFilter so we can use the Filter functionality
Definition at line 17 of file NeuralNetwork.h.
| typedef std::vector<tNeuralLayer> gplib::NeuralNetwork::tNeuralArray |
Definition at line 21 of file NeuralNetwork.h.
| typedef std::vector<boost::shared_ptr<GeneralNeuron> > gplib::NeuralNetwork::tNeuralLayer |
Definition at line 20 of file NeuralNetwork.h.
| typedef std::vector<ttypeVector> gplib::NeuralNetwork::ttypeArray |
Definition at line 23 of file NeuralNetwork.h.
| typedef std::vector<SigmoidalNeuron::tneurontype> gplib::NeuralNetwork::ttypeVector |
Definition at line 22 of file NeuralNetwork.h.
| gplib::NeuralNetwork::NeuralNetwork | ( | const int | inputsize, |
| const int | outputsize | ||
| ) |
The minium values for the network are the length of the input and output.
Definition at line 13 of file NeuralNetwork.cpp.
| gplib::NeuralNetwork::NeuralNetwork | ( | const int | inputsize, |
| const int | outputsize, | ||
| const double | mu_, | ||
| const ttypeArray & | Layerssetup, | ||
| const double | maxinit, | ||
| bool | cachedoutput = false |
||
| ) |
Extended constructor with most of the necessary values.
Definition at line 20 of file NeuralNetwork.cpp.
References InitWeights(), and SetLayers().
|
virtual |
Definition at line 31 of file NeuralNetwork.cpp.
|
virtual |
Adapt the Filter with the current input and desired.
Implements gplib::AdaptiveFilter.
Definition at line 35 of file NeuralNetwork.cpp.
References gplib::AdaptiveFilter::GetFilterOutput(), and gplib::AdaptiveFilter::SetEpsilon().
Referenced by main().
|
virtual |
Calculate the output with the given input.
Implements gplib::AdaptiveFilter.
Definition at line 45 of file NeuralNetwork.cpp.
References gplib::AdaptiveFilter::SetOutput().
|
virtual |
Return the network weights as a single vector.
Implements gplib::AdaptiveFilter.
Definition at line 58 of file NeuralNetwork.cpp.
References size.
Referenced by PrintTopology().
| void gplib::NeuralNetwork::InitWeights | ( | const double | MaxWeight, |
| const double | MaxBias | ||
| ) |
Initialize the weights with random values with the specified maxima.
Definition at line 122 of file NeuralNetwork.cpp.
References gplib::UniformRNG::GetNumber().
Referenced by main(), and NeuralNetwork().
| void gplib::NeuralNetwork::PrintTopology | ( | std::string | filename | ) |
Print the topology and weights of the network for plotting with the dot program.
Definition at line 233 of file NeuralNetwork.cpp.
References GetWeightsAsVector(), and size.
Referenced by main().
|
virtual |
Print the weights of the network to the specified output stream.
Implements gplib::AdaptiveFilter.
Definition at line 219 of file NeuralNetwork.cpp.
Referenced by main().
|
inline |
| void gplib::NeuralNetwork::SetLayers | ( | ttypeArray | typeArray, |
| bool | cachedoutput = false |
||
| ) |
Configure the layers of the network according to the types in typeArray.
Definition at line 81 of file NeuralNetwork.cpp.
Referenced by main(), and NeuralNetwork().
|
inline |
Set the adaptation stepsize.
Definition at line 50 of file NeuralNetwork.h.
1.8.6