This repository is organized as follows:
sparse-training-via-information
|== loader
│ └── loader_cifar100.py
│ └── loader_cifar100_noisy.py
│ └── main.py
|== network
│ └── mlp.py
│ └── resnet.py
│ └── main.py
|== optim
│ └── trainer.py
│ └── model.py
|== helper
│ └── pruner.py
│ └── utils.py
|== scripts
│ └── cifar100_resnet.sh
|== run.py
|== experiment.py
If you are using anaconda:
conda create --name sparse python=3.8
conda activate sparse
To install necessary pakacges, check the list in ./requirements.txt
or lazily run the following in the designated environment for the project:
python3 -m pip install -r requirements.txt
# Training the network
. scripts/train.sh
# Get the Hessian spectrum
. scripts/spectrum.sh
Be sure check the original file for more detailed instructions on datasets, network, and optimization options, and modify the bash scripts accordingly. I have written help strings for every argument.