Python Benchmarking Framework for the Clustering Algorithms Evaluation: networks generation and shuffling; failover execution and resource consumption tracing (peak RAM RSS, CPU, ...); evaluation of Modularity, conductance, NMI and F1 Score for overlapping communities
Use YAML config instead of the Python code to include new algorithms into the benchmark and to describe I/O and evaluations.
There should be standard unified YAML config and clarifications per each algorithm. Also in each YAML clarifications can be made for evaluations on specific dataset.
The most specific config (for datasets) overrides the less specific one.
Something like
apps:
- name: malg # Application name
exec: malg -param1 $pval1 # App execution string Where $pval1 refers to pval1 runtime variable, defined in the execution function
- name: alg2
...
Use YAML config instead of the Python code to include new algorithms into the benchmark and to describe I/O and evaluations.
There should be standard unified YAML config and clarifications per each algorithm. Also in each YAML clarifications can be made for evaluations on specific dataset. The most specific config (for datasets) overrides the less specific one.
Something like