https://github.com/dpfens/skm
Sequential KMeans algorithm implementation
https://github.com/dpfens/skm
clustering k-means kullback-leibler-divergence markov-chain sequence
Last synced: 2 months ago
JSON representation
Sequential KMeans algorithm implementation
- Host: GitHub
- URL: https://github.com/dpfens/skm
- Owner: dpfens
- Created: 2019-06-26T02:28:40.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-10-23T15:17:13.000Z (almost 6 years ago)
- Last Synced: 2025-02-17T20:35:05.607Z (8 months ago)
- Topics: clustering, k-means, kullback-leibler-divergence, markov-chain, sequence
- Language: C
- Size: 18.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# K-Means Clustering for Sequential Data
A somewhat parallel implementation (using OpenMP) of [The SKM Algorithm: A K-Means Algorithm for Clustering Sequential Data](https://link.springer.com/chapter/10.1007/978-3-540-88309-8_18) for the purpose of creating language bindings.
## Testing
```bash
make test
./bin/test
```To customize the data that is used, open `src/test.c` to modify the data that is used by `sequential_kmeans`.
## Python
The implementation now includes Python bindings. The Python method signature is as follows:
```python
skm(list sequences, int k, int max_iterations, int verbose=0)
```### Installation
To use/install the implementation from Python, execute in the following bash command to build the bindings with `Cython` and install the module:
```bash
make python
```