Machine Learning (AIL304m)
Vietnamese title: Học máy
Credits: 3
Prerequisites: MAS291, MAE101

Description:
In this course, student will build and train neural network, and you will learn the best practices to train and develop test sets and analyze bias/variance for building deep learning applications; be able to use standard neural network techniques such as initialization, L2 and dropout regularization, hyperparameter tuning, batch normalization, and gradient checking; implement and apply a variety of optimization algorithms, such as mini-batch gradient descent, Momentum, RMSprop and Adam, and check for their convergence; and implement a neural network in TensorFlow. Student make extensive use of tools from Linear Algebra, Calculus, Optimization.

Learning outcomes:
Deeply understand the math that makes machine learning algorithms work.
Able to build, train and apply fully connected deep neural networks, implement efficient neural networks, identify key parameters in a neural network's architecture, and apply deep learning to students' own applications.
Able to train and develop test sets, analyze bias/variance for building deep learning applications, apply optimization algorithms, and implement a neural network using TensorFlow.
Understand complex ML settings, diagnose errors in a machine learning system, prioritize strategies for reducing errors, and apply end-to-end learning, transfer learning, and multi-task learning.
Practical project with Tensorflow

Student tasks:
- Students must attend at least 80% of contact slots in order to be accepted to the final examination.
- Student is responsible to do all exercises, assignments and labs given by instructor in class or at home and submit on time
- Use laptop in class only for learning purpose
- Promptly access to the https://flm.fpt.edu.vn/ for up-to-date course information

Tools:
- Jupyter notebook

Materials:
description: https://www.coursera.org/specializations/deep-learning
author: Coursera
publisher: Coursera
description: https://www.coursera.org/learn/neural-networks-deep-learning
author: Coursera
publisher: Coursera
description: https://www.coursera.org/learn/deep-neural-network?specialization=deep-learning
author: Coursera
publisher: Coursera
description: https://www.coursera.org/learn/machine-learning-projects?specialization=deep-learning
author: Coursera
publisher: Coursera
description: https://www.coursera.org/learn/machine-learning-linear-algebra?specialization=mathematics-for-machine-learning-and-data-science
author: Coursera
publisher: Coursera
description: https://www.coursera.org/learn/tensorflow-for-ai-get-to-know-tensorflow/ungradedLti/fsCCK/tensorflow-for-ai-get-to-know-tensorflow
author: Coursera
publisher: Coursera
note: Project 1
description: https://www.coursera.org/projects/googlecloud-classify-images-of-cats-and-dogs-using-transfer-learning-6qgew
author: Coursera
publisher: Coursera
note: Project 2
description: https://www.coursera.org/projects/introduction-to-fastapi-framework
author: Coursera
publisher: Coursera
note: Project 3

Assessments:
category: Lab
type: on-going
weight: 20.0
duration: 1 day
question_type: Lab1: CLO1
Lab 2: CLO2
knowledge_and_skill: 2
grading_guide: Lab1: cover content of Module 1
Lab 2: cover content of Module 2
note: at home, by instructor
category: Progress test
type: on-going
weight: 20.0
duration: 20'-30'
question_type: PT1: CLO1;
PT2: CLO2, CLO3, CLO4
no_question: Multiple choices
Marked by Computer or a suitable format
knowledge_and_skill: 20
grading_guide: PT1: cover content of Module 1;
PT2: cover content of Module 2,3,4
note: in class, by instructor
category: Project
type: on-going
weight: 30.0
duration: 2 weeks
question_type: Project 1, 2: CLO2
Project 3: CLO4
knowledge_and_skill: 2
grading_guide: Project 1, 2: cover content of Module 2
Project 3: cover content of Module 4
note: at home, by instructor
category: Final exam
type: Final exam
weight: 30.0
duration: 60'
question_type: CLO1, CLO2, CLO3, CLO4,
no_question: Multiple choices
Marked by Computer
knowledge_and_skill: 50
grading_guide: all studied modules
note: by exam board,
using computer

Schedule:
session: Math Introduction
1.1: Systems of Linear equations: two variables.
learning_outcomes: IT
materials: AIL304m
session: Math Introduction
1.2: Systems of Linear Equations: three variables
learning_outcomes: IT
session: Solving systems of Linear Equations
1.3: Solving systems of Linear Equations: Elimination
learning_outcomes: IT
session: 1.4: Solving systems of Linear Equations: Row Echelon Form and Rank
learning_outcomes: IT
session: Vectors and Linear Transformations
1.5 Vectors
learning_outcomes: IT
session: 1.6: Linear transformations
learning_outcomes: IT
session: Programming Assignment: Single Perceptron Neural Networks for Linear Regression
Reset your deadline to
learning_outcomes: U
session: Determinants and Eigenvectors
1.7: Determinants In-depth
1.8: Eigenvalues and Eigenvectors
learning_outcomes: IT
session: Programming Assignment: Eigenvalues and Eigenvectors
learning_outcomes: U
session: Functions of one variable: Derivative and optimization
1.9: Derivatives
learning_outcomes: IT
session: Functions of one variable: Derivative and optimization
1.10: Optimization with derivatives
learning_outcomes: IT
session: Programming Assignment: Optimizing Functions of One Variable: Cost Minimization
learning_outcomes: U
session: Functions of two or more variables: Gradients and gradient descent
1.11: Gradients and optimization
1.12: Gradient Descent
learning_outcomes: IT
session: Functions of two or more variables: Gradients and gradient descent
1.13: Optimization in Neural Networks
learning_outcomes: IT
session: Functions of two or more variables: Gradients and gradient descent
1.14:Beyond Gradient Descent: Newton’s Method
learning_outcomes: IT
session: Lab01: Regression with Perceptron
learning_outcomes: U
session: Review Lab01
learning_outcomes: U
session: Progess test 1
learning_outcomes: U
session: 2. Introduction to Artificial Intelligence and Machine Learning
learning_outcomes: IT
session: 2.1 Neural Networks Basics
learning_outcomes: T
session: 2.2 Logistic Regression as a Neural Network
learning_outcomes: T
session: 2.3 Python and Vectorization
learning_outcomes: T
session: Programming Assignments: Logistic Regression with a Neural network mindset
learning_outcomes: U
session: 2.4 Shallow neural networks
learning_outcomes: T
session: 2.4 Shallow neural networks
learning_outcomes: T
session: Programming Assignments:Planar Data Classification with One Hidden Layer
learning_outcomes: U
session: Guidedline project 01: TensorFlow for AI: Get to Know Tensorflow
learning_outcomes: U
session: Guidedline project 01: TensorFlow for AI: Get to Know Tensorflow
learning_outcomes: U
session: Guidedline project 01: TensorFlow for AI: Get to Know Tensorflow
learning_outcomes: U
session: 2.5 Deep Neural Networks
learning_outcomes: T
session: 2.5 Deep Neural Networks
learning_outcomes: T
session: 2.5 Deep Neural Networks
learning_outcomes: T
session: Review Project 1
learning_outcomes: U
session: 2.5 Deep Neural Networks
learning_outcomes: T
session: 2.5 Deep Neural Networks
learning_outcomes: T
session: 2.5 Deep Neural Networks
learning_outcomes: T
session: Guidedline project 2: Neural Network from Scratch in TensorFlow
learning_outcomes: U
session: Guidedline project 2: Neural Network from Scratch in TensorFlow
learning_outcomes: U
session: Guidedline project 2: Neural Network from Scratch in TensorFlow
learning_outcomes: U
session: Lab 2 (Neural Networks)
learning_outcomes: U
session: Lab 2 (Neural Networks)
learning_outcomes: U
session: Lab 2 (Neural Networks)
learning_outcomes: U
session: 3.1 Practical aspects of Deep Learning
learning_outcomes: T
session: 3.1 Practical aspects of Deep Learning
learning_outcomes: T
session: 3.2 Optimization algorithms
learning_outcomes: T
session: 3.2 Optimization algorithms
learning_outcomes: T
session: 3.2 Optimization algorithms
learning_outcomes: T
session: Review Lab 2
learning_outcomes: U
session: Review project 2
learning_outcomes: U
session: 3.3 Hyperparameter tuning, Batch Normalization and Programming Frameworks
learning_outcomes: T
session: 3.3 Hyperparameter tuning, Batch Normalization and Programming Frameworks
learning_outcomes: T
session: 3.3 Hyperparameter tuning, Batch Normalization and Programming Frameworks
learning_outcomes: T
session: 3.3 Hyperparameter tuning, Batch Normalization and Programming Frameworks
learning_outcomes: T
session: Progess test 2
learning_outcomes: U
session: 4.1 ML Strategy 1
learning_outcomes: T
session: 4.1 ML Strategy 1
learning_outcomes: T
session: 4.1 ML Strategy 1
4.2 ML Strategy 2
learning_outcomes: T
session: Guidedline project 3: Deploy Models with TensorFlow Serving and Flask
learning_outcomes: U
session: Guidedline project 3: Deploy Models with TensorFlow Serving and Flask
learning_outcomes: U
session: Review project 3
learning_outcomes: U