AIST4010 Foundation of Applied Deep Learning

 

Course code AIST4010
Course title Foundation of Applied Deep Learning
應用深度學習基礎
Course description 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 paradigms, 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.
本科將詳細介紹如何使用深度學習去處理並解決實際生活中遇到的各種數據類型。本科開始將首先介紹用深度學習去解決問題的流程和框架:數據預處理、構建模型、訓練模型、評估模型及超參數搜索。然後詳細介紹這個流程中的細節。深度模型部分,將從最簡單的線性模型開始介紹並逐漸增加模型的複雜度。為了處理不同的數據類型,即結構化數據、圖像、文本、序列、信號和網絡,本科將介紹CNN/ResNet, RNN/LSTM, Attention和GNN模型。除了上述流程,本科還會詳細介紹如何處理深度學習中的過擬合問題。最後,本科將簡單介紹生成模型:VAE和GAN。
Unit(s) 3
Course level Undergraduate
Semester 1 or 2
Prerequisite(s) (AIST1000 or CSCI3230 or CSCI3320) AND (AIST1110 or CSCI1040 or CSCI2040)
Exclusion ESTR4140
Grading basis Graded
Grade Descriptors A/A-:  EXCELLENT – exceptionally good performance and far exceeding expectation in all or most of the course learning outcomes; demonstration of superior understanding of the subject matter, the ability to analyze problems and apply extensive knowledge, and skillful use of concepts and materials to derive proper solutions.
B+/B/B-:  GOOD – good performance in all course learning outcomes and exceeding expectation in some of them; demonstration of good understanding of the subject matter and the ability to use proper concepts and materials to solve most of the problems encountered.
C+/C/C-: FAIR – adequate performance and meeting expectation in all course learning outcomes; demonstration of adequate understanding of the subject matter and the ability to solve simple problems.
D+/D: MARGINAL – performance barely meets the expectation in the essential course learning outcomes; demonstration of partial understanding of the subject matter and the ability to solve simple problems.
F: FAILURE – performance does not meet the expectation in the essential course learning outcomes; demonstration of serious deficiencies and the need to retake the course.
Learning outcomes At the end of the course of studies, students will have acquired the ability to
1) understand the problem-solving paradigm with deep learning to resolve the real-life problems.
2) grasp the basic concepts related to deep learning:
a) the difference between different flavours of deep learning models and what kind of deep learning model to use when encountering a certain data type;
b) how to train the deep learning models, understanding the difference between different deep learning optimizers;
c) how to evaluate the deep learning models, judging whether the model is overfitting and handling the overfitting issue in deep learning;
d) what the model hyper-parameters are and how to choose and tune the hyper-parameters.
3) develop the programming techniques and build various deep learning models, including CNN/ResNet, RNN/LSTM, Attention, and GNN, with existing packages, such as Pytorch, to solve the real-life problems.
Communicate with others and present their work.
Assessment
(for reference only)
Homework or assignment: 50%
Test / quiz: 30%
Presentation: 10%
Lab reports: 10%
Recommended Reading List 1) Ian Goodfellow and Yoshua Bengio and Aaron Courville, Deep Learning, 2016
2) Christopher Bishop, Pattern Recognition and Machine Learning, 2006
3) https://www.w3schools.com/python/
4) https://scikit-learn.org/stable/tutorial/basic/tutorial.html
5) https://pytorch.org
6) https://github.com/yunjey/pytorch-tutorial
7) https://www.coursera.org/specializations/deep-learning
8) https://github.com/sw-gong/GNN-Tutorialhttps://github.com/uclaacmai/Generative-Adversarial-Network-Tutorial

 

AISTN programme learning outcomes Course mapping
Upon completion of their studies, students will be able to:  
1. identify, formulate and solve AI-related engineering problems (K/S);    Y
2. design a system, component, or process to meet desired needs within realistic constraints, such as economic, environmental, social, political, ethical, health and safety, manufacturability and sustainability (K/S/V);
 Y
3. understand the impact of AI solutions in a global and societal context, especially the importance of health, safety and environmental considerations to both workers and the general public (K/V);  
4. communicate and work effectively in multi-disciplinary teams (S/V);
 
5. apply knowledge of mathematics, science, and engineering appropriate to the AI degree discipline (K/S); 
Y
6. design and conduct experiments, as well as to analyze and interpret massive data (K/S);  Y
7. use the techniques, skills, and modern computing tools necessary for engineering practice  appropriate to the AI and computing discipline (K/S); Y
8. understand professional and ethical responsibility (K/V); and
9. recognize the need for and the importance of life-long learning (V).
Y
Remarks: K = Knowledge outcomes; S = Skills outcomes; V = Values and attitude outcomes