https://github.com/tommoral/dicod
Experiments for ICML paper DICOD: Distributed Convolutional Coordinate Descent for Convolutional Sparse Coding, ICML 2018, T. Moreau, L. Oudre, N. Vayatis.
https://github.com/tommoral/dicod
convolutional-sparse-coding coordinate-descent distributed-computing openmpi
Last synced: about 1 year ago
JSON representation
Experiments for ICML paper DICOD: Distributed Convolutional Coordinate Descent for Convolutional Sparse Coding, ICML 2018, T. Moreau, L. Oudre, N. Vayatis.
- Host: GitHub
- URL: https://github.com/tommoral/dicod
- Owner: tomMoral
- Created: 2017-10-08T11:18:30.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2019-01-24T18:48:24.000Z (over 7 years ago)
- Last Synced: 2025-03-31T13:27:45.818Z (over 1 year ago)
- Topics: convolutional-sparse-coding, coordinate-descent, distributed-computing, openmpi
- Language: Python
- Homepage:
- Size: 485 KB
- Stars: 12
- Watchers: 4
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This package is still under development. If you have any trouble running this code, please contact
## DICOD [](https://travis-ci.org/tomMoral/Dicod)
Package to run the experiments for the ICML paper [DICOD: Distributed Convolutional Coordinate Descent for Convolutional Sparse Coding](http://proceedings.mlr.press/v80/moreau18a.html), ICML 2018, T. Moreau, L. Oudre, N. Vayatis.
#### Requirements
All the tests were done with python3.4.
This package depends on the python library `numpy`, `matplotlib`, `scipy`, `mpi4py`, `joblib`
and the libraries `openMPI` and `fftw3`.
They can be installed with
```bash
sudo apt install libopenmpi-dev fftw-dev
pip install numpy matplotlib scipy mpi4py joblib
```
To install the package, first build it with the utility script `./build` and then run `pip install -e .`
#### Usage
Figure 2 can be generated using
```bash
$ python main_dicod.py --met -K 25 -T 600 --timeout 7200 -d 10 --njobs 60 --hostfile hostfile --exp results
```
where hostfile is the configuration for the spawning of MPI processes.
```
host1 slots=32
host2 slots=8
...
```
Then the figures can be plotted using
```bash
$ python plot_dicod.py --met --dir save_exp/results
```