Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

KohonenNetwork Class Reference

Todo: getOutput (&& getWin*) doesn't give anything sensible in this impl. More...

#include <Kohonen.h>

Inheritance diagram for KohonenNetwork:

Inheritance graph
[legend]
Collaboration diagram for KohonenNetwork:

Collaboration graph
[legend]
List of all members.

Public Types

enum  { INPUT_LAYER, OUTPUT_LAYER }

Public Member Functions

 KohonenNetwork (uint inputs, const Topology &topology, KohonenParameters &params, PublicValues &ctrl=defaultControl)
 default LP threshold

void train (TrainingSet &T, real terminatingLP=TERMINATING_LP)
 Train the net until learningParameter reaches given threshold.

void trainExample (const Vector &input)
 alternative to training via train. You can train one-by-one example directly, but should must call iterateTime() to control the dynamic

uint getWinnerOutput (const Vector &input)
 version of getOutput for Kohonen

uint getWinner () const
 version of getWinnerOutput based on the current state of network.

virtual Vector getOutput (const Vector &input)
 Warning - this raw output function doesn't give much sense!

const LayergetOutputLayer () const
virtual const char * getClassName () const
 For reflection.

virtual Vector getCluster (uint cluserNum) const
 Get vector representing the given cluster - input weights of given neuron.

virtual void save (const std::string &filename)
 Save the network structure to the given text file.

const TopologygetTopology () const

Static Public Attributes

const real MAX_OUTPUT
const real MIN_OUTPUT
const real TERMINATING_LP

Protected Member Functions

void connectLayers ()
void randomizeWeights ()
real getNBSize () const
real getLearningParam () const
void _setInput (const Vector &input)

Protected Attributes

InputLayer _inputLayer
Layer _outputLayer
const Topologytopology
KohonenParametersparameters
PublicValues & control
uint _winner
bool _winnerValid

Detailed Description

Todo: getOutput (&& getWin*) doesn't give anything sensible in this impl.

!!!!!!!!


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
INPUT_LAYER 
OUTPUT_LAYER 


Constructor & Destructor Documentation

KohonenNetwork uint  inputs,
const Topology topology,
KohonenParameters params,
PublicValues &  ctrl = defaultControl
 

default LP threshold


Member Function Documentation

void _setInput const Vector input  )  [protected]
 

void connectLayers  )  [protected]
 

virtual const char* getClassName  )  const [inline, virtual]
 

For reflection.

All sub-classes MUST implement this method, which should just return class name

Implements Network.

virtual Vector getCluster uint  cluserNum  )  const [virtual]
 

Get vector representing the given cluster - input weights of given neuron.

real getLearningParam  )  const [inline, protected]
 

Here is the call graph for this function:

real getNBSize  )  const [inline, protected]
 

Here is the call graph for this function:

virtual Vector getOutput const Vector input  )  [virtual]
 

Warning - this raw output function doesn't give much sense!

Implements Network.

const Layer& getOutputLayer  )  const [inline]
 

const Topology& getTopology  )  const [inline]
 

uint getWinner  )  const
 

version of getWinnerOutput based on the current state of network.

Reasonable to call only after previous get*Output

uint getWinnerOutput const Vector input  ) 
 

version of getOutput for Kohonen

Returns:
the winning neuron's index

void randomizeWeights  )  [protected]
 

virtual void save const std::string &  filename  )  [inline, virtual]
 

Save the network structure to the given text file.

The file format is quite simple and is commented.

Parameters:
filename Name of the file to save network information into

Implements Network.

void train TrainingSet T,
real  terminatingLP = TERMINATING_LP
 

Train the net until learningParameter reaches given threshold.

void trainExample const Vector input  ) 
 

alternative to training via train. You can train one-by-one example directly, but should must call iterateTime() to control the dynamic


Member Data Documentation

InputLayer _inputLayer [protected]
 

Layer _outputLayer [protected]
 

uint _winner [mutable, protected]
 

bool _winnerValid [mutable, protected]
 

PublicValues& control [protected]
 

const real MAX_OUTPUT [static]
 

const real MIN_OUTPUT [static]
 

KohonenParameters& parameters [protected]
 

const real TERMINATING_LP [static]
 

const Topology& topology [protected]
 


The documentation for this class was generated from the following file:
Generated on Fri Jun 18 13:19:04 2004 for Annie by doxygen 1.3.5