Skip to content

HernandezEduin/Mem-AOP-GD

Repository files navigation

Environment

To use the code, install Anaconda with the following libraries:

  • conda install scikit-image
  • conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 -c pytorch

For a preferred cuda version, use one of the following instead:

  • conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=9.2 -c pytorch
  • conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=10.1 -c pytorch
  • conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=10.2 -c pytorch
  • conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=11.0 -c pytorch

Reproducing Results

To reproduce any of the results, run one of the following codes for their corresponding plot in the paper:

  • plot_figure_3a.py
  • plot_figure_3b.py
  • plot_figure_3c.py
  • plot_figure_4a.py
  • plot_figure_4b.py
  • plot_figure_4c.py

Training Models

To train a single layered network on any of the schemes, use any of the following with the desired argument parameters:

  • mnist_simulations.py
  • energy_efficiency_simulatons.py

To train a single layered network on all the schemes in one go, use any of the following with the desired argument paramters:

  • mnist_run.py
  • energy_efficiency_run.py

Plotting Results

To plot the results from simulations, enter the argument parameters in the following codes:

  • mnist_plots.py
  • energy_efficiency_plots.py

About

Code for the numerical experiment of the paper Speeding-Up Back-Propagation in DNN: Approximate Outer Product with Memory.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages