TarzaNN
TarzaNN neural network simulator
C:/Users/albertlr/projects/TarzaNN/TarzaNN/BPLearningFeaturePlane.h
Go to the documentation of this file.
00001 #ifndef BPLearningFeaturePlane_H_INCLUDED
00002 #define BPLearningFeaturePlane_H_INCLUDED
00003 
00004 #include  <qimage.h>
00005 
00006 #include "nowarn.h"
00007 #include "common.h"
00008 #include <stdlib.h>
00009 
00010 #include "OutputImage.h"
00011 #include "LearningFeaturePlane.h"
00012 #include "FilterBank.h"
00013 #include "PlaneInputWindowSet.h"
00014 
00016 class BPLearningFeaturePlane : public LearningFeaturePlane {
00017         friend class GatingUnits;
00018         friend class FeaturePlaneFactory;
00019 public:
00020     ~BPLearningFeaturePlane();
00021         void read(QDataStream* inStream, QProgressDialog* progress, int* index);
00022 
00023         void save(QDataStream* outStream, QProgressDialog* progress, int* index);
00024         bool isLearning();
00025         
00026 protected:
00027 
00044         BPLearningFeaturePlane( Network* net, int l, QString* name, int w, int h, int angles, int speeds, int alpha, int speed, bool isWTA, bool visible, Neuron* neuron, NotifyStrategyAbstract* notify, bool learning);
00045         void applyGatingControl();
00046         void run();
00047         void step();
00048         void updateWeights(Matrix* errorMatrix);
00049 
00050         void computeActivations();
00051         float nonlinearity(Matrix* totalActivation, OutputImage* workOutput);
00052         
00053         Matrix* activations;
00054         Matrix* desiredOutcome;
00055         Matrix* errorMatrix;
00056         vector<Matrix*> backErrorMatrix;
00057         
00058         bool learning;
00059         float ita;
00060 };
00061 #endif //BPLearningFeaturePlane_H_INCLUDED
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines