Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CODAC

Instructions for installing the software and running reproducing experiments for CODAC (Constraint-based Deep Active Clustering) accepted to Data Mining and Knowledge Discovery (ECMLPKDD 2026 journal track).

Installing

# set up a conda enviroment
conda create -n codac python=3.13
conda activate codac
# install numpy if not installed yet (required by ClustPy)
pip install numpy
# clone the repository
git clone https://github.com/edahelsinki/codac.git
cd codac
# clone ClustPy
git clone https://github.com/collinleiber/ClustPy.git
cd ClustPy
# install the development version accordingly to the instructions in https://github.com/collinleiber/ClustPy
python setup.py install --prefix ~/.local
python setup.py build_ext --inplace

cd ..
# install additional requirements
pip install scikit-learn-extra, wandb, ucimlrepo, active-semi-supervised-clustering, nltk

# install project as a package
pip install -e .

# DONE

Loading datasets

By running the following commands the data are dowloaded and cached automatically.

cd experiments
python data.py

Running experiments

The following instruct how to reproduce the experiments, note that the scripts are designed to be run on high performance computing (HPC) environment and might take a long time complete. The results are created in experiments/results.

Here's to run CODAC and the other algorithms on all datasets. One can select specific datasets with, e.g., by including -d mnist. With parameter -c a path is given to a YAML configuration file for each method and their parameters. In our experiments we ran each algorithm 10 times, the different repeats are controlled using the --job-index parameter.

cd experiments
python eval_active_clustering.py -o results -n -c configs/active_clustering_all.yaml -q 1600 --job-index 0

About

Constraint-based Deep Active Clustering (CODAC)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages