Mapper using a self-organizing map (SOM) for dimensionality reduction.

This mapper provides a simple, but pretty fast implementation of a
self-organizing map using an unsupervised training algorithm. It performs a
ND -> 2D mapping, which can for, example, be used for visualization of
high-dimensional data.

This SOM implementation uses squared Euclidean distance to determine
the best matching Kohonen unit and a Gaussian neighborhood influence
kernel.

Notes

Available conditional attributes:

calling_time+: Time (in seconds) it took to call the node

raw_results: Computed results before invoking postproc. Stored only if postproc is not None.

trained_dataset: The dataset it has been trained on

trained_nsamples+: Number of samples it has been trained on

trained_targets+: Set of unique targets (or any other space) it has been trained on (if present in the dataset trained on)

Shape of the internal Kohonen layer. Currently, only 2D Kohonen
layers are supported, although the length of an axis might be set
to 1.

niter : int

Number of iteration during network training.

learning_rate : float

Initial learning rate, which will continuously decreased during
network training.

iradius : float or None

Initial radius of the Gaussian neighborhood kernel radius, which
will continuously decreased during network training. If None
(default) the radius is set equal to the longest edge of the
Kohonen layer.

distance_metric: callable or None

Kernel distance metric between elements in Kohonen layer. If None
then Euclidean distance is used. Otherwise it should be a
callable that accepts two input arguments x and y and returns
the distance d through d=distance_metric(x,y)

initialization_func: callable or None

Initialization function to set self._K, that should take one
argument with training samples and return an numpy array. If None,
then values in the returned array are taken from a standard normal
distribution.

enable_ca : None or list of str

Names of the conditional attributes which should be enabled in addition
to the default ones