[Pre-course survey, Piazza, Scribing preference, Logistics, Course schedule and materials]
This course covers how to use deep learning techniques to resolve real-life computational problems, handling different kinds of data. We start the course by introducing the problem-solving paradigm with deep learning: data preparation, building the model, training the model, model evaluation, and hyper-parameter searching. Then, we fill in the details in the paradigm. Regarding the deep learning models, we will go from the simplest linear regression model, towards the relatively complicated models. To handle various data types, that is, the structured data, images, text, sequences, signals, and graphs, in our daily life, we would cover CNN/ResNet, RNN/LSTM, Attention, and GNN models. In addition to the above paradigm, we will also cover the commonly used techniques to handle overfitting. We would briefly go through the generative models, VAE, and GAN, at the end of this course.
Lecturer:
Yu LI (liyu@cse.cuhk.edu.hk), SHB-106. Office hour: 10:30am-12:30pm, Thursday
TA:
Tuesday: 4:30pm - 6:15pm, ERB 804.
Thursday: 4:30pm - 5:15pm, MMW 705.
Thursday: 5:30pm - 6:15pm, MMW 705. Tutorial
Thursday: 3:30pm - 4:15pm, MMW 705. ESTR-4140
Mainly onsite. Slides will be available the day before the lecture day. We will also provide the Zoom session.
Blackboard is the main software to manage the course, and grading will be through blackboard. We will use Piazza (AIST4010) for discussion. You can ask questions through Piazza, even anonymously. For a personal matter, please use the private post to the instructor and the TA. You are also very welcomed to send emails to the instructor and TAs.
Bonus (up to 2%): One additional scribing: 1%. Pre-course survey + Post-lecture survey: 0.2% for each, and the maximum is 1%. I do encourage you to complete all of them so that to let me know your feedback and adjust the course accordingly. Register here
The quiz is open-booked.
Half of them will be fixed-answer questions while half of them will be Kaggle competition. The last Kaggle competition (A3-Kaggle) is optional. If you participate in that one, you final score of the Kaggle part will be the highest two out of the three.
All the programming assignments should be done by Python, and we suggest you to use Colab.
Please register for your Scribing preference. We should have at least one student for each lecture. We may adjust the assignment if necessary. Notice that your scribing note will be posted online, for others’ reference. You can choose to hide your name or not. Deadline for registration: 11:59 pm on Sept. 18 (Thu) . After that, the Google sheet will be closed. Here are some good scribing examples from another course.
You can choose to do the project individually or team-up. However, for the team-up project, we will have higher requirement and the project should target at publication. Moreover, the contribution of each student and the workload split should be defined clearly at the beginning of the project. Please discuss with Prof. Li if you want to do serious team-up project. You should submit a proposal (6%), a mid-term report (7%), a final report (17%) and give a presentation (17%). Both the lecturer (90%) and the students (10%) will be the markers.
Each student will have 6 late days to turn in assignments, which can be used on written assignments including A1-written, A2-written, A3-written, project proposal, and project M-report. They cannot be used on Kaggle assignments, the project final report and the scribing note. A maximum of 2 late days can be used for each assignment. Grades will be deducted by 25% for each additional late day. If you would like to use late days for any assignment, please fill in this form before the assignment deadline: Late Day Application.
Deadline for each survey: 11:59pm on the day before the next lecture. We do this because I could have time to answer the questions you mentioned in the survey. Please fill 1 in the Google sheet: Survey results, once you have finished one survey. Usually, we will trust the 1s you fill in the Google sheet. But we will check the things in detail if the number of survey forms we received and the number of 1s on the Google sheet is not consistent.
We embrace Al tools, but I need to make sure you can learn something from the course.
Lec | Date | Location | Topic | Slides/Video | Notes | Reading | Important dates (All due at 11:59 pm) |
---|---|---|---|---|---|---|---|
1 | Sept. 2 (Tue) | ERB 804 | Introduction | ||||
2 | Sept. 4 (Thu) | MMW 705 | ML review | A0 posted | |||
3 | Sept. 9 (Tue) | ERB 804 | LR/NN | ||||
4 | Sept. 11 (Thu) | MMW 705 | Backpropagation | ||||
5 | Sept. 16 (Tue) | ERB 804 | CNN | ||||
6 | Sept. 18 (Thu) | MMW 705 | Overfitting | A0 due, A1 posted | |||
7 | Sept. 23 (Tue) | ERB 804 | CNN++ | Scribing preference registration due | |||
8 | Sept. 25 (Thu) | MMW 705 | CNN++ | ||||
9 | Sept. 30 (Tue) | ERB 804 | Optimization | ||||
10 | Oct. 2 (Thu) | MMW 705 | Optimization | ||||
11 | Oct. 9 (Thu) | MMW 705 | Loss function | A1-written due | |||
12 | Oct. 14 (Tue) | ERB 804 | Text processing | Project proposal due | |||
13 | Oct. 16 (Thu) | MMW 705 | RNN | A1-Kaggle due, A2 posted | |||
14 | Oct. 21 (Tue) | ERB 804 | RNN++ | ||||
15 | Oct. 23 (Thu) | MMW 705 | RNN++/Attention | A2-written due, A3 posted | |||
16 | Oct. 28 (Tue) | ERB 804 | Attention | Project M-report due | |||
17 | Oct. 30 (Thu) | MMW 705 | BERT&GPT | A2-Kaggle due | |||
18 | Nov. 4 (Tue) | ERB 804 | NLP&Graph | ||||
19 | Nov. 6 (Thu) | MMW 705 | Graph | ||||
20 | Nov. 11 (Tue) | ERB 804 | GNN | A3-written due | |||
21 | Nov. 13 (Thu) | MMW 705 | GAN | A3-Kaggle due | |||
22 | Nov. 18 (Tue) | ERB 804 | Generative | ||||
23 | Nov. 20 (Thu) | MMW 705 | Summary & Presentation | Participation Quiz | |||
24 | Nov. 25 (Tue) | ERB 804 | Project Presentation | ||||
25 | Nov. 27 (Thu) | MMW 705 | Project Presentation | Project report due |
All the tutorial slides and codes except Kaggle assignments can be found in this GitHub Repo. The slides and solutions of the Kaggle tutorials will be released on BlackBoard.
TUT | Date | Location | Topic | Slides |
---|---|---|---|---|
1 | Sept. 4 (Thu) | MMW 705 | Introduction to Colab, Kaggle, A0 | |
2 | Sept.11 (Thu) | MMW 705 | PyTorch | |
3 | Sept.18 (Thu) | MMW 705 | Image Classification Basics | |
4 | Sept.25 (Thu) | MMW 705 | ResNet from Scratch | |
5 | Oct.2 (Thu) | MMW 705 | CNN components in practice | |
6 | Oct.9 (Thu) | MMW 705 | Object Detection with YOLO | |
7 | Oct.16 (Thu) | MMW 705 | A1-Kaggle tutorial | |
8 | Oct.23 (Thu) | MMW 705 | RNN | |
9 | Oct.30 (Thu) | MMW 705 | GNN | |
10 | Nov.6 (Thu) | MMW 705 | A2-Kaggle tutorial | |
11 | Nov.13 (Thu) | MMW 705 | A3-Kaggle tutorial |