The Python 3 code that reproduces the experimental results from the paper
A Randomized Coordinate Descent Method with Volume Sampling (A. Rodomanov, D. Kropotov)
To be able to execute the code, make sure you have the following Python packages installed:
numpy
andscipy
(for basic linear algebra operations)numba
(for fast execution of the code)sklearn
(for loading the data for the logistic regression experiment)
In addition to that, for the logistic regression experiment, you need to download the following datasets from the LIBSVM website and put them inside the datasets
folder:
Note: The code has been tested on Ubuntu Linux but it should work on any other operating system that has Python 3 installed.
The main script is experiments.py
. You can run all the experiments from the terminal using the following commands:
- Quadratic function:
./experiments.py -a run_quadratic
. - Huber function:
./experiments.py -a run_huber
. - Huber function on sparse data:
./experiments.py -a run_huber_sparse
. - Logistic regression:
./experiments.py -a run_logistic
.
You can also print the information about the real data for the logistic regression experiment using ./experiments.py -a print_data_info
.