- Description
- Learning Outcomes
- Logistics
- Delivery of Module
- Class Schedule
- Grading Scheme
- Resources
- Folder Structure
- Acknowledgements
This Deep Learning module 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 module, students will:
- 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.
- Evaluate and address challenges in model training, imbalanced classification, and metric learning.
- Use Keras and TensorFlow to emphasize reproducible research.
- Explain the ethical implications of deep learning models effectively to diverse audiences.
Questions can be submitted to the #questions channel on Slack
- Technical Facilitator: {Name} {Pronouns}. Emails to the Technical Facilitator can be sent to {first_name.last_name}@mail.utoronto.ca.
- Learning Support Staff: {Name} {Pronouns}. Emails to the Technical Facilitator can be sent to {first_name.last_name}@mail.utoronto.ca.
This module's materials are adapted from the Deep Learning module taught at Master Year 2 Data Science IP-Paris. The module includes comprehensive lectures and lab notebooks covering fundamental and advanced topics in Deep Learning. While there is no designated textbook for this module, the adapted materials provide a thorough exploration of the subject, incorporating a blend of theoretical knowledge and practical applications.
<<<<<<< HEAD
<<<<<<< HEAD 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 |
======= |
Week | Dates | Days of the Week |
---|---|---|
1 | Starting 11th Apr | Thursday, Saturday |
2 | Starting 15th Apr | Tuesday, Wednesday, Thursday, Saturday |
3 | Starting 22nd Apr | Tuesday, Wednesday, Thursday, Saturday |
Weekday evening classes run from 6:00 PM to 8:30 PM, while Saturday classes run from 9:00 AM to 11:30 AM.
c675b93d7db0e6cc3bb744b0af7c47812525013a
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.
The module will run synchronously three times a week on Zoom. The first three days are used as "lectures" and will last a maximum of 3 hours. During this time, the Technical Facilitator will introduce the concepts for the week. The last day is used as an optional, asynchronous work period. The work periods will also last for up to 3 hours. During the last day, a Technical Facilitator or TA will be present on Zoom to assist learners reach the intended learning outcomes.
The Technical Facilitators will introduce the concepts through a collaborative live coding session using the Python notebooks found under /01_slides
. All Technical Facilitators will also upload any live coding files to this repository for any learners to revisit under ./05_cohort_three/live_code
.
Learners are encouraged to be active participants while coding and are encouraged to ask questions throughout the module.
- Learners are not expected to have any coding experience, we designed the learning content for beginners.
- Learners are encouraged to ask questions and collaborate with others to enhance learning.
- Learners must have a computer and an internet connection to participate in online activities.
- Learners must have VSCode installed with the following extensions:
- Learners must not use generative AI such as ChatGPT to generate code to complete assignments. It should be used as a supportive tool to seek out answers to questions you may have.
- We expect learners to have completed the onboarding repo.
- Webcam usage is optional although highly encouraged. We understand that not everyone may have the space at home to have the camera on.
b47f7380d278ec713328c9ef3f762b043c131636
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, labs, and assignments.
The module spans two weeks with a total of 6 classes, each from 6 PM to 8:30 PM EST. Below is the class schedule formatted as a table:
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 Technical Facilitator in real time and are encouraged to ask questions.
<<<<<<< HEAD
Class | Date | Topic | Slides | Workbooks | Suggested Additional Material |
---|---|---|---|---|---|
<<<<<<< HEAD | |||||
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 |
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 | Lab 5 Workbook | |
6 | Tuesday, 6th Feb | Recurrent Neural Networks and NLP | Lecture 6 Slides | Lab 6 Workbook | |
7 | Wednesday, 7th Feb | Guest Lecture - Eddie Kim, Cohere AI | |||
8 | Tuesday, 13th Feb | Attention and GPT | Lecture 8 Slides | Lab 8 Workbook | The Sentence Computers Can't Understand, But Humans Can |
9 | Wednesday, 14th Feb | Imbalanced classification and metric learning | Lecture 9 Slides | Lab 9 Workbook | |
10 | Thursday, 15th Feb | Unsupervised Deep Learning and Generative models | Lecture 10 Slides | Lab 10 Workbook | |
======= | |||||
1 | Thursday, 11th Apr | Introduction to Deep Learning | Lecture 1 Slides | Lab 1 Workbook | |
2 | Saturday, 13th Apr | Neural Networks and Backpropagation | Lecture 2 Slides | Lab 2 Workbook | 3Blue1Brown Neural Networks |
3 | Tuesday, 15th Apr | Embeddings and Recommender Systems | Lecture 3 Slides | Lab 3 Workbook | |
4 | Wednesday, 16th Apr | Convolutional Neural Networks for Image Classification | Lecture 4 Slides | Lab 4 Workbook | |
5 | Thursday, 17th Apr | Deep Learning for Object Detection and Image Segmentation | Lecture 5 Slides | Lab 5 Workbook | |
6 | Saturday, 20th Apr | Recurrent Neural Networks and NLP | Lecture 6 Slides | Lab 6 Workbook | |
7 | Tuesday, 22nd Apr | RNNs and NLP Part 2 | Lecture 7 Slides | Lab 7 Workbook | |
8 | Wednesday, 23rd Apr | GPT and RLHF | Lecture 8 Slides | Lab 8 Workbook | The Sentence Computers Can't Understand, But Humans Can |
9 | Thursday, 24th Apr | Imbalanced classification and metric learning | Lecture 9 Slides | Lab 9 Workbook | |
10 | Saturday, 27th Apr | Unsupervised Deep Learning and Generative models | Lecture 10 Slides | Lab 10 Workbook |
c675b93d7db0e6cc3bb744b0af7c47812525013a ======= | Class | Date | Topic | Slides | Workbooks | Suggested Additional Material | | ----- | ---- | --------------------------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------------- | ------------------------------------------------------------------------------------------------------- | | 1 | TBD | Introduction to Deep Learning | Lecture 1 Slides | Lab 1 Workbook | | | 2 | TBD | Neural Networks and Backpropagation | Lecture 2 Slides | Lab 2 Workbook | 3Blue1Brown Neural Networks | | 3 | TBD | Embeddings and Recommender Systems | Lecture 3 Slides | Lab 3 Workbook | | | 4 | TBD | Convolutional Neural Networks for Image Classification | Lecture 4 Slides | Lab 4 Workbook | | | 5 | TBD | Deep Learning for Object Detection and Image Segmentation | Lecture 5 Slides | Lab 5 Workbook | | | 6 | TBD | Recurrent Neural Networks and NLP | Lecture 6 Slides | Lab 6 Workbook | | b47f7380d278ec713328c9ef3f762b043c131636
The grading for this module 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 module. Completion of these notebooks is pass/fail.
- Participation includes engagement in class discussions, activities, and overall contribution to the module environment.
Assignments
Assignments are a vital part of this module, 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 Technical Facilitator 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.
<<<<<<< HEAD <<<<<<< HEAD
Assessment | Link | Due Date | Submission Link |
---|---|---|---|
Assignment 1 | Open in Colab | Sunday, 4th February, by 11:59:59 PM EST | Submission Closed |
Assignment 2 | Open in Colab | Wednesday, 14th February, by 11:59:59 PM EST | Submit Here |
Workbooks | Friday, 16 February, by 11:59:59 PM EST | Submit Here | |
======= | |||
Assessment | Link | Due Date | Submission Link |
-------------- | --------------------------------------------------------------------------------------------------------------------------- | ----------------------------- | ----------------------------------------------------- |
Assignment 1 | Open in Colab | End of Sunday, 21st April | |
Assignment 2 | Open in Colab | End of Friday, 25th April | |
Workbooks | End of Saturday, 27th April |
c675b93d7db0e6cc3bb744b0af7c47812525013a ======= | Assessment | Link | Due Date | | ------------ | ----------------------------------------------- | -------- | | Assignment 1 | Notebook | TBD | | Assignment 2 | Notebook | TBD | | Workbooks | | TBD | b47f7380d278ec713328c9ef3f762b043c131636
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 Technical Facilitator and answering any questions in the notebooks. These notebooks are due by the end of the module, 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 module. 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. <<<<<<< HEAD <<<<<<< HEAD - Upload the
.zip
file to this form. ======= - Upload the
.zip
file to [link to be added].
c675b93d7db0e6cc3bb744b0af7c47812525013a =======
- Upload the
.zip
file to this form.
b47f7380d278ec713328c9ef3f762b043c131636
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 of the module regularly participate. We define participation broadly and include attendance, asking questions, answering others' questions, participating in discussions, etc.
Feel free to use the following as resources:
- What is Deep Learning?
- Neural Network in 5 minutes
- What is NLP?
- Classification and Regression in Machine Learning
- Supervised vs Unsupervised vs Reinforcement Learning
- 3Blue1Brown Neural Networks Playlist
.
├── 01_slides
├── 02_labs
├── 03_assignments
├── 04_instructional_team
├── 05_additional_resources
├── LICENSE
├── README.md
└── steps_to_ask_for_help.png
- slides: module slides as PDF files
- labs: Interactive notebooks to be done after each lecture (.ipynb files)
- live_coding: Notebooks from class live coding sessions
- assignments: Graded assignments
- data: Contains all data associated with the module
- instructors: Instructions for the Technical Facilitator on what to teach
- README: This file!
- .gitignore: Files to exclude from this folder, specified by the Technical Facilitator
We wish to acknowledge this land on which the University of Toronto operates. For thousands of years, it has been the traditional land of the Huron-Wendat, the Seneca, and most recently, the Mississaugas of the Credit River. Today, this meeting place is still the home to many Indigenous people from across Turtle Island and we are grateful to have the opportunity to work on this land.