NNSOM Toolbox

NNSOM is a Python library that provides an implementation of Self-Organizing Maps (SOM) using NumPy and CuPy. SOM is a type of Artificial Neural Network that can transform complex, nonlinear statistical relationships between high-dimensional data into simple topological relationships on a low-dimensional display (typically 2-dimensional).

The library is designed with two main goals in mind:

  • Extensibility: NNSOM provides a solid foundation for researchers to build upon and extend its functionality according to their specific requirements.

  • Educational Value: The implementation is structured so that students can quickly understand the inner workings of SOM, fostering a deeper grasp of the algorithm.

With NNSOM, researchers and students alike can leverage the power of SOM for data visualization, clustering, and dimensionality reduction.

To see the code or report a bug, please visit the GitHub repository. For more information, read the research paper.

Indices and tables