This Deep Learning course offers both fundamental understanding and practical skills necessary to develop, implement, test, and validate various deep learning models. The curriculum delves into the core concepts of Deep Learning, emphasizing its application across diverse domains. Students will explore the intricacies of neural networks, backpropagation, and the advanced architectures used in image processing, natural language processing, and more.
By the end of this Deep Learning course, students will:
- Understand and apply principles of neural networks, including architectures like CNNs and RNNs.
- Implement deep learning models for tasks in image processing, NLP, and recommendation systems.
- Utilize advanced techniques such as sequence-to-sequence models and attention mechanisms.
- Address challenges in model training, imbalanced classification, and metric learning.
- Gain proficiency in Keras and TensorFlow, emphasizing reproducible research.
- Acknowledge ethical implications of deep learning models and communicate these effectively to diverse audiences.
- Instructor: Alex Olson [email protected]
- TA: Jun Ni Du [email protected]
This course's materials are adapted from the Deep Learning course taught at Master Year 2 Data Science IP-Paris. The course includes comprehensive lectures and lab notebooks covering fundamental and advanced topics in Deep Learning. While there is no designated textbook for this course, the adapted materials provide a thorough exploration of the subject, incorporating a blend of theoretical knowledge and practical applications.
Our course uses Zoom for synchronous lectures and tutorials. For practical components, we focus on Python and Jupyter Notebooks. We recommend using Google Colab for these sections, which will be the main platform for support and troubleshooting. However, students have the flexibility to run notebooks on alternative services or their own computers.
The course spans three weeks with a total of ten classes, each from 6 PM to 8:30 PM EST. Below is the class schedule formatted as a table:
Week | Dates | Days of the Week |
---|---|---|
1 | Starting 29th Jan | Monday, Tuesday, Wednesday, Thursday |
2 | Starting 5th Feb | Monday, Tuesday, Wednesday |
3 | Starting 12th Feb | Tuesday, Wednesday, Thursday |
Classes will include lectures using prepared slides and live coding sessions. All slides will be accessible online prior to lectures. Students should actively participate in coding alongside the instructor in real-time and are encouraged to ask questions.
Tutorial sessions are on the same date as each class. Tutorials will take place 30 minutes before and after each session. Tutorial attendance is optional, and organization is unstructured. The tutorial is the best place for questions/issues pertaining to software, homework, and assignments.
Class | Date | Topic | Slides | Workbooks | Suggested Additional Material |
---|---|---|---|---|---|
1 | Monday, 29th Jan | Introduction to Deep Learning | Lecture 1 Slides | Lab 1 Workbook | |
2 | Tuesday, 30th Jan | Neural Networks and Backpropagation | Lecture 2 Slides | Lab 2 Workbook | 3Blue1Brown Neural Networks - Approx 1 hour |
3 | Wednesday, 31st Jan | Embeddings and Recommender Systems | Lecture 3 Slides | Lab 3 Workbook | |
4 | Thursday, 1st Feb | Convolutional Neural Networks for Image Classification | Lecture 4 Slides | Lab 4 Workbook | |
5 | Monday, 5th Feb | Deep Learning for Object Detection and Image Segmentation | Lecture 5 Slides | ||
6 | Tuesday, 6th Feb | Recurrent Neural Networks and NLP | Lecture 6 Slides | ||
7 | Wednesday, 7th Feb | Guest Lecture - Eddie Kim, Cohere AI | |||
8 | Tuesday, 13th Feb | Sequence to sequence, attention and memory | Lecture 8 Slides | ||
9 | Wednesday, 14th Feb | Imbalanced classification and metric learning | Lecture 9 Slides | ||
10 | Thursday, 15th Feb | Unsupervised Deep Learning and Generative models | Lecture 10 Slides |
The grading for this course is based on two components: assignments and class participation, including the completion of Jupyter notebooks. The grading scheme is as follows:
Assessment | Number | Individual Weight | Cumulative Weight |
---|---|---|---|
Assignments | 2 | 35% | 70% |
Jupyter Notebooks | 10 | 2% | 20% |
Participation | NA | NA | 10% |
- Assignments consist of two major tasks completed at the end of the first two weeks.
- Jupyter Notebooks are to be completed throughout the course. Completion of these notebooks is pass/fail.
- Participation includes engagement in class discussions, activities, and overall contribution to the course environment.
Assignments
Assignments are a vital part of this course, focusing on the application of deep learning concepts. Two main assignments are scheduled, one at the end of each of the first two weeks. These assignments will be introduced in class and can be discussed with the instructor or TA during office hours or via email. They should be completed independently and submitted through the designated Google Forms links, following the naming convention firstname_lastname_a#
. Please request extensions well in advance.
Assessment | Link | Due Date | Submission Link |
---|---|---|---|
Assignment 1 | Open in Colab | Sunday, 4th February, by 11:59:59 PM EST | Submit Here |
Assignment 2 | Week 2 Topics | Monday, 12th February, by 11:59:59 PM EST | [Link to be added] |
You may submit assignments multiple times before the deadline. The last submission will be graded.
Notebook Completion
Students are expected to complete the Jupyter notebooks associated with each class. Completion includes actively coding along with the instructor and answering any questions in the notebooks. These notebooks are due by the end of the course, but it is highly recommended to complete them as you progress through the material to stay on top of the content. Notebooks are to be submitted for pass/fail grading.
Notebooks are to be submitted together at the end of the course. To submit, please follow these steps:
- Create a folder named
firstname_lastname_notebooks
and place all completed notebooks inside. - Compress the folder into a
.zip
file. - Upload the
.zip
file to [Link to be added].
You may submit notebooks multiple times before the deadline. The last submission will be graded.
Note: If any content in the assignments or notebooks is related to topics not covered in class due to schedule changes, those parts will be excluded from grading. Such exclusions will be clearly communicated before the assignment due date.
Participation
We hope all members in the course regularly participate. We define participation broadly, and include attendance, asking questions, answering others' questions, participating in discussions, etc.
This course was developed by Alex Olson, under supervision from Rohan Alexander and Curtis Norman. The original content and structure of the course are adapted from the Deep Learning course taught at Master Year 2 Data Science IP-Paris, built and maintained by Olivier Grisel and Charles Ollion.