Course Outline

Introduction to Torch

  • Like NumPy but with CPU and GPU implementation
  • Torch's usage in machine learning, computer vision, signal processing, parallel processing, image, video, audio and networking

Installing Torch

  • Linux, Windows, Mac
  • Bitmapi and Docker

Installing Torch Packages

  • Using the LuaRocks package manager

Choosing an IDE for Torch

  • ZeroBrane Studio
  • Eclipse plugin for Lua

Working with the Lua Scripting Language and LuaJIT

  • Lua's integration with C/C++
  • Lua syntax: datatypes, loops and conditionals, functions, functions, tables, and file i/o.
  • Object orientation and serialization in Torch
  • Coding exercise

Loading a Dataset in Torch

  • CIFAR-10, CIFAR-100
  • Imagenet

Machine Learning in Torch

  • Deep Learning
    • Manual feature extraction vs convolutional networks
  • Supervised and Unsupervised Learning
    • Building a neural network with Torch
  • N-dimensional arrays

Image Analysis with Torch

  • Image package
  • The Tensor library

Working with the REPL Interpreter

Working with Databases

Networking and Torch

GPU Support in Torch

Integrating Torch

  • C, Python, and others

Embedding Torch

  • iOS and Android

Other Frameworks and Libraries

  • Facebook's optimized deep-learning modules and containers

Creating Your Own Package

Testing and Debugging

Releasing Your Application

The Future of AI and Torch

Summary and Conclusion


  • Programming experience in any language.
  • A general familiarity with C/C++ helps.
  • An interest in Artificial Intelligence (AI).


  • Software developers and programmers wishing to enable Machine and Deep Learning within their applications
  21 Hours


Related Courses

Java Advanced

  28 hours

Java Advanced - one day

  7 hours

Java Fundamentals for Android

  14 hours

Java fundamentals with Maven

  28 hours

Java Intermediate - one day

  7 hours

Java Persistence with Hibernate

  14 hours

Introduction to Programming

  35 hours

Clean Code

  14 hours

Linux Network Programming

  14 hours

Standard Java Security

  14 hours

Unit Testing with JUnit

  21 hours

Advanced Lua

  14 hours

Comprehensive Lua

  21 hours

Lua Fundamentals

  14 hours


  7 hours