SuSi: Supervised Self-Organizing Maps for Regression and Classification
  in Python
  In many research fields, the sizes of the existing datasets vary widely.
Hence, there is a need for machine learning techniques which are well-suited
for these different datasets. One possible technique is the self-organizing map
(SOM), a type of artificial neural network which is, so far, weakly represented
in the field of machine learning. The SOM's unique characteristic is the
neighborhood relationship of the output neurons. This relationship improves the
ability of generalization on small datasets. SOMs are mostly applied in
unsupervised learning and few studies focus on using SOMs as supervised
learning approach. Furthermore, no appropriate SOM package is available with
respect to machine learning standards and in the widely used programming
language Python. In this paper, we introduce the freely available Supervised
Self-organizing maps (SuSi) Python package which performs supervised regression
and classification. The implementation of SuSi is described with respect to the
underlying mathematics. Then, we present first evaluations of the SOM for
regression and classification datasets from two different domains of geospatial
image analysis. Despite the early stage of its development, the SuSi framework
performs well and is characterized by only small performance differences
between the training and the test datasets. A comparison of the SuSi framework
with existing Python and R packages demonstrates the importance of the SuSi
framework. In future work, the SuSi framework will be extended, optimized and
upgraded e.g. with tools to better understand and visualize the input data as
well as the handling of missing and incomplete data.
