Divisive iK-means algorithm implementation
Project description
divik
Python implementation of Divisive iK-means (DiviK) algorithm.
Tools within this package
This section will be further developed soon.
divik
- runs DiviK in GAP-only scenariodunn-divik
- runs DiviK in GAP & Dunn scenariokmeans
- runs K-means with GAP statisticlinkage
- runs agglomerative clusteringinspect
- visualizes DiviK resultvisualize
- generates.png
file with visualization of clusters for 2D mapsspectral
- generates spectral embedding of a dataset
Installation
Docker
The recommended way to use this software is through
Docker. This is the most convenient way, if you want
to use divik
application.
To install latest stable version use:
docker pull gmrukwa/divik
To install specific version, you can specify it in the command, e.g.:
docker pull gmrukwa/divik:2.5.12
Python package
Prerequisites for installation of base package:
- Python 3.6 / 3.7 / 3.8
- compiler capable of compiling the native C code and OpenMP support
Installation of OpenMP for Ubuntu / Debian
You should have it already installed with GCC compiler, but if somehow not, try the following:
sudo apt-get install libgomp1
Installation of OpenMP for Mac
OpenMP is available as part of LLVM. You may need to install in with:
brew install llvm libomp
DiviK Installation
Having prerequisites installed, one can install latest base version of the package:
pip install divik
or any stable tagged version, e.g.:
pip install divik==2.5.12
If you want to have compatibility with
gin-config
, you can install
necessary extras with:
pip install divik[gin]
Note: Remember about \
before [
and ]
in zsh
shell.
If you want to launch inspect
tool, you need to install extras with:
pip install divik[inspect]
You can install all extras with:
pip install divik[all]
High-Volume Data Considerations
If you are using DiviK to run the analysis that could fail to fit RAM of your computer, consider disabling the default parallelism and switch to dask. It's easy to achieve through configuration:
- set all parameters named
n_jobs
to1
; - set all parameters named
allow_dask
toTrue
.
Never set n_jobs>1
and allow_dask=True
at the same time, the computations
will freeze due to how multiprocessing
and dask
handle parallelism.
References
This software is part of contribution made by Data Mining Group of Silesian University of Technology, rest of which is published here.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for divik-2.5.12b0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | edf90ad5e02f253c52d62c8335f10d9369ea45f60549ca407ab12d4cab885110 |
|
MD5 | ad11a8efce2fd1706d03ab391e9a9aea |
|
BLAKE2b-256 | b2ed0d47b430f30012de5c79704c3734caf45068fd28fdd1a596905e50bdaaaf |
Hashes for divik-2.5.12b0-cp38-cp38-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a5deb84bd51e05bd5f7ebde5c6f42f2e903f938e89d006106461789b1e617545 |
|
MD5 | 2fc004afc2dfa76a54ec744bd4b138cb |
|
BLAKE2b-256 | e4c70c2ee651c9fb7e0f640ab774b51e75b14c7154cc30a5059bcadd58c02b00 |
Hashes for divik-2.5.12b0-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62778b116f46a8c115e098c867d805f284d8a831f2e6cfd1772d404489fab828 |
|
MD5 | edac8148eb51cdb45279e0d1a663ef88 |
|
BLAKE2b-256 | 1dd8798bceaff02e0b0ef5affd4e6e1bf8d2cb721b84345189f51e4da7b09499 |
Hashes for divik-2.5.12b0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51fb86b10bcfae2b67508314d00403b34f916c57c0a7b99c567533c062252045 |
|
MD5 | 75013f2bdabdea07b7cdb7cf0d180f81 |
|
BLAKE2b-256 | bb7f2c75f402d7a0bf2590210c79d39094abd0c022bdce874d16ab77a56c0d0c |
Hashes for divik-2.5.12b0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67ee70ac0174adb6ebce524172c509f86cfc7909ac8f97f56a7711db7eb04047 |
|
MD5 | 4e70af07316f3ab1ec541a00229897d4 |
|
BLAKE2b-256 | 7b466ab983450ed8e2111aea089f95bbc4b944140584838dbe27a4e68aa21570 |
Hashes for divik-2.5.12b0-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dce5870f263ada82d2cdba88a00ba64e0b95fdceda77611bad34f4ec82baffe1 |
|
MD5 | 5f166596aebc61d45f77ad52eb15c718 |
|
BLAKE2b-256 | dc71afde06f05bea5aaac50a79759c4a8fb38aa31701b104d5b48afbc1636893 |
Hashes for divik-2.5.12b0-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d4fea62507fff56e2895a2ed6208048dc69cef18cff50f0a5d8e739e8e96bc95 |
|
MD5 | 705e6abec2f5f8070527bc4343acc6c9 |
|
BLAKE2b-256 | fc68e97d9d7fd02f7302042579d301ea219340f1e5bf8e435dafbf4b63a68d42 |
Hashes for divik-2.5.12b0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 155e5e68a303acb8885488efe8877eb81e4fe93402a04d9a121de2a5cebbd308 |
|
MD5 | 3e2a474cc16387e00701e132cc530f86 |
|
BLAKE2b-256 | 55f55bb634e8c5dbbbbc5bcb494fcbfe8b65b7497abba46d2e4e8b657454f414 |
Hashes for divik-2.5.12b0-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f8d1fe9549da957feeb9e97148f96e9527f2cfae8487129042517ee77a36ea0 |
|
MD5 | 4e07f3689fbd6214f45afc2fbc3369a7 |
|
BLAKE2b-256 | 634384f2880577d943b184f1d6bf5fabb2fb6ff69214921481e8e69686d540e4 |