org.apache.commons.math3.ml.neuralnet.twod

## Class NeuronSquareMesh2D

• java.lang.Object
• org.apache.commons.math3.ml.neuralnet.twod.NeuronSquareMesh2D
• ### Nested Class Summary

Nested Classes
Modifier and Type Class and Description
static class  NeuronSquareMesh2D.HorizontalDirection
Horizontal (along row) direction.
static class  NeuronSquareMesh2D.VerticalDirection
Vertical (along column) direction.
• ### Constructor Summary

Constructors
Constructor and Description
NeuronSquareMesh2D(int numRows, boolean wrapRowDim, int numCols, boolean wrapColDim, SquareNeighbourhood neighbourhoodType, FeatureInitializer[] featureInit)
Creates a two-dimensional network composed of square cells: Each neuron not located on the border of the mesh has four neurons linked to it.
• ### Method Summary

Methods
Modifier and Type Method and Description
NeuronSquareMesh2D copy()
Performs a deep copy of this instance.
Network getNetwork()
Retrieves the underlying network.
Neuron getNeuron(int i, int j)
Retrieves the neuron at location (i, j) in the map.
Neuron getNeuron(int row, int col, NeuronSquareMesh2D.HorizontalDirection alongRowDir, NeuronSquareMesh2D.VerticalDirection alongColDir)
Retrieves the neuron at (location[0], location[1]) in the map.
int getNumberOfColumns()
Gets the number of neurons in each column of this map.
int getNumberOfRows()
Gets the number of neurons in each row of this map.
Iterator<Neuron> iterator()
• ### Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
• ### Constructor Detail

• #### NeuronSquareMesh2D

public NeuronSquareMesh2D(int numRows,
boolean wrapRowDim,
int numCols,
boolean wrapColDim,
SquareNeighbourhood neighbourhoodType,
FeatureInitializer[] featureInit)
Creates a two-dimensional network composed of square cells: Each neuron not located on the border of the mesh has four neurons linked to it.
The topology of the network can also be a cylinder (if one of the dimensions is wrapped) or a torus (if both dimensions are wrapped).
Parameters:
numRows - Number of neurons in the first dimension.
wrapRowDim - Whether to wrap the first dimension (i.e the first and last neurons will be linked together).
numCols - Number of neurons in the second dimension.
wrapColDim - Whether to wrap the second dimension (i.e the first and last neurons will be linked together).
neighbourhoodType - Neighbourhood type.
featureInit - Array of functions that will initialize the corresponding element of the features set of each newly created neuron. In particular, the size of this array defines the size of feature set.
Throws:
NumberIsTooSmallException - if numRows < 2 or numCols < 2.
• ### Method Detail

• #### copy

public NeuronSquareMesh2D copy()
Performs a deep copy of this instance. Upon return, the copied and original instances will be independent: Updating one will not affect the other.
Returns:
a new instance with the same state as this instance.
Since:
3.6
• #### iterator

public Iterator<Neuron> iterator()
Specified by:
iterator in interface Iterable<Neuron>
Since:
3.6
• #### getNetwork

public Network getNetwork()
Retrieves the underlying network. A reference is returned (enabling, for example, the network to be trained). This also implies that calling methods that modify the Network topology may cause this class to become inconsistent.
Returns:
the network.
• #### getNumberOfRows

public int getNumberOfRows()
Gets the number of neurons in each row of this map.
Returns:
the number of rows.
• #### getNumberOfColumns

public int getNumberOfColumns()
Gets the number of neurons in each column of this map.
Returns:
the number of column.
• #### getNeuron

public Neuron getNeuron(int i,
int j)
Retrieves the neuron at location (i, j) in the map. The neuron at position (0, 0) is located at the upper-left corner of the map.
Parameters:
i - Row index.
j - Column index.
Returns:
the neuron at (i, j).
Throws:
OutOfRangeException - if i or j is out of range.
getNeuron(int,int,HorizontalDirection,VerticalDirection)
• #### getNeuron

public Neuron getNeuron(int row,
int col,
NeuronSquareMesh2D.HorizontalDirection alongRowDir,
NeuronSquareMesh2D.VerticalDirection alongColDir)
Retrieves the neuron at (location[0], location[1]) in the map. The neuron at position (0, 0) is located at the upper-left corner of the map.
Parameters:
row - Row index.
col - Column index.
alongRowDir - Direction along the given row (i.e. an offset will be added to the given column index.
alongColDir - Direction along the given col (i.e. an offset will be added to the given row index.
Returns:
the neuron at the requested location, or null if the location is not on the map.
getNeuron(int,int)