Skip to content

alrojo/lasagne_residual_network

Repository files navigation

Lasagne implementation of Deep Residual Networks

Recreating Deep Residual Learning for Image Recognition

http://arxiv.org/abs/1512.03385

Recreating Identity Mappings in Deep Residual Networks (only pre-activation)

http://arxiv.org/abs/1603.05027

Dependancies

Note: CUDA and CuDNN might require root privileges.

  • Ubuntu 14.04
  • CUDA 6.5 (might work with lower, have not tested lower)
  • Follow the lasagne installation lasagne.readthedocs.org/en/latest/user/installation.html
    • Python2.7
    • Numpy
    • Theano (NOT pip install)
    • Lasagne (should only require 0.1 from pip install, but have only tested on 0.2dev)
  • CuDNN (only tested with v2)

CuDNN

CuDNN is now disabled by default, to enable see below

Set-up and run

The code is based on lasagne's own mnist example: github.com/Lasagne/Lasagne/blob/master/examples/mnist.py

The data is placed in the main folder for ease of use, but if you do not have the data Deep_Residual_Network_mnist.py will automatically download it.

To get an overview of commandline inputs, run

python Deep_Residual_Network_mnist.py -h

An example of running with num_blocks/res_units per layer=3, num_filters=8, num_epochs=500 and CuDNN=no

python Deep_Residual_Network_mnist.py 3 8 500 no

BatchNormLayer

Using lasagnes implementation of BatchNormLayer which is the CuDNNv4 style implementation. See github.com/Lasagne/Lasagne/pull/467 for more information.

NOTE

If any of the provided steps does not work for you please let me know and report an issue/PR, thanks!

About

Recreating the Deep Residual Network in Lasagne

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages