Neuron Net
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
CNeuronProof Class Reference

Class of pooling layer. More...

Inheritance diagram for CNeuronProof:
CNeuronBase CNeuronConv CNeuronLSTM

Public Member Functions

 CNeuronProof (void)
 Constructor. More...
 
 ~CNeuronProof (void)
 Destructor. More...
 
virtual bool Init (uint numOutputs, uint myIndex, int window, int step, int units_count, ENUM_OPTIMIZATION optimization_type)
 Method of initialization class. More...
 
virtual CLayergetOutputLayer (void)
 Method for getting a pointer to the resulting neural layer. Not used in fully connected neural networks. More...
 
virtual bool calcInputGradients (CLayer *prevLayer)
 Method to transfer gradients to previous layer. More...
 
virtual bool calcInputGradients (CNeuronBase *prevNeuron, uint index)
 Method to transfer gradients to neuron in previous layer. More...
 
virtual bool Save (int const file_handle)
 Save method. More...
 
virtual bool Load (int const file_handle)
 Load method. More...
 
virtual int Type (void) const
 Identificator of class. More...
 
virtual bool feedForward (CObject *&SourceObject)
 Dispatch method for defining the subroutine for Feed Forward process. More...
 
virtual bool calcHiddenGradients (CObject *&TargetObject)
 Dispatch method for defining the subroutine for transfer gradient to previous layer. More...
 
virtual bool updateInputWeights (CObject *&SourceObject)
 Dispatch method for defining the subroutine for updating weights. More...
 
virtual bool Init (uint numOutputs, uint myIndex, ENUM_OPTIMIZATION optimization_type)
 Method of initialization class. More...
 
virtual void SetActivationFunction (ENUM_ACTIVATION value)
 Set the type of activation function (ENUM_ACTIVATION) More...
 
virtual void setOutputVal (double val)
 Set the output value. More...
 
virtual double getOutputVal ()
 Return result of feed forward operations. More...
 
virtual double getPrevVal ()
 Return result of feed forward operations at previous iteration. More...
 
virtual void setGradient (double val)
 Set gradient value to neuron. More...
 
virtual double getGradient ()
 Return gradient of neuron. More...
 
virtual CArrayCongetConnections ()
 Method to get access to array of connections. More...
 
virtual double activationFunctionDerivative (double x)
 Calculate derivative of activation function. More...
 
virtual double SigmoidFunctionDerivative (double x)
 Calculate derivative of Sigmoid function. More...
 
virtual double TanhFunctionDerivative (double x)
 Calculate derivative of \(tanh(x)\). More...
 

Static Public Attributes

static double alpha =0.8
 Multiplier to momentum in SGD optimization. More...
 

Protected Member Functions

virtual bool feedForward (CLayer *prevLayer)
 Feed Forward method. More...
 
virtual bool calcHiddenGradients (CLayer *&nextLayer)
 Method to transfer gradient to previous layer. More...
 
virtual bool updateInputWeights (CLayer *&prevLayer)
 Method for updating weights. More...
 
virtual double activationFunction (double x)
 Method to calculate activation function. More...
 
virtual double SigmoidFunction (double x)
 Calculating Sigmoid \(\frac{1}{1+e^x}\). More...
 
virtual double TanhFunction (double x)
 Calculating \(tanh(x)\). More...
 

Protected Attributes

CLayerOutputLayer
 Layer of output data. Used for connection with next layer. More...
 
int iWindow
 Input window size. More...
 
int iStep
 Size of step. More...
 
double outputVal
 Output value. More...
 
double prevVal
 Previous output value. More...
 
uint m_myIndex
 Index of neuron in layer. More...
 
double gradient
 Current gradient of neuron. More...
 
CArrayConConnections
 Array of connections with neurons in next layer. More...
 
ENUM_ACTIVATION activation
 Activation type (ENUM_ACTIVATION) More...
 
ENUM_OPTIMIZATION optimization
 Optimization method (ENUM_OPTIMIZATION) More...
 
int t
 Count of iterations. More...
 

Detailed Description

Class of pooling layer.

Detailed description on the link.

Definition at line 800 of file NeuroNet.mqh.

Constructor & Destructor Documentation

◆ CNeuronProof()

CNeuronProof::CNeuronProof ( void  )
inline

Constructor.

Definition at line 811 of file NeuroNet.mqh.

◆ ~CNeuronProof()

CNeuronProof::~CNeuronProof ( void  )

Destructor.

Definition at line 1097 of file NeuroNet.mqh.

Member Function Documentation

◆ activationFunction()

double CNeuronBase::activationFunction ( double  x)
protectedvirtualinherited

Method to calculate activation function.

Parameters
xInput data.
Returns
Result of activation function.

Reimplemented in CNeuronConv.

Definition at line 2656 of file NeuroNet.mqh.

◆ activationFunctionDerivative()

double CNeuronBase::activationFunctionDerivative ( double  x)
virtualinherited

Calculate derivative of activation function.

Parameters
[in]xInput data
Returns
Derivative

Reimplemented in CNeuronConv.

Definition at line 2673 of file NeuroNet.mqh.

◆ calcHiddenGradients() [1/2]

bool CNeuronProof::calcHiddenGradients ( CLayer *&  nextLayer)
protectedvirtual

Method to transfer gradient to previous layer.

Parameters
nextLayerPointer to next layer.

Reimplemented from CNeuronBase.

Reimplemented in CNeuronLSTM, and CNeuronConv.

Definition at line 1132 of file NeuroNet.mqh.

◆ calcHiddenGradients() [2/2]

bool CNeuronBase::calcHiddenGradients ( CObject *&  TargetObject)
virtualinherited

Dispatch method for defining the subroutine for transfer gradient to previous layer.

Parameters
TargetObjectPointer to next layer.

Definition at line 952 of file NeuroNet.mqh.

◆ calcInputGradients() [1/2]

bool CNeuronProof::calcInputGradients ( CLayer prevLayer)
virtual

Method to transfer gradients to previous layer.

Parameters
[in]prevLayerPointer to previous layer.

Reimplemented in CNeuronLSTM, and CNeuronConv.

Definition at line 1153 of file NeuroNet.mqh.

◆ calcInputGradients() [2/2]

bool CNeuronProof::calcInputGradients ( CNeuronBase prevNeuron,
uint  index 
)
virtual

Method to transfer gradients to neuron in previous layer.

Parameters
[in]prevNeuronPointer to neuron.
[in]indexIndex of neuron in previous layer

Reimplemented in CNeuronLSTM, and CNeuronConv.

Definition at line 1194 of file NeuroNet.mqh.

◆ feedForward() [1/2]

bool CNeuronProof::feedForward ( CLayer prevLayer)
protectedvirtual

Feed Forward method.

Parameters
prevLayerPointer to previos layer.

Reimplemented from CNeuronBase.

Reimplemented in CNeuronLSTM, and CNeuronConv.

Definition at line 1104 of file NeuroNet.mqh.

◆ feedForward() [2/2]

bool CNeuronBase::feedForward ( CObject *&  SourceObject)
virtualinherited

Dispatch method for defining the subroutine for Feed Forward process.

Parameters
SourceObjectPointer to previos layer.

Definition at line 852 of file NeuroNet.mqh.

◆ getConnections()

virtual CArrayCon* CNeuronBase::getConnections ( )
inlinevirtualinherited

Method to get access to array of connections.

Returns
Pointer to connections array

Definition at line 436 of file NeuroNet.mqh.

◆ getGradient()

virtual double CNeuronBase::getGradient ( )
inlinevirtualinherited

Return gradient of neuron.

Returns
Gradient

Definition at line 435 of file NeuroNet.mqh.

◆ getOutputLayer()

virtual CLayer* CNeuronProof::getOutputLayer ( void  )
inlinevirtual

Method for getting a pointer to the resulting neural layer. Not used in fully connected neural networks.

Returns
Pointer to layer.

Reimplemented from CNeuronBase.

Reimplemented in CNeuronLSTM.

Definition at line 816 of file NeuroNet.mqh.

◆ getOutputVal()

virtual double CNeuronBase::getOutputVal ( )
inlinevirtualinherited

Return result of feed forward operations.

Returns
Output value

Definition at line 432 of file NeuroNet.mqh.

◆ getPrevVal()

virtual double CNeuronBase::getPrevVal ( )
inlinevirtualinherited

Return result of feed forward operations at previous iteration.

Returns
Previous output value

Definition at line 433 of file NeuroNet.mqh.

◆ Init() [1/2]

bool CNeuronBase::Init ( uint  numOutputs,
uint  myIndex,
ENUM_OPTIMIZATION  optimization_type 
)
virtualinherited

Method of initialization class.

Parameters
numOutputsNumber of connections to next layer.
myIndexIndex of neuron in layer.
optimization_typeOptimization type (ENUM_OPTIMIZATION)
Returns
Boolen result of operations.

Definition at line 481 of file NeuroNet.mqh.

◆ Init() [2/2]

bool CNeuronProof::Init ( uint  numOutputs,
uint  myIndex,
int  window,
int  step,
int  units_count,
ENUM_OPTIMIZATION  optimization_type 
)
virtual

Method of initialization class.

Parameters
numOutputsNumber of connections to next layer.
myIndexIndex of neuron in layer.
windowSize of input window
stepStep size.
units_countNumberof neurons.
optimization_typeOptimization type (ENUM_OPTIMIZATION)
Returns
Boolen result of operations.

Reimplemented in CNeuronLSTM.

Definition at line 1069 of file NeuroNet.mqh.

◆ Load()

bool CNeuronProof::Load ( int const  file_handle)
virtual

Load method.

Parameters
[in]file_handlehandle of file
Returns
logical result of operation

Reimplemented from CNeuronBase.

Reimplemented in CNeuronLSTM, and CNeuronConv.

Definition at line 2080 of file NeuroNet.mqh.

◆ Save()

bool CNeuronProof::Save ( int const  file_handle)
virtual

Save method.

Parameters
[in]file_handlehandle of file
Returns
logical result of operation

Reimplemented from CNeuronBase.

Reimplemented in CNeuronLSTM, and CNeuronConv.

Definition at line 2066 of file NeuroNet.mqh.

◆ SetActivationFunction()

virtual void CNeuronBase::SetActivationFunction ( ENUM_ACTIVATION  value)
inlinevirtualinherited

Set the type of activation function (ENUM_ACTIVATION)

Definition at line 426 of file NeuroNet.mqh.

◆ setGradient()

virtual void CNeuronBase::setGradient ( double  val)
inlinevirtualinherited

Set gradient value to neuron.

Definition at line 434 of file NeuroNet.mqh.

◆ setOutputVal()

virtual void CNeuronBase::setOutputVal ( double  val)
inlinevirtualinherited

Set the output value.

Definition at line 431 of file NeuroNet.mqh.

◆ SigmoidFunction()

virtual double CNeuronBase::SigmoidFunction ( double  x)
inlineprotectedvirtualinherited

Calculating Sigmoid \(\frac{1}{1+e^x}\).

Parameters
xInput data.
Returns
Result of calculation

Definition at line 419 of file NeuroNet.mqh.

◆ SigmoidFunctionDerivative()

virtual double CNeuronBase::SigmoidFunctionDerivative ( double  x)
inlinevirtualinherited

Calculate derivative of Sigmoid function.

Parameters
xInput data
Returns
Derivative

Definition at line 438 of file NeuroNet.mqh.

◆ TanhFunction()

virtual double CNeuronBase::TanhFunction ( double  x)
inlineprotectedvirtualinherited

Calculating \(tanh(x)\).

Parameters
xInput data.
Returns
Result of calculation

Definition at line 420 of file NeuroNet.mqh.

◆ TanhFunctionDerivative()

virtual double CNeuronBase::TanhFunctionDerivative ( double  x)
inlinevirtualinherited

Calculate derivative of \(tanh(x)\).

Parameters
xInput data
Returns
Derivative

Definition at line 439 of file NeuroNet.mqh.

◆ Type()

virtual int CNeuronProof::Type ( void  ) const
inlinevirtual

Identificator of class.

Returns
Type of class

Reimplemented from CNeuronBase.

Reimplemented in CNeuronLSTM, and CNeuronConv.

Definition at line 822 of file NeuroNet.mqh.

◆ updateInputWeights() [1/2]

virtual bool CNeuronBase::updateInputWeights ( CLayer *&  prevLayer)
inlineprotectedvirtualinherited

Method for updating weights.

Parameters
prevLayerPointer to previos layer.

Reimplemented in CNeuronLSTM, and CNeuronConv.

Definition at line 417 of file NeuroNet.mqh.

◆ updateInputWeights() [2/2]

bool CNeuronBase::updateInputWeights ( CObject *&  SourceObject)
virtualinherited

Dispatch method for defining the subroutine for updating weights.

Parameters
SourceObjectPointer to previos layer.

Definition at line 880 of file NeuroNet.mqh.

Member Data Documentation

◆ activation

ENUM_ACTIVATION CNeuronBase::activation
protectedinherited

Activation type (ENUM_ACTIVATION)

Definition at line 411 of file NeuroNet.mqh.

◆ alpha

double CNeuronBase::alpha =0.8
staticinherited

Multiplier to momentum in SGD optimization.

Definition at line 429 of file NeuroNet.mqh.

◆ Connections

CArrayCon* CNeuronBase::Connections
protectedinherited

Array of connections with neurons in next layer.

Definition at line 410 of file NeuroNet.mqh.

◆ gradient

double CNeuronBase::gradient
protectedinherited

Current gradient of neuron.

Definition at line 409 of file NeuroNet.mqh.

◆ iStep

int CNeuronProof::iStep
protected

Size of step.

Definition at line 805 of file NeuroNet.mqh.

◆ iWindow

int CNeuronProof::iWindow
protected

Input window size.

Definition at line 804 of file NeuroNet.mqh.

◆ m_myIndex

uint CNeuronBase::m_myIndex
protectedinherited

Index of neuron in layer.

Definition at line 408 of file NeuroNet.mqh.

◆ optimization

ENUM_OPTIMIZATION CNeuronBase::optimization
protectedinherited

Optimization method (ENUM_OPTIMIZATION)

Definition at line 412 of file NeuroNet.mqh.

◆ OutputLayer

CLayer* CNeuronProof::OutputLayer
protected

Layer of output data. Used for connection with next layer.

Definition at line 803 of file NeuroNet.mqh.

◆ outputVal

double CNeuronBase::outputVal
protectedinherited

Output value.

Definition at line 406 of file NeuroNet.mqh.

◆ prevVal

double CNeuronBase::prevVal
protectedinherited

Previous output value.

Definition at line 407 of file NeuroNet.mqh.

◆ t

int CNeuronBase::t
protectedinherited

Count of iterations.

Definition at line 413 of file NeuroNet.mqh.


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