Skip to content

Deep Learning Theory and Programming Tutorials

Our main open-source programming languages and libraries are Python, PyTorch, NumPy and C++. If you would like a more visual and guided experience, feel free to take our video course.

Work in progress

This open-source portion is still a work in progress, it is very sparse in explanation as traditionally all our explanation are done via video. Stay tuned while we gradually upload our tutorials and notes. Feel free to contact Ritchie Ng if you would like to contribute via our Facebook page.

Also take note that these notes are best used as a referral. This is because we have yet to expand it comprehensively to be a stand-alone guide. Go head and take our video course that provides a much easier, proven-to-work, experience.

All of our code allows you to run in a notebook for this deep learning section. Please use a jupyter notebook and run the examples from the start of the page to the end.

Remember to use CTRL + if you would like to zoom into the diagrams if you find them too small or blur. You can also just right click and open the image in a new tab if you prefer.

Errors to be corrected

As we are rapidly prototyping there may be some errors. For these errors stated here, they will be corrected very soon.

Feel free to report bugs, corrections or improvements on our Github repositor.

If you did not go through all the materials, you would not be familiar with these, so go through them and come back to review these changes.

  • For all diagrams that says dot product, they refer to matrix product.
  • For all diagrams that says valid padding, they refer to no padding such that your output size will be smaller than your input size.
  • For all diagrams that says same padding, they refer to zero padding (padding your input with zeroes) such that your output size will be equal to your input size.
  • When we state linear function, more specifically we meant affine function that comprises a linear function and a constant.