(AD1062) Machine Learning Fundamentals
Course Introduction
Machine Learning Fundamentals is a course which expected to provide you an overview and the background knowledge of popular machine learning methods. Started from the simplest linear classifier, Perceptron, we'll introduce how a classifier learning from large volumes of data via different strategies and obtaining the ability to predict the properties from the data. The course gives introductions, concept, and basic mathematical theory for different purposes of learning. For example, using Convolutional Neural Network (CNN) for visual information extraction, Recurrent Neural Network (RNN) for handling context-dependent information, Generative Adversarial Network (GAN) for synthesizing structured and realistic information, or using the Reinforcement Learning (RL) to continuously optimize the learning task by reward and penalty mechanism.
Notice that we do NOT cover too much about:
- How to develop a machine learning application (Only basic sample code would be provided)
- How to choose and use machine learning framework
- How to handle your data., etc.
The course materials only covers:
- Understanding the basic concept of some widely used machine learning algorithms,
- The applicable and non-applicable scenario of different methods, and
- The physical meanings of parameters for particular algorithm that you usually read from Scikit-learn or TensorFlow tutorial
Differences between 2018 R1 and 2019 R1
Most of course materials are the same, except that:
6 Weeks→ 8 Weeks- Based on the feedback of questionnaire
- 2 more topics are expected to be covered: Generative Adversarial Learning and
Reinforcement Learning- Reinforcement Learning is temporary canceled due to schedule concern
- More related application would be introduced, including some applications in Trend Micro AI contest 2018
- Minor changes and revision for existing materials
Course GitHub
Announcement
- The hard deadline of ALL Homework 1 - 5 will be 2019/06/10 (Mon.) 11:59:59 (GMT+08:00)
- Postpone is NOT allowed, due to the score sheet also required to be sent to ETS
- Please help me to fill the [questionnaire] (課程問卷,中文) If you're satisfied or dissatisfied with this course
Thank you for your participation :)
Schedule
2019/4/3
Overview
Course Material: [PowerPoint slides] [PDF] - Last Update: 2019/4/9 15:55
Sample code: [demo_01]
Homework: [Link of Homework 1] - Deadline: 2019/4/17 (Soft deadline, please notify me for late submission)
- Overview
- Data Preparation
- Mathematics Review: Linear Algebra - Part.1
- Vectors, Matrices and its operators
- Norms
- Reference: Linear Algebra Review and References (From CS229: Machine Learning, Stanford): http://cs229.stanford.edu/section/cs229-linalg.pdf
- Performance Evaluation
2019/4/10
Linear Classifier
Course Material: [PowerPoint slides] [PDF] - Last Update: 2019/4/17 11:40
Sample code: [demo_02]
- Mathematics Review: Linear Algebra - Part.2.
- Hyper-plane and Normal Vector
- Perceptron
- Reference: the Matrix Cook book (if you need to derive your own cost function with gradient descent): http://www2.imm.dtu.dk/pubdb/views/edoc_download.php/3274/pdf/imm3274.pdf
- Support Vector Machine (SVM)
2019/4/17
Linear Classifier
- Multi-Class Generalization
Non-Linear Classifier
Course Material: [PowerPoint slides] [PDF] - Last Update: 2019/4/24 13:50
Sample code: [demo_03]
Homework: [Link of Homework 2 - 120%] - Deadline: 2019/5/8 (Soft deadline, please notify me for late submission)
- Multi-Layer Perceptron
2019/4/24
Non-Linear Classifier
Homework: [Link of Homework 3 - 80%] - Deadline: 2019/5/12 (Soft deadline, please notify me for late submission)
- Non-linear Support Vector Machine
- Decision Tree and Boosting
2019/5/8
Convolutional Neural Network
Course Material: [PowerPoint slides] [PDF]- Last Update: 2019/5/8 10:30
Sample code: [demo_04]
Homework: [Link of Homework 4] - Deadline: 2019/5/29 (Soft deadline, please notify me for late submission)
- Convolution mask
- Convolutional Neural Network
- Convolutional Layer
- Pooling Layer
- Fully-connected Layer
- Drop-out Layer
- Activation Layer
- Applications
- Image Classification
- Object Detection and Localization
2019/5/15
Sequential Learning
Course Material: [PowerPoint slides] [PDF]
Sample code: [demo_05]
- N-gram model and Markov-Chain
- Recurrent Neural Network (RNN)
- Long Short-Term Memory (LSTM)
- Applications
- Steps before Natural Language Processing
- Text Classification
- Sequence Generation
2019/5/22
Convolutional Neural Network and Sequential Learning:
Homework: [Link of Homework 5] - Deadline: 2019/06/10 (Mon.) 11:59:59 (HARD DEADLINE!)
- Natural Language Processing with Convolutional layers
- Some problems with RNN and LSTM
- Summary for Sequential Learning
Structured Learning
Course Material: [PowerPoint slides] [PDF]
- Auto-encoder
- Generative Adversarial Network
- Applications
- Conditional GAN
- Cycle GAN
NOTICE: Reinforcement Learning is temporary removed due to schedule concerns.
2019/5/29
Dimension Reduction
Course Material: [PowerPoint slides] [PDF] - Last Update: 2019/5/29 11:02
Sample code: [demo_07]
- Principal Component Analysis (PCA)
- Linear Discriminant Analysis (LDA)
- t-Distributed Stochastic Neighboring Embedding (t-SNE)
Summary
Course Material: [PowerPoint slides] [PDF]
- Summary : Methods
- Summary : Data
- Summary : Methods + Data
About the Lecturer
Jessee Kung
Staff Developer at Trend Micro Inc.
jessee780522 {at} gmail.com