TDT05 - Modern Machine Learning in Practice (Autumn 2020)
Teacher
Prof. Zhirong Yang
Teaching Assistant
Lei Cheng
Course content
AI, enabled by machine learning (ML) technology, has become the new electricity. The next-generation industry demands a wide range of AI or ML applications. However, when trying machine learning to a real-world problem, you probably find enormous difference from what you have learned from textbook or conventional courses which focus on theories and models only. This course aims to bridge the gap and to help you develop realistic machine learning products. After the course, you will understand a set of common problems in practice as well as their related concepts, ranging from preprocessing, inference, diagnosis, and interpretation. In solutions, we carefully select one or two state-of-the-art methods for each problem, instead of overwhelming you by a tedious list of alternatives. In the course we also discuss some open problems and their plausible solutions in frontier, so that you can pay attention and seek answers even after the course. The course assignment includes a small project for practice, where you will be guided in building a real ML solution starting from raw data.
Course outline (6 classes)
- Introduction & Data preprocessing
- Predictors
- Before prediction
- Exploratory data analysis
- Handling missing values
- Handling imbalanced classes
- After prediction
- Interpretation
- Feature engineering
- Frontiers
- Automatic ML
- On supervised labels
- Unsupervised learning
- Reinforcement learning
- Transfer learning
- Simulator-based ML
- Project presentations
Course grading
- Project (report deadline: 25 October 2020, 23:59)
- No exam
Lectures (Thursdays 10-12, online teaching)
- 10 September
- 17 September
- 24 September (optional)
- 1 October
- 15 October
- 22 October
- 5 November [meeting link]
Office hours (Tuesdays 14-16)
- Zhirong Yang, Gløshaugen IT-Bygget 320
- Lei Cheng, Gløshaugen IT-Bygget 360b (opposite to 320)
Recommended prerequisites
- University mathematics
- Programming (We will use Python)
- Please bring your own laptop. Linux operating system such as Ubuntu is recommmended.
Enroll
-
Register to the course here.
- CS students have to register a project and get an approval from their supervisor to get access to the theory modules.
- Non-CS students can choose "Informatics" in the dropdown.
- For students who are not in computer science, please consult your own department whether they have the same format of specialization courses. Otherwise we may not grant credits to you.
Microsoft Teams
- We will mainly use Microsoft Teams for organizing the course (online teaching, course materials, discussions, etc.)