About
Table of contents
About
Welcome to our website dedicated to Deep Learning Course! Deep learning is a subfield of machine learning that uses algorithms inspired by the structure and function of the human brain, called artificial neural networks. In this course, you will learn the basics of deep learning, and build your own deep neural networks using TensorFlow. You will get practical experience with TensorFlow through coding exercises and projects implementing state-of-the-art AI applications such as style transfer and text generation. You will also learn how to adjust hyperparameters, and tackle classification and regression problems. TensorFlow is a deep learning package that allows you to use the power of GPUs and other accelerators, and provides an automatic differentiation library that is useful to implement neural networks.
Here, Learning is done by Doing :)
Class time and Location
Sunday 14:00-15:30 and Wednesday 10:00-11:30* (Fall 2023), Room 10.
References
This course uses various resources to teach the concepts and applications of deep learning. Some of these resources are:
- Deep Learning with Python by François Chollet, Second Edition, 2021
- Hands On Machine Learning with Scikit-Learn, Keras, and TensorFlow Concepts, Tools, and Techniques to Build Intelligent Systems-O’Reilly Media, Book by Aurélien Géron, 2022, Part II.
- Dive into Deep Learning: A free online book that teaches deep neural networks using PyTorch and TensorFlow. Discuss
- Introduction to Deep Learning: A course from MIT that covers the foundations of deep learning and its applications to computer vision, natural language processing, generative models, and reinforcement learning.
- CS230 Deep Learning: A course from Stanford that focuses on the practical aspects of deep learning, such as how to design, train, debug, and deploy neural networks.
- CS231n Convolutional Neural Networks for Visual Recognition: A course from Stanford that covers the theory and practice of convolutional neural networks for image classification, object detection, segmentation, and generative models.
- CS182 Deep Reinforcement Learning: A course from UC Berkeley that introduces the basic concepts and algorithms of reinforcement learning and how to apply them to problems such as robotics, games, and natural language processing.
- Learn PyTorch: A website that provides tutorials and examples on how to use PyTorch for various deep learning tasks.
Grading:
- Homework – 20%
- Midterm – 30%
— Will consist of mathematical problems and/or programming assignments. - Seminars - 10%
- Final – 40%
Academic Honor Code:
Honesty and integrity are vital elements of the academic works. All your submitted assignments must be entirely your own (or your own group’s).
We will follow the standard of Faculty of Mathematical Sciences approach:
- You should not use code of others or be looking at code of others when you write your own: You can talk to people but have to write your own solution/code
- You can talk to others about the algorithm(s) to be used to solve a homework problem; as long as you then mention their name(s) on the work you submit
Questions?
I will be having office hours for this course on Monday (10:00 AM–11:30 AM). If this is not convenient, email me at m.amintoosi@um.ac.ir, talk to me after class or schedule an appointment via Calendly.
Our Slack workspace
Come and join our Slack group to engage in course discussions.