Skip to main content

Deep Learning

ES 667 · IIT Gandhinagar · Semester I, 2026–27

ES 667 develops deep-learning models from their statistical and computational foundations. The course begins with likelihood, loss functions and multilayer networks, and proceeds to convolutional models, sequence models, Transformers, representation learning and generative models.

Instructor
Prof. Nipun Batra
Office
13/401C
Credits
3-0-0-4
Email
nipun.batra@iitgn.ac.in
Assignments
1 · Optimization
2 · Small models and attention
Discussion
Course Slack

Lectures

Questions

Is there a final project?

No separate final project. Each of the three assignments is a substantial programming task, so you get project-scale practice throughout the semester.

How are assignments graded?

You submit code by the deadline, then take a short individual quiz or viva on your own submission. The viva is where the marks are decided: be ready to explain your code, your plots and your choices. See Grading.

Language and framework?

Python and PyTorch. No other frameworks (TensorFlow, JAX) unless explicitly allowed.

Do I need a GPU?

Not for everything, but some assignments benefit from one. A free Colab GPU is enough; any extra compute credits will be announced on Slack.

Where are the slides and notebooks?

In the lecture list: every lecture links its notes, slides, cheat sheet, notebooks and videos. The course materials site has the full set of decks, runnable notebooks and assignments.

Can I use AI tools?

Yes, honestly and with meaningful assistance documented. What is assessed is your ability to explain your own work in the viva, which no tool can do for you.

Anything else: ask on the course Slack.

References

There is no required textbook. Useful references include:

  • Simon J. D. Prince, Understanding Deep Learning (online edition)
  • Christopher M. Bishop and Hugh Bishop, Deep Learning: Foundations and Concepts
  • Aston Zhang, Zachary C. Lipton, Mu Li and Alexander J. Smola, Dive into Deep Learning (online edition)