What is Torch?
Torch is a scientific computing framework with wide support for machine learning algorithms that puts GPUs first. It is easy to use and efficient, because of the easy and fast scripting language, LuaJIT, and an underlying C/CUDA implementation.
- A powerful N-dimensional array
- Various routines for indexing, slicing, and transposing
- Amazing interface to C, via LuaJIT
- Linear algebra routines
- Neural network and energy-based models
- Numeric optimization routines
- Embeddable, with ports to iOS, Android and FPGA backends
Who is Torch for?
Torch has its origins in academia and eventually developed a large open source user base. It has a large amount of user support, blogs, and supporting documents across the internet and Academic Literature. If you are using an Ubuntu platform, Torch is probably the easiest to get up and running.
The goal of Torch is to have maximum flexibility and speed in building your scientific algorithms while making the process extremely simple. Torch comes with a large ecosystem of community-driven packages in machine learning, computer vision, signal processing, parallel processing, image, video, audio and networking among others, and builds on top of the Lua community.
At the heart of Torch are the popular neural network and optimization libraries which are simple to use, while having maximum flexibility in implementing complex neural network topologies. You can build arbitrary graphs of neural networks, and parallelize them over CPUs and GPUs in an effcient manner.
Exxact Deep Learning GPU Solutions
Our deep learning GPU solutions are powered by the leading hardware, software, and systems engineering. Each system comes with our pre-installed deep learning software stack and are fully turnkey to run right out of the box.
Torch Examples and Applications
Convolutional Network, for Natural Images:
Generating Faces with Torch:
Implement a generative image model that converts random noise into images of faces: