============
Cuda-Convnet
============

.. contents::
   :depth: 3


#####
Intro
#####

These are wrappers around some of the GPU code from Alex Krizhevsky cuda-convnet project.
http://code.google.com/p/cuda-convnet/

Sander Dieleman wrote an `excellent blog post
<http://benanne.github.io/2014/04/03/faster-convolutions-in-theano.html>`_
that describes how to use this module without the rest of Pylearn2.

#######
Modules
#######

Convolution
===========
.. automodule:: pylearn2.sandbox.cuda_convnet.filter_acts
    :members:
.. automodule:: pylearn2.sandbox.cuda_convnet.img_acts
    :members:
.. automodule:: pylearn2.sandbox.cuda_convnet.weight_acts
    :members:

Pool
====
.. automodule:: pylearn2.sandbox.cuda_convnet.pool
    :members:
.. automodule:: pylearn2.sandbox.cuda_convnet.probabilistic_max_pooling
    :members:
.. automodule:: pylearn2.sandbox.cuda_convnet.stochastic_pool
    :members:

Response Normalization
=======================
.. automodule:: pylearn2.sandbox.cuda_convnet.response_norm
    :members:


