SOM

SOM implements the Self-Organizing Map algorithm in Python to cluster and visualize conformational ensembles of biological macromolecules, enabling analysis of conformational space sampling and large-scale dataset mining.


Key Features:

  • Scalability: Supports large-scale SOMs with computation time that scales linearly with dataset size.
  • Descriptor computation: Calculates descriptors for each conformation in a trajectory for downstream mapping and analysis.
  • U-matrix visualization: Maps descriptors onto a 3D U-matrix that represents distances between neighboring neurons to reveal data structure.
  • Flooding algorithm for cluster identification: Uses a hierarchical flooding algorithm to delineate clusters by identifying local basins from global minima to maxima.
  • Comprehensive workflow implementation: Implements an end-to-end analysis workflow from data input to result interpretation within the library.

Scientific Applications:

  • Conformational space analysis: Extraction of meaningful patterns and clusters from conformational ensembles of macromolecules.
  • Molecular dynamics and interaction studies: Aid in elucidating molecular dynamics and interaction-related structural diversity.

Methodology:

Descriptors are calculated for each molecular conformation and mapped onto a U-matrix using the SOM algorithm; the flooding algorithm then processes the U-matrix to identify and delineate clusters hierarchically.

Details

License:
GPL-2.0
Maturity:
Mature
Cost:
Free of charge
Tool Type:
library
Operating Systems:
Linux, Windows, Mac
Programming Languages:
Python
Added:
8/11/2019
Last Updated:
11/24/2024

Operations

Publications

Bouvier G, Desdouits N, Ferber M, Blondel A, Nilges M. An automatic tool to analyze and cluster macromolecular conformations based on self-organizing maps. Bioinformatics. 2014;31(9):1490-1492. doi:10.1093/bioinformatics/btu849. PMID:25543048.

Documentation

Training material
http://nbviewer.ipython.org/gist/bougui505/9952997
Very basic tutorial on 2D data using the test set in test directory.; Tutorial
Training material
http://nbviewer.ipython.org/gist/bougui505/9955459
Tutorial to cluster a trajectory in dcd format.; Tutorial

Links