Practical Tensorflow for Deep Learning Research in Computer-Graphics
This course will cover the fundamentals and contemporary usage of the Tensorflow library for practial deep learning research for computer graphics. We aim to help students understand the computational model of Tensorflow, explore the functions it has to offer, and learn how to build and structure models best suited for a deep learning project.
We will not teach ML concepts or algorithms. Our focus is on closing the gap between knowing how an algorithm works in theory and actually make it work in practise at larger scale. Through the practical course, students will use Tensorflow to build models of different complexity, starting from simple linear/logistic regression up to state-of-the-art convolutional neural networks to solve tasks such as classification, image restoration and image manipulation.
Tensorflow is a powerful open-source software library for machine learning developed by researchers at Google Brain. It has many pre-built functions to ease the task of building different neural networks. Tensorflow allows distribution of computation across different computers, as well as multiple CPUs and GPUs within a single machine. TensorFlow provides a Python API, as well as a less documented C++ API. For this course, we will be using Python.
Students will learn best practices to structure a model and manage research experiments. This covers:
Proficiency in Python
All coding will be in Python and OpenCV. Make sure you are familiar with Python. If you have a lot of programming experience but in a different language (e.g. C/C++/Matlab), you will probably be fine. We will provide Jupyter Notebooks in Python for the introduction.
Knowledge about Optimization and Machine Learning
We will not ask you to take derivatives of difficult objective functions or build your own optimization algorithm. But you should know: what they are, what they do and how to use them.
Basic Theoretical Understanding of Neural Networks
This course focuses more on the usage of Tensorflow for practical deep learning projects. Therefore you can benefit more from the course if you already have basic understanding of ML concepts and basic knowledge in non-linear optimization.
To pass this course you need to:
Class Time and Location
The introduction will be weekly. Afterwards meetings will be in a two week-schedule with additional optional meetings.