From b1e8b5fdda8aa542edb0e677a73430902b22afa1 Mon Sep 17 00:00:00 2001 From: Delaney Mackenzie Date: Fri, 17 Dec 2021 12:40:46 -0500 Subject: [PATCH] Update README.md Updating README to include new performance changes. --- README.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/README.md b/README.md index 7cee961..0c3e113 100644 --- a/README.md +++ b/README.md @@ -67,8 +67,40 @@ Once the prerequisites are installed, you should be able to install scikit-rebat pip install skrebate ``` +Alternatively, for development you can use + +``` +pip install -r requirements.txt +``` + Please [file a new issue](https://github.com/EpistasisLab/scikit-rebate/issues/new) if you run into installation problems. +## Performance Testing + +This repo provides two basic tools for performance testing on your algorithms. This is important because in practice the datasets fed to the algorithms will be fairly large, and small performance regressions in core functions can be multiplied. + +The first tool for performance testing is + +``` +python performance_tests.py +``` + +This can also be called to perform a parameter sweep across many different dataset sizes to extrapolate the performance characteristics on larger datasets. + +``` +python performance_tests.py sweep +``` + +Once a sweep has been run - you can use the Jupyter notebook `Visualize_Performance_Benchmarks.ipynb` to visualize the results. + +Additionally - a performance graph can be generated from cprofile data via + +``` +./run_performance_benchmark.sh +``` + +This will produce a data file and a png graph visualization in the main directory. Please note that this requires the installation of `gprof2dot` and `Graphviz`. + ## Usage We have designed the Relief algorithms to be integrated directly into scikit-learn machine learning workflows. For example, the ReliefF algorithm can be used as a feature selection step in a scikit-learn pipeline as follows.