StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
StPmdNeuNet Class Reference
Inheritance diagram for StPmdNeuNet:

Public Member Functions

 StPmdNeuNet ()
 Constructor with no parameter . Purpose ??
 
 StPmdNeuNet (const Text_t *name, Int_t nInput=5, const Text_t *hidden="6:7:8", Int_t nOutput=4)
 Constructor.
 
void setDiscMaker (StPmdDiscriminatorMaker *)
 
virtual void SetKernel (Int_t nInput, const Text_t *hidden, Int_t nOutput)
 
virtual void SetLearnParam (Double_t learnParam=0.2, Double_t fse=0., Double_t mu=0.)
 
virtual void SetInitParam (Float_t lowerInitWeight=-1., Float_t upperInitWeight=1.)
 Sets the initialisation parameters : max and min weights.
 
virtual void Init ()
 
virtual void PrintS ()
 prints structure of network on screen
 
virtual void Mix ()
 
virtual Double_t TrainOneCycle ()
 
virtual void ResetCycles ()
 
virtual void Export (const Text_t *fileName="exportNN.dat")
 
virtual void Import (const Text_t *fileName="exportNN.dat")
 
virtual void SetUseBiases (Bool_t trueForUse=1)
 
virtual void SetRandomSeed (UInt_t seed=0)
 
virtual UInt_t GetRandomSeed ()
 
virtual Bool_t IsTrained ()
 
virtual Int_t GetNTrainCycles ()
 
virtual Int_t GetNTrainEvents ()
 
virtual void SetNTrainEvents (Int_t nevt)
 
virtual Int_t GetNValidEvents ()
 
virtual void SetArraySize (Int_t s=0)
 
virtual void FillArray (Int_t, Int_t, Float_t)
 
virtual void Fill (Int_t iev=0)
 
virtual Float_t * GetInputAdr ()
 
virtual void SetInput (Float_t v, Int_t i)
 
virtual Int_t GetNInput ()
 
virtual Int_t GetNOutput ()
 
virtual Float_t GetOutput (Int_t unit=0)
 
virtual Float_t * GetOutputAdr ()
 
virtual Float_t * GetTeachAdr ()
 
virtual void SetTeach (Float_t v, Int_t i)
 
virtual void fillArrayOut (Float_t v, Int_t i, Int_t l)
 
virtual Double_t GoThrough ()
 
virtual Float_t GetSumO ()
 
void PrintTrain ()
 
virtual Double_t Valid ()
 
virtual void TrainNCycles (Int_t nCycles=10)
 
virtual Int_t GetNWeights ()
 
virtual Double_t ApplyWeights (Float_t *, Float_t *)
 

Protected Member Functions

virtual Double_t Sigmoide (Double_t x)
 
virtual Double_t SigPrim (Double_t x)
 

Protected Attributes

StPmdDiscriminatorMakerm_DiscMaker
 

Detailed Description

Definition at line 54 of file StPmdNeuNet.h.

Member Function Documentation

Double_t StPmdNeuNet::ApplyWeights ( Float_t *  Teach,
Float_t *  Value 
)
virtual

one loop on internal events = one cycle. takes each event from internal array in an order fixed by an array ( fEventsList ). It is necessary to call the method Mix() before each call to this function in order to change the presentation order. The learning is done by this function. The private variable fNTrainCycles is incremented.

Definition at line 771 of file StPmdNeuNet.cxx.

void StPmdNeuNet::Export ( const Text_t *  fileName = "exportNN.dat")
virtual

Put the structure in a file WARNING : the weights and biases are stored with 4 digits in decimal part. Learning parameters are not stored

Definition at line 564 of file StPmdNeuNet.cxx.

void StPmdNeuNet::Import ( const Text_t *  fileName = "exportNN.dat")
virtual

Get the structure from a file WARNING : the weights and biases are stored with 4 digits in decimal part. Learning parameteres are not stored.

Definition at line 606 of file StPmdNeuNet.cxx.

void StPmdNeuNet::Init ( )
virtual

initialisation of biases and weights. the init parameters can be changed by : SetInitParam(Float_t lowerInitWeight, Float_t upperInitWeight) The default is -1 and 1

Definition at line 271 of file StPmdNeuNet.cxx.

void StPmdNeuNet::Mix ( )
virtual

mix the events before learning. VERY IMPORTANT. is has to be used before TrainOneCycle() , IT IS NOT used by TrainOneCycle() , you have to do the call yourself

Definition at line 656 of file StPmdNeuNet.cxx.

Referenced by TrainNCycles().

void StPmdNeuNet::SetLearnParam ( Double_t  learnParam = 0.2,
Double_t  fse = 0.,
Double_t  mu = 0. 
)
virtual

Sets the learning parameters : the main learning parameter is around 0.2 (in ]0,1]) fse is for flat spot elimination, with values in [0,0.25], often 0.1 mu is for backprop momentum, values in [0,1]

Definition at line 222 of file StPmdNeuNet.cxx.

void StPmdNeuNet::TrainNCycles ( Int_t  nCycles = 10)
virtual

method to train on N cycles, with mixing and plot of errors on the controller conte.

Definition at line 540 of file StPmdNeuNet.cxx.

References Mix(), TrainOneCycle(), and Valid().

Double_t StPmdNeuNet::TrainOneCycle ( )
virtual

one loop on internal events = one cycle. takes each event from internal array in an order fixed by an array ( fEventsList ). It is necessary to call the method Mix() before each call to this function in order to change the presentation order. The learning is done by this function. The private variable fNTrainCycles is incremented.

Definition at line 477 of file StPmdNeuNet.cxx.

Referenced by TrainNCycles().

Double_t StPmdNeuNet::Valid ( )
virtual

one loop on valid events. takes each event from validation tree. the events are passed trough the kernel, and a mean output error is computed.

Definition at line 518 of file StPmdNeuNet.cxx.

Referenced by TrainNCycles().


The documentation for this class was generated from the following files: