|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectsimbad.piconode.core.node.Node
simbad.piconode.core.node.ConnectedNode
simbad.piconode.core.node.ModularNode
simbad.piconode.core.node.Module
simbad.piconode.core.node.Network
simbad.piconode.core.node.NeuralNetwork
simbad.piconode.core.node.SelfOrganizingMap
public class SelfOrganizingMap
This class implement a simple 2D "Kohonen" Self Organizing Map. see tutorials.
Field Summary | |
---|---|
private int |
_BMUindex
|
private int |
_dx
|
private int |
_dy
|
private double |
_lambdaTimeConstant
|
double |
_learningRate
|
private double |
_mapRadius
|
private double |
_startLearningRate
|
private int |
_steps
|
private int |
_totalSteps
|
Fields inherited from class simbad.piconode.core.node.NeuralNetwork |
---|
_activationFunctionForArcsFromBiasNeuron, _allNeuronsUnorderedList, _biasArcList, _biasNeuron, _containsBiasNeuron, _init, _inputNeuronsList, _outputNeuronsList |
Fields inherited from class simbad.piconode.core.node.Network |
---|
_arcList, _nodeList |
Fields inherited from class simbad.piconode.core.node.ConnectedNode |
---|
_incomingArcsList, _outgoingArcsList |
Fields inherited from class simbad.piconode.core.node.Node |
---|
_name, nGene |
Constructor Summary | |
---|---|
SelfOrganizingMap()
create a new network (no bias neuron for SOM). |
Method Summary | |
---|---|
int |
findBMU(double[] __inputValues)
find the best matching unit ("BMU") wrt. |
int |
getBMU()
return the last Best Matching Unit ("BMU") found Note : this method does not iterate the SOM! -- see findBMU(intputValues) method for iteration This method may be useful for debug or demo purpose (e.g. |
int |
getInputSize()
return the number of inputs -- symply calls with the getInputNeuronListSize method ( methods are synonyms ) |
double |
getLambdaTimeConstant()
|
double |
getMapRadius()
|
SOMoutputNeuron |
getOutputNeuronAt(int __x,
int __y)
|
double[] |
getOutputNeuronValues(int __x,
int __y)
|
int |
getTotalSteps()
|
void |
initNetwork()
Perform initialization of the network. |
void |
initNetwork(int __inputNb,
int __dx,
int __dy,
double __startLearningRate,
int __totalSteps)
Perform the full creation and initialization of the network using the parameters and set the radius-related parameters (size of BMU neighbourhood to be updated and decreasing factor for the radius over time). |
static void |
main(java.lang.String[] args)
Quick test -- for a more "illustrative" test, please refer to Tutorial_5 |
void |
registerNode()
A Self Organizing Map contains only input and output nodes. |
void |
setLambdaTimeConstant(double __lambda)
|
void |
setMapRadius(double __mapRadius)
|
void |
step()
perform one iteration step using input data from incoming nodes if any -- arity must be correct |
void |
step(java.util.ArrayList __inputValues)
compute output values from input values (i.e. |
void |
step(double[] __inputValues)
compute output values from input values (i.e. |
Methods inherited from class simbad.piconode.core.node.Network |
---|
getArcAt, getArcListSize, updateGenotype |
Methods inherited from class simbad.piconode.core.node.Module |
---|
getInputRegister, getInputRegisterSize, getOldOutputRegister, getOldOutputRegisterSize, getOutputRegister, getOutputRegisterSize, setInputRegister, setInputRegisterSize, setOldOutputRegister, setOldOutputRegisterSize, setOutputRegister, setOutputRegisterSize |
Methods inherited from class simbad.piconode.core.node.ModularNode |
---|
isUpdated, setUpdated |
Methods inherited from class simbad.piconode.core.node.ConnectedNode |
---|
addIncomingArc, addOutgoingArc, getIncomingArcAt, getIncomingArcsList, getIncomingArcsListSize, getOutgoingArcAt, getOutgoingArcsList, getOutgoingArcsListSize |
Methods inherited from class simbad.piconode.core.node.Node |
---|
getName, getNGene, setName, setNGene |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private double _mapRadius
private double _lambdaTimeConstant
private double _startLearningRate
public double _learningRate
private int _steps
private int _totalSteps
private int _BMUindex
private int _dx
private int _dy
Constructor Detail |
---|
public SelfOrganizingMap()
Method Detail |
---|
public void initNetwork()
public void initNetwork(int __inputNb, int __dx, int __dy, double __startLearningRate, int __totalSteps)
public void step(double[] __inputValues)
__inputValuesList
- public void step()
step
in class Node
__valuesList
- public void step(java.util.ArrayList __inputValues)
step
in class Module
__inputValuesList
- public int findBMU(double[] __inputValues)
__inputValues
- public void registerNode()
public double getMapRadius()
public void setMapRadius(double __mapRadius)
public int getBMU()
public int getTotalSteps()
public void setLambdaTimeConstant(double __lambda)
public double getLambdaTimeConstant()
public double[] getOutputNeuronValues(int __x, int __y)
public SOMoutputNeuron getOutputNeuronAt(int __x, int __y)
public int getInputSize()
public static void main(java.lang.String[] args)
args
-
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |