at.tuwien.ifs.somtoolbox.layers.metrics
Class MnemonicSOMMetric
java.lang.Object
at.tuwien.ifs.somtoolbox.layers.metrics.AbstractMetric
at.tuwien.ifs.somtoolbox.layers.metrics.L2Metric
at.tuwien.ifs.somtoolbox.layers.metrics.MnemonicSOMMetric
- All Implemented Interfaces:
- DistanceMetric, Comparable<DistanceMetric>
public class MnemonicSOMMetric
- extends L2Metric
A metric for mnemonic SOMs. The metric is basically a Manhattan/L1 Metric, but takes into consideration that not all
paths between two units might be possible (as the grid of the Mnemonic SOM might be sparse). For performance reasons,
a distance matrix is pre-calculated.
- Version:
- $Id: MnemonicSOMMetric.java 3586 2010-05-21 10:34:19Z mayer $
- Author:
- Rudolf Mayer
Methods inherited from class at.tuwien.ifs.somtoolbox.layers.metrics.AbstractMetric |
checkDimensions, checkDimensions, compareTo, distance, distance, distance, distance, distance, distance, distance, instantiate, instantiateNice, meanVector, performanceTest, setMetricParams, transformValue, transformVector |
distanceMatrix
int[][][][] distanceMatrix
distanceMatrix_
Integer[][][][] distanceMatrix_
MnemonicSOMMetric
public MnemonicSOMMetric(Unit[][] units)
distance
public double distance(InputDatum datum1,
InputDatum datum2)
throws MetricException
- Description copied from interface:
DistanceMetric
- Calculates the distance between two vectors provided by argument
datum
and datum2
. A
MetricException
is thrown, if the dimensionalities of the two vectors differ.
- Specified by:
distance
in interface DistanceMetric
- Overrides:
distance
in class AbstractMetric
- Parameters:
datum1
- first input datum.datum2
- second input datum.
- Returns:
- the distance between
datum
and vector
.
- Throws:
MetricException
- if the dimensionalities of the two vectors differ.- See Also:
DistanceMetric.distance(double[], double[])
countDistances
public void countDistances(int distanceFromStart,
Unit startUnit,
Unit currentUnit,
Unit[][] units)