MSc: Advanced Machine Learning.previous version
Advanced Machine Learning
- Course name: Advanced Machine Learning
- Course number: DS-02
Prerequisites
Course Characteristics
Key concepts of the class
- Advanced topics in machine learning
- To develop research interest in the theory and application of machine learning
What is the purpose of this course?
This course is designed for graduate students to provide comprehensive and advance topics in machine learning. Student will learn to implement the machine learning models in Python programming environment from data science prospective. In this course, we will cover Neural Network Architectures (CNN, LSTM, Attention, RNN), Regularization, Genetic algorithm, Graphical Models (HMM), Generative models, Reinforcement learning, Collaborative filtering and recent trends in machine learning. The end of the day they will able to apply machine learning algorithms to solve real-world problems.
Course Objectives Based on Bloom’s Taxonomy
What should a student remember at the end of the course?
By the end of the course, the students should be able to apply machine learning models in real-world applications.
- Understanding of in depth details about the machine learning models
- Solve the problem in hand by apply machine learning models
- Ability to analyze the models capacity and performances.
What should a student be able to understand at the end of the course?
By the end of the course, the students should be able to choose the correct machine learning model.
- Suitability of different machine learning models in different scenarios
- Ability to choose the right model for the given problem
What should a student be able to apply at the end of the course?
By the end of the course, the students should be able to deploy and developed models.
- Hands on experience to implement different models to know inside behavior
- Sufficient exposure to train and deploy model for the given task
- Fine tune the deployed model in the real-world settings
Course evaluation
Proposed points | ||
---|---|---|
Labs/seminar classes | 20 | 20 |
Interim performance assessment | 30 | 50 |
Exams | 50 | 30 |
Grades range
Proposed range | ||
---|---|---|
A. Excellent | 90-100 | 90-100 |
B. Good | 75-89 | 75-89 |
C. Satisfactory | 60-74 | 60-74 |
D. Poor | 0-59 | 0-59 |
Resources and reference material
- Handouts supplied by the instructor
- Materials from the interment and research papers shared by instructor
Course Sections
The main sections of the course and approximate hour distribution between them is as follows:
Section | Section Title | Teaching Hours |
---|---|---|
1 | Neural Networks | 16 |
2 | Graphical Model and Evolutionary Computation | 12 |
3 | Collaborative Filtering and Generative Models | 8 |
4 | Reinforcement Learning | 8 |
Section 1
Section title:
Neural Networks
Topics covered in this section:
- Neural Network Architectures
- Recurrent Neural Networks
- LSTM and Attention
What forms of evaluation were used to test students’ performance in this section?
|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1
Typical questions for ongoing performance evaluation within this section
- What is the role of activation function in artificial neural network?
- How Recurrent neural network can efficiently utilize the sequential information?
- How you will evaluate the models that it learns the concept correctly?
- How you distinguish different neural networks?
Typical questions for seminar classes (labs) within this section
- Implementation of neural networks for classification and regression problems
- Implement neural networks of natural language processing task
- Fine tune the neural networks for given problem
- Find the optimal hyper-parameters to converge the neural network
Test questions for final assessment in this section
- Calculate the parameters for the given dataset
- Analyze the problem and choose the correct neural network for the given problem
- Explanation of the model selection and designed architecture
- Different learning rates and initialization
- Batch processing and GPU consideration
Section 2
Section title:
Graphical Models and Evolutionary Computation
Topics covered in this section:
- Hidden Markov Model
- Decoding and inferencing in graphical models
- Evolutionary Computation - Genetic Algorithm
What forms of evaluation were used to test students’ performance in this section?
|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1
Typical questions for ongoing performance evaluation within this section
- Calculate the probabilities for making decisions
- Draw the graphical models for given problem
- Perform the classification task through graphical models
- Comparison of the models and gold standard test
Typical questions for seminar classes (labs) within this section
- Implement graphical models
- Perform decoding task
- Implement inferencing task for the given problem
- Calculate the performance measures
- Analyze the model performance.
Test questions for final assessment in this section
- Design and analyze the graphical models
- Dry run the model to make decisions for classification tasks
- Calculate the performance measures
- Perform the analysis over the given dataset
Section 3
Section title:
Collaborative Filtering and Generative Models
Topics covered in this section:
- Collaborative Filtering
- Simple GAN
- Conditional GAN
- Time-series prediction
What forms of evaluation were used to test students’ performance in this section?
|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1
Typical questions for ongoing performance evaluation within this section
- how to find the equilibrium point in GANs?
- How you can define discriminator and generator?
- How you can make suitable setting to train the model correctly?
- How you will evaluate your model?
- What are the effects of different loss functions?
Typical questions for seminar classes (labs) within this section
- Implement GAN for given task
- Implement conditional GAN
- Analysis of different loss functions
- Experiments to look-inside for network convergence
Test questions for final assessment in this section
- Design and define the generative models for the given task
- What are the possible solutions to make the training fast?
- How you can initialize the data distribution and its impact.
- What are the possible solutions if discriminator is two strong?
Section 4
Section title:
Reinforcement Learning
Topics covered in this section:
- Value-based Reinforcement Learning
- Policy-based Reinforcement Learning
- Q-Learning
- Policy Gradients
- Deep Q Network (DQN)
What forms of evaluation were used to test students’ performance in this section?
|a|c| & Yes/No
Development of individual parts of software product code & 1
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 0
Essays & 0
Oral polls & 0
Discussions & 1
Typical questions for ongoing performance evaluation within this section
- What are the different kinds of Reinforcement Learning?
- What is the relationship between the agent and state?
- How you define fully and partially observed states?
- Explain Markov decision process in fully observed situations
Typical questions for seminar classes (labs) within this section
- Implement Q learning algorithm
- Analyze the performance of DQN
- Understand the loss functions and network architecture details
- Apply reinforcement learning to a given task
Test questions for final assessment in this section
- Calculate the next move of the agent in fully observed state
- Explain the model outcome in reinforcement learning scenarios
- What kind of tasks we can solve through reinforcement learning models?
- Calculate the value of an agent for the next move