|
|
3 Credits | 200 Level | 38 Contact hours
Are you interested in Artificial Intelligence? Then, machine learning and deep learning are for you! Today,
these methods are becoming ubiquitous not only in Sciences and Engineering, but also in our daily life.
From online platforms,such as Netflix and Amazon, to search engines,such as Google, machine (and deep)
learning is used to recommend content, predict customer behavior, and much more. As a discipline,
machine and deep learning analyze and design computer programs that learn from experience (as
Humans) in order to make predictions.
In this introductory course, we will cover the basics of these disciplines, starting with linear classification
and regression, and ending with reinforcement learning. The course will provide students with the basic
ideas and intuitions behind modern algorithms; and a hands-on experience based on different
programming challenges related to machine (and deep) learning, such as the implementation of a
recognition system of manuscript digits.
Unit 1. THE BASICS. Supervised, unsupervised and reinforcement learning. Training and test.
Generalization. Over fitting. Parameters and hyperparameters. Optimization algorithms. Gradient descent
algorithm. Stochastic gradient descent algorithm.
Unit 2. CLASSIFIERS. Linear classifiers. Separability. Maximum margin. Loss. Regularization. Non-linear
classification. Kernels.
Unit 3. REGRESSION. Linear regression. Ridge regression. Non-linear regression. Kernels.
Unit 4. DEEP LEARNING. Neural networks. Back propagation. Convolutional neural networks. Recurrent
neural networks.
Unit 5. RECOMMENDER PROBLEMS. Collaborative filtering. Generative models. Mixtures. Gaussian
mixtures. Expectation-Maximization (EM) algorithm.
Unit 6. UNSUPERVISED LEARNING. Clustering. Dimensionality reduction.
Unit 7. REINFORCEMENT LEARNING. State space, action space, dynamics, and reward model. Tabular
solution methods. Policy. Q learning. Exploration vs exploitation challenge.
1. Understand the principles of the basic machine learning and deep learning algorithms.
2. Implement and analyze different types of models, including linear models, non-linear models and
neural networks.
3. Select suitable models for a given application.
4. Implement simple machine learning and deep learning projects.
5. Define formally a reinforcement learning problem for a given application.
6. Implement common reinforcement learning algorithms.
|
|