XPySom: High-Performance Self-Organizing Maps

  • Riccardo Mancini Scuola Superiore Sant'Anna
  • Antonio Ritacco Scuola Superiore Sant'Anna
  • Giacomo Lanciano Scuola Superiore Sant'Anna
  • Tommaso Cucinotta Scuola Superiore Sant'Anna

Abstract


In this paper, we introduce XPySom, a new open-source Python implementation of the well-known Self-Organizing Maps (SOM) technique. It is designed to achieve high performance on a single node, exploiting widely available Python libraries for vector processing on multi-core CPUs and GP-GPUs. We present results from an extensive experimental evaluation of XPySom in comparison to widely used open-source SOM implementations, showing that it outperforms the other available alternatives. Indeed, our experimentation carried out using the Extended MNIST open data set shows a speed-up of about 7x and 100x when compared to the best open-source multi-core implementations we could find with multi-core and GP-GPU acceleration, respectively, achieving the same accuracy levels in terms of quantization error.
Keywords: Training, Graphics processing units, Libraries, Self-organizing feature maps, Acceleration, Open source software, Parallel processing, self-organizing maps (SOMs), performance comparison, experimental evaluation, GP-GPU acceleration
Published
2020-09-08
MANCINI, Riccardo; RITACCO, Antonio; LANCIANO, Giacomo; CUCINOTTA, Tommaso. XPySom: High-Performance Self-Organizing Maps. In: INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD), 32. , 2020, Porto/Portugal. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2020 . p. 209-216.