Course Information


This course provides a thorough understanding of the fundamental concepts and recent advances in deep learning. The main objective is to provide students practical and theoretical foundations to use and develop deep neural architectures to solve challenging tasks in an end-to-end manner. The course will particularly focus on computer vision problems. The course is taught by Aykut Erdem.

The course will use Deep Learning by Ian Goodfellow, Yoshua Bengio and Aaron Courville as the textbook (draft available online and for free here).

Instruction style: During the semester, students are responsible for studying and keeping up with the course material outside of class time. These may involve reading particular book chapters, papers or blogs and watching some video lectures. After the first three lectures, each week a student will present a paper related to the topics of the week.

Time and Location

Lectures: Wednesday at 13:15-16:00 (Room D6)


The course webpage will be updated regularly throughout the semester with lecture notes, presentations, assignments and important deadlines. All other course related communications will be carried out through Piazza. Please enroll it by following the link


CMP722 is open to all graduate students in our CENG department. Prospective senior undergraduate students may sit in on the class. Non-CENG graduate students, however, should ask the course instructor for approval before the add/drop period. The prerequisites for this course are:

  • Programming (you should be a proficient programmer to work out the practicals and to implement your course project.)
  • Calculus (differentiation, chain rule) and Linear Algebra (vectors, matrices, eigenvalues/vectors)
  • Basic Probability and Statistics (random variables, expectations, multivariate Gaussians, Bayes rule, conditional probabilities)
  • Computer Vision (suggested related courses are BBM416 Fundamentals of Computer Vision and CMP719 Computer Vision.)
  • Machine Learning (you can still survive this course without a machine learning course before, but it is highly recommended. Some introductory ML courses are BBM406 Fundamentals of Machine Learning and CMP712 Machine Learning. CMP684 Neural Networks is also very related.)
  • Optimization (cost functions, taking gradients, regularization)

Course Requirements and Grading

Grading for CMP722 will be based on

  • Practicals (30%) (3 practicals x 10% each)
  • Course Project (presentations and reports) (40%),
  • Paper Presentations (15%),
  • Weekly Quizzes (9%),
  • Lecture Summary Notes (6%).


Date Topic Assignments
Feb 15 Introduction to Deep Learning
Feb 22 Machine Learning Overview
Mar 1 Multi-Layer Perceptrons Practical 1 out
Mar 8 Training Deep Neural Networks
Mar 15 Convolutional Neural Networks Practical 1 due, Practical 2 out
Mar 22 Understanding and Visualizing CNNs Project proposal due
Mar 29 Recurrent Neural Networks
Apr 5 Attention and Memory Practical 2 due, Practical 3 out
Apr 12 Project Progress Presentations
Apr 19 Representation Learning Project progress report due
Apr 26 Autoencoders and its variants Practical 3 due
May 3 Deep Generative Models
May 10 Deep Reinforcement Learning
May 17 Final Project Presentations
Detailed Syllabus and Lectures (private)


Reference Books

  • Ian Goodfellow, Yoshua Bengio, and Aaron Courville, Deep Learning, MIT Press, 2016 (draft available online)

Similar Courses

Deep Learning Frameworks