20 #ifndef BACKPROPAGATIONALGO_H
21 #define BACKPROPAGATIONALGO_H
24 #include "learningalgorithm.h"
26 #include "matrixlinker.h"
54 void setUpdateOrder(
const UpdatableList& update_order );
63 void setTeachingInput(
Cluster* output,
const DoubleVector& ti );
68 virtual void learn(
const Pattern& );
71 virtual double calculateMSE(
const Pattern& );
94 void enableMomentum();
122 DoubleVector getError(
Cluster* );
176 static void describe( QString type );
179 virtual void neuralNetChanged();
188 UpdatableList update_order;
191 class FARSA_NNFW_API cluster_deltas {
195 DoubleVector deltas_outputs;
196 DoubleVector deltas_inputs;
197 DoubleVector last_deltas_inputs;
198 QList<MatrixLinker*> incoming_linkers_vec;
199 QVector<DoubleVector> incoming_last_outputs;
202 QMap<Cluster*, int> mapIndex;
204 QVector<cluster_deltas> cluster_deltas_vec;
208 void addCluster( Cluster*,
bool );
210 void addLinker( Linker* );
This file contains the common type defitions used on the whole framework.
void disableMomentum()
Disable momentum.
double momentum() const
return the momentum
Back-Propagation Algorithm implementation.
In a BiasedCluster each neuron has an input, an output and a bias value.
UpdatableList updateOrder() const
Return the order on which the error is backpropaget through the NeuralNet.
double rate() const
return the learning rate
Define the common interface among Clusters.
LearningAlgorithm object.
void setMomentum(double newmom)
Set the momentum value.
The Neural Network Class.
void setRate(double newrate)
Set the learning rate.
This file contains the declaration of BiasedCluster class.