PARTONS/NumA++  
Numerical Analysis C++ routines
Public Member Functions | Private Member Functions | Private Attributes | List of all members
NumA::NeuralNetwork Class Reference

Public Member Functions

 NeuralNetwork ()
 
 NeuralNetwork (unsigned int nIn, unsigned int nOut, const std::vector< unsigned int > &perceptronLayers, ActivationFunctionType::Type hiddenActivationFunctionType, CombinationFunctionType::Type hiddenCombinationFunctionType, ActivationFunctionType::Type outputActivationFunctionType, CombinationFunctionType::Type outputCombinationFunctionType, ScalingFunctionType::Type scalingFunctionType)
 
 NeuralNetwork (const NeuralNetwork &other)
 
virtual ~NeuralNetwork ()
 
virtual NeuralNetworkclone () const
 
virtual std::string toString () const
 
Data evaluate (const Data &input) const
 
Data evaluateForOnePoint (const Data &input, unsigned int iPoint) const
 
void setScalingParameters (const Data &input, const Data &output) const
 
void train (const Data &input, const Data &output, TrainingAlgorithmType::Type trainingAlgorithmType, TrainingFunctionType::Type trainingFunctionType, const std::vector< double > &parameters)
 
const std::vector< NeuralNetworkCell * > & getNeuralNetworkCells () const
 
const std::vector< NeuralNetworkLayer * > & getNeuralNetworkLayers () const
 
const std::vector< NeuralNetworkNeuron * > & getNeuralNetworkNeurons () const
 
unsigned int getNIn () const
 
unsigned int getNOut () const
 

Private Member Functions

void connectLayersOneToOne (NeuralNetworkLayer *const layerIn, NeuralNetworkLayer *const layerOut, bool fixNeurons)
 
void connectLayersPermutive (NeuralNetworkLayer *const layerIn, NeuralNetworkLayer *const layerOut, bool fixNeurons)
 
void connectTwoCellsByNeuron (NeuralNetworkCell *const cell1, NeuralNetworkCell *const cell2, bool fixNeuron)
 
void checkConsistency () const
 

Private Attributes

unsigned int m_nIn
 
unsigned int m_nOut
 
std::vector< NeuralNetworkCell * > m_neuralNetworkCells
 
std::vector< NeuralNetworkNeuron * > m_neuralNetworkNeurons
 
std::vector< NeuralNetworkLayer * > m_neuralNetworkLayers
 

Constructor & Destructor Documentation

◆ NeuralNetwork() [1/3]

NumA::NeuralNetwork::NeuralNetwork ( )

◆ NeuralNetwork() [2/3]

NumA::NeuralNetwork::NeuralNetwork ( unsigned int  nIn,
unsigned int  nOut,
const std::vector< unsigned int > &  perceptronLayers,
ActivationFunctionType::Type  hiddenActivationFunctionType,
CombinationFunctionType::Type  hiddenCombinationFunctionType,
ActivationFunctionType::Type  outputActivationFunctionType,
CombinationFunctionType::Type  outputCombinationFunctionType,
ScalingFunctionType::Type  scalingFunctionType 
)

◆ NeuralNetwork() [3/3]

NumA::NeuralNetwork::NeuralNetwork ( const NeuralNetwork other)

◆ ~NeuralNetwork()

NumA::NeuralNetwork::~NeuralNetwork ( )
virtual

Member Function Documentation

◆ checkConsistency()

void NumA::NeuralNetwork::checkConsistency ( ) const
private

◆ clone()

NeuralNetwork * NumA::NeuralNetwork::clone ( ) const
virtual

◆ connectLayersOneToOne()

void NumA::NeuralNetwork::connectLayersOneToOne ( NeuralNetworkLayer *const  layerIn,
NeuralNetworkLayer *const  layerOut,
bool  fixNeurons 
)
private

◆ connectLayersPermutive()

void NumA::NeuralNetwork::connectLayersPermutive ( NeuralNetworkLayer *const  layerIn,
NeuralNetworkLayer *const  layerOut,
bool  fixNeurons 
)
private

◆ connectTwoCellsByNeuron()

void NumA::NeuralNetwork::connectTwoCellsByNeuron ( NeuralNetworkCell *const  cell1,
NeuralNetworkCell *const  cell2,
bool  fixNeuron 
)
private

◆ evaluate()

Data NumA::NeuralNetwork::evaluate ( const Data input) const

◆ evaluateForOnePoint()

Data NumA::NeuralNetwork::evaluateForOnePoint ( const Data input,
unsigned int  iPoint 
) const

◆ getNeuralNetworkCells()

const std::vector< NeuralNetworkCell * > & NumA::NeuralNetwork::getNeuralNetworkCells ( ) const

◆ getNeuralNetworkLayers()

const std::vector< NeuralNetworkLayer * > & NumA::NeuralNetwork::getNeuralNetworkLayers ( ) const

◆ getNeuralNetworkNeurons()

const std::vector< NeuralNetworkNeuron * > & NumA::NeuralNetwork::getNeuralNetworkNeurons ( ) const

◆ getNIn()

unsigned int NumA::NeuralNetwork::getNIn ( ) const

◆ getNOut()

unsigned int NumA::NeuralNetwork::getNOut ( ) const

◆ setScalingParameters()

void NumA::NeuralNetwork::setScalingParameters ( const Data input,
const Data output 
) const

◆ toString()

std::string NumA::NeuralNetwork::toString ( ) const
virtual

◆ train()

void NumA::NeuralNetwork::train ( const Data input,
const Data output,
TrainingAlgorithmType::Type  trainingAlgorithmType,
TrainingFunctionType::Type  trainingFunctionType,
const std::vector< double > &  parameters 
)

Member Data Documentation

◆ m_neuralNetworkCells

std::vector<NeuralNetworkCell*> NumA::NeuralNetwork::m_neuralNetworkCells
private

◆ m_neuralNetworkLayers

std::vector<NeuralNetworkLayer*> NumA::NeuralNetwork::m_neuralNetworkLayers
private

◆ m_neuralNetworkNeurons

std::vector<NeuralNetworkNeuron*> NumA::NeuralNetwork::m_neuralNetworkNeurons
private

◆ m_nIn

unsigned int NumA::NeuralNetwork::m_nIn
private

◆ m_nOut

unsigned int NumA::NeuralNetwork::m_nOut
private

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