Class UnifiedDistanceMatrix
- java.lang.Object
-
- org.apache.commons.math3.ml.neuralnet.twod.util.UnifiedDistanceMatrix
-
- All Implemented Interfaces:
MapVisualization
public class UnifiedDistanceMatrix extends java.lang.Object implements MapVisualization
U-Matrix visualization of high-dimensional data projection.- Since:
- 3.6
-
-
Field Summary
Fields Modifier and Type Field Description private DistanceMeasure
distance
Distance.private boolean
individualDistances
Whether to show distance between each pair of neighbouring units.
-
Constructor Summary
Constructors Constructor Description UnifiedDistanceMatrix(boolean individualDistances, DistanceMeasure distance)
Simple constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private double[][]
averageDistances(NeuronSquareMesh2D map)
Computes the distances between a unit of the map and its neighbours.double[][]
computeImage(NeuronSquareMesh2D map)
Creates an image of themap
.private double[][]
individualDistances(NeuronSquareMesh2D map)
Computes the distances between a unit of the map and its neighbours.
-
-
-
Field Detail
-
individualDistances
private final boolean individualDistances
Whether to show distance between each pair of neighbouring units.
-
distance
private final DistanceMeasure distance
Distance.
-
-
Constructor Detail
-
UnifiedDistanceMatrix
public UnifiedDistanceMatrix(boolean individualDistances, DistanceMeasure distance)
Simple constructor.- Parameters:
individualDistances
- Iftrue
, the 8 individual inter-units distances will becomputed
. They will be stored in additional pixels around each of the original units of the 2D-map. The additional pixels that lie along a "diagonal" are shared by two pairs of units: their value will be set to the average distance between the units belonging to each of the pairs. The value zero will be stored in the pixel corresponding to the location of a unit of the 2D-map.
Iffalse
, only the average distance between a unit and all its neighbours will be computed (and stored in the pixel corresponding to that unit of the 2D-map). In that case, the number of neighbours taken into account depends on the network'sneighbourhood type
.distance
- Distance.
-
-
Method Detail
-
computeImage
public double[][] computeImage(NeuronSquareMesh2D map)
Creates an image of themap
.- Specified by:
computeImage
in interfaceMapVisualization
- Parameters:
map
- Map.- Returns:
- a 2D-array (in row major order) representing the property.
-
individualDistances
private double[][] individualDistances(NeuronSquareMesh2D map)
Computes the distances between a unit of the map and its neighbours. The image will contain more pixels than the number of neurons in the givenmap
because each neuron has 8 neighbours. The value zero will be stored in the pixels corresponding to the location of a map unit.- Parameters:
map
- Map.- Returns:
- an image representing the individual distances.
-
averageDistances
private double[][] averageDistances(NeuronSquareMesh2D map)
Computes the distances between a unit of the map and its neighbours.- Parameters:
map
- Map.- Returns:
- an image representing the average distances.
-
-