C# Класс xpidea.neuro.net.son.SelfOrganizingNetwork

Implements the Self Organizing Network (SON).
The basic Self-Organizing Network can be visualized as a sheet-like neural-network array , the cells (or nodes) of which become specifically tuned to various input signal patterns or classes of patterns in an orderly fashion. The learning process is competitive and unsupervised, meaning that no teacher is needed to define the correct output (or actually the cell into which the input is mapped) for an input. In the basic version, only one map node (winner) at a time is activated corresponding to each input. The locations of the responses in the array tend to become ordered in the learning process as if some meaningful nonlinear coordinate system for the different input features were being created over the network (Kohonen, 1995c).The SOM was developed by Prof. Teuvo Kohonen in the early 1980s. The first application area of the SOM was speech recognition, or perhaps more accurately, speech-to-text transformation. (Timo Honkela)
Наследование: xpidea.neuro.net.adaline.AdalineNetwork
Показать файл Открыть проект

Защищенные свойства (Protected)

Свойство Тип Описание
columsCount int
currentIteration long
currentNeighborhoodSize int
finalLearningRate double
initialLearningRate double
initialNeighborhoodSize int
kohonenLayer ].NeuroNode[
neighborhoodReduceInterval int
rowsCount int
trainingIterations long
winnigCol int
winnigRow int

Открытые методы

Метод Описание
Epoch ( int epoch ) : void

Overridden.Epoch - number of patterns that was exposed to a network during one training cycle.

Learn ( ) : void

Overridden.Teaches the network.

Load ( BinaryReader binaryReader ) : void

Overridden.Loads network data from the binary stream.

Run ( ) : void

Overridden.Runs the network.

Save ( BinaryWriter binaryWriter ) : void

Overridden.Stores network into to a binary stream.

SelfOrganizingNetwork ( ) : System

Constructs uninitialized instance of SON network. Used for persistance purposes.

SelfOrganizingNetwork ( int aInputNodesCount, int aRowCount, int aColCount, double aInitialLearningRate, double aFinalLearningRate, int aInitialNeighborhoodSize, int aNeighborhoodReduceInterval, long aTrainingIterationsCount ) : System

Constructs the network.

SelfOrganizingNetwork ( string fileName ) : System

Creates the network from a file.

Train ( PatternsCollection patterns ) : void

Overridden.Trains the network.

Защищенные методы

Метод Описание
CreateNetwork ( ) : void

Overridden.Constructs network topology.

GetInputNode ( int index ) : NeuroNode

Overridden.Retrieves the input node by its index.

GetInputNodesCount ( ) : int

Overridden.Returns number of nodes in input layer.

GetNetworkType ( ) : NeuralNetworkType

Overridden.Returns xpidea.neuro.net.NeuralNetworkType.nntSON for SON network.

GetNodeError ( ) : double

Overridden.Always returns 0. There is no output node.

GetOutPutNodesCount ( ) : int

Overridden.Number of nodes in output layer. Always return 0 since there are no nodes as its have an Kohonen layer.

GetOutputNode ( int index ) : NeuroNode

Overridden.Returns an output node by its index.

SetNodeError ( double value ) : void

Overridden.Doesn't do anything. There is no output node.

Описание методов

CreateNetwork() защищенный Метод

Overridden.Constructs network topology.
protected CreateNetwork ( ) : void
Результат void

Epoch() публичный Метод

Overridden.Epoch - number of patterns that was exposed to a network during one training cycle.
public Epoch ( int epoch ) : void
epoch int
Результат void

GetInputNode() защищенный Метод

Overridden.Retrieves the input node by its index.
protected GetInputNode ( int index ) : NeuroNode
index int Input node index.
Результат NeuroNode

GetInputNodesCount() защищенный Метод

Overridden.Returns number of nodes in input layer.
protected GetInputNodesCount ( ) : int
Результат int

GetNetworkType() защищенный Метод

Overridden.Returns xpidea.neuro.net.NeuralNetworkType.nntSON for SON network.
protected GetNetworkType ( ) : NeuralNetworkType
Результат NeuralNetworkType

GetNodeError() защищенный Метод

Overridden.Always returns 0. There is no output node.
protected GetNodeError ( ) : double
Результат double

GetOutPutNodesCount() защищенный Метод

Overridden.Number of nodes in output layer. Always return 0 since there are no nodes as its have an Kohonen layer.
protected GetOutPutNodesCount ( ) : int
Результат int

GetOutputNode() защищенный Метод

Overridden.Returns an output node by its index.
protected GetOutputNode ( int index ) : NeuroNode
index int Output node index.
Результат NeuroNode

Learn() публичный Метод

Overridden.Teaches the network.
public Learn ( ) : void
Результат void

Load() публичный Метод

Overridden.Loads network data from the binary stream.
public Load ( BinaryReader binaryReader ) : void
binaryReader System.IO.BinaryReader Binary stream reader.
Результат void

Run() публичный Метод

Overridden.Runs the network.
public Run ( ) : void
Результат void

Save() публичный Метод

Overridden.Stores network into to a binary stream.
public Save ( BinaryWriter binaryWriter ) : void
binaryWriter System.IO.BinaryWriter Binary stream writer.
Результат void

SelfOrganizingNetwork() публичный Метод

Constructs uninitialized instance of SON network. Used for persistance purposes.
public SelfOrganizingNetwork ( ) : System
Результат System

SelfOrganizingNetwork() публичный Метод

Constructs the network.
public SelfOrganizingNetwork ( int aInputNodesCount, int aRowCount, int aColCount, double aInitialLearningRate, double aFinalLearningRate, int aInitialNeighborhoodSize, int aNeighborhoodReduceInterval, long aTrainingIterationsCount ) : System
aInputNodesCount int Number of input nodes.
aRowCount int Number of rows in output layer.
aColCount int Number of colums in output layer.
aInitialLearningRate double Starting learning rate.
aFinalLearningRate double Ending learning rate.
aInitialNeighborhoodSize int Initial neighborhood size.
aNeighborhoodReduceInterval int Number of training iterations after neighborhood size will be reduced.
aTrainingIterationsCount long Number of training iterations.
Результат System

SelfOrganizingNetwork() публичный Метод

Creates the network from a file.
public SelfOrganizingNetwork ( string fileName ) : System
fileName string
Результат System

SetNodeError() защищенный Метод

Overridden.Doesn't do anything. There is no output node.
protected SetNodeError ( double value ) : void
value double Error value.
Результат void

Train() публичный Метод

Overridden.Trains the network.
public Train ( PatternsCollection patterns ) : void
patterns xpidea.neuro.net.patterns.PatternsCollection
Результат void

Описание свойств

columsCount защищенное свойство

Number of colums in output layer.
protected int columsCount
Результат int

currentIteration защищенное свойство

Current iteration.
protected long currentIteration
Результат long

currentNeighborhoodSize защищенное свойство

Current neighborhood size.
protected int currentNeighborhoodSize
Результат int

finalLearningRate защищенное свойство

Final learning rate.
protected double finalLearningRate
Результат double

initialLearningRate защищенное свойство

Initial learning rate.
protected double initialLearningRate
Результат double

initialNeighborhoodSize защищенное свойство

Initial neighborhood size.
protected int initialNeighborhoodSize
Результат int

kohonenLayer защищенное свойство

Represents the Kohonen layer as two-dimetional array of xpidea.neuro.net.NeuroNode.
protected NeuroNode[,] kohonenLayer
Результат ].NeuroNode[

neighborhoodReduceInterval защищенное свойство

Neighborhood reduce interval.
protected int neighborhoodReduceInterval
Результат int

rowsCount защищенное свойство

Number of rows in output layer.
protected int rowsCount
Результат int

trainingIterations защищенное свойство

Number of training iterations.
protected long trainingIterations
Результат long

winnigCol защищенное свойство

Winning column in output layer.
protected int winnigCol
Результат int

winnigRow защищенное свойство

Winning row in output layer.
protected int winnigRow
Результат int