Overview of PyClustering
masterPyClustering is an open-source data mining library designed for cluster analysis. It is implemented in both Python and C++ to provide a wide range of clustering algorithms, including bio-inspired oscillatory networks.
Key features include:
- Hybrid Implementation: Uses a C++ core by default for maximum performance (especially for differential equation-based oscillatory networks). If no C++ compiler is detected, it falls back to pure Python implementations optimized with NumPy.
- Parallelism: Optimized C++14 implementations use
std::threadon most platforms and the Parallel Patterns Library on Windows. - Visualization: Supports 2D and 3D plots of cluster embeddings, image segments, and synchronization process graphs for oscillatory networks.
- Core Dependencies: Requires
NumPyandSciPyfor data processing, andMatPlotLibandPillowfor visualization.