Theano (Python) is a symbolic mathematical framework which can do symbolic automatic differentiation - not more and not less. This is a very useful base for all kinds of NNs but also for any mathematical models. This will give you a computation graph which is then also optimized by Theano and which can be evaluated on several different backends, e.g. CUDA, i.e. it can be calculated on the GPU. This is also important for common NNs for performance.
Torch (Lua) is similar, but is not symbolic, and when you want to calculate the gradient, it will do the backpropagation through the same graph, just backwards. It's like Theano only a mathematical framework, which is very useful for all kinds of NNs but also any other mathematical models.
There are many libs based on Theano, e.g. like Groundhog, Keras, Lasagne, etc. There are also Torch based NN utils. You usually code your model directly in Python / Lua. Thus that is very flexible.
Caffe is a C++ framework with CUDA support. You describe your models by some declarative config. It's thus much less flexible.
PyBrain (Python) is similar to Groundhog etc, but not based on Theano but on pure Python / Numpy code.
Brainstorm (Python) is similar to PyBrain, and also not based on Theano but is has several own custom backends, including CUDA.
Torch (Lua) is similar, but is not symbolic, and when you want to calculate the gradient, it will do the backpropagation through the same graph, just backwards. It's like Theano only a mathematical framework, which is very useful for all kinds of NNs but also any other mathematical models.
There are many libs based on Theano, e.g. like Groundhog, Keras, Lasagne, etc. There are also Torch based NN utils. You usually code your model directly in Python / Lua. Thus that is very flexible.
Caffe is a C++ framework with CUDA support. You describe your models by some declarative config. It's thus much less flexible.
PyBrain (Python) is similar to Groundhog etc, but not based on Theano but on pure Python / Numpy code.
Brainstorm (Python) is similar to PyBrain, and also not based on Theano but is has several own custom backends, including CUDA.