The original neural network from Torch7, 'nn', contains stable and widely used modules. 'nnx' contains more experimental, unproven modules, and optimizations. Eventually, modules that become stable enough will make their way into 'nn' (some already have).
1/ third-party libraries:
On Linux (Ubuntu > 9.04):
$ apt-get install gcc g++ git libreadline5-dev cmake wget
On Mac OS (Leopard, or more), using Homebrew:
$ brew install git readline cmake wget
2/ Lua 5.1 + Luarocks + xLua:
$ git clone https://github.com/clementfarabet/lua4torch
$ cd lua4torch
$ make install PREFIX=/usr/local
3/ nnx:
Note: this automatically installs Torch7+nn, and other Lua dependencies.
$ luarocks install nnx
First run xlua, and load nnx:
$ xlua
> require 'nnx'
Once loaded, tab-completion will help you navigate through the library (note that most function are added directly to nn):
> nnx. + TAB
...
> nn. + TAB
In particular, it's good to verify that all modules provided pass their tests:
> nnx.test_all()
> nnx.test_omp()