Machine Learning

2021-I


Course description

Instructor

Fabio A. González
Maestría en Ingeniería de Sistemas y Computación
Universidad Nacional de Colombia

Course goal

The main goal of Machine Learning (ML) is the development of systems that are able to autonomously change their behavior based on experience. ML offers some of the more effective techniques for knowledge discovery in large data sets. ML has played a fundamental role in areas such as bioinformatics, information retrieval, business intelligence and autonomous vehicle development.

The main goal of this course is to study the computational, mathematical and statistical foundations of ML, which are essential for the theoretical analysis of existing learning algorithms, the development of new algorithms and the well-founded application of ML to solve real-world problems.


Course topics

1 Learning Foundations

1.1 Introduction

1.2 Bayesian decision theory

1.3 Estimation

1.4 Linear models

1.5 Design and analysis of ML experiments

2 Kernel Methods

2.1 Kernel methods basics

2.2 Support vector learning

3 Neural Networks

3.1 Neural networks basics

3.2 Deep learning

3.3 Convolutional neural networks

3.4 Recurrent neural networks

3.5 Deep generative models

4 Probabilistic Programming

4.1 Bayesian Methods

4.2 Monte Carlo inference

4.3 Variational Bayes

5 Quantum Machine Learning

5.1 Learning with Density Matrices and Random Fourier Features


Evaluation and grading policy

  • Assignments 30%
  • Quizzes 20%
  • Exam 30%
  • Final project 20%

Grades


Course resources

References

Additional resources

  • SciPy: scientific, mathematical, and engineering package for Python
  • scikit-learn: machine learning Scipy add-on
  • Kaggle: datascience competition, many interesting data sets and different competitions with prizes.
  • Coursera Machine Learning Course: one of the first (and still one of the best) machine learning MOOCs taught by Andrew Ng.
  • Stanford Statistical Learning Course: an introductory course with focus in supervised learning and taught by Trevor Hastie and Rob Tibshirani.

Course schedule

Week Topic Material Assignments
Feb 23-Mar 2 1.1 Introduction Class video 23/02/2021
Class video 25/02/2021
Class video 02/03/2021
Class video 04/03/2021
Fabio González, Brief Introduction to ML (slides)
Linear Algebra and Probability Review (part 1 Linear Algebra, part 2 Probability)
Assignment 1
Mar 9 1.2 Bayesian decision theory Asynchronous Class (video 1) (video 2)
[Alp14] Chap 3 (slides) (annotated slides)
Practice problems 1
Mar 16 1.3 Estimation Asynchronous Class (video 1) (video 2)
[Alp14] Chap 4, 5 (slides)
Bias and variance (Jupyter notebook)
Practice problems 2
Mar 23
1.5 Design and analysis of ML experiments Asynchronous class (video 1) (video 2)
[Alp14] Chap 19 (slides)
Additional video: Hypothesis testing (video)
Assignment 2
Apr 6 2.1 Kernel methods basics Asynchronous class (video 1) (video 2)
Introduction to kernel methods (slides)
[Alp14] Chap 13 (slides)
[SC04] Chap 1 and 2
Practice problems 3
Apr 13 2.2 Support vector learning Asynchronous class (video 1) (video 2)
[Alp14] Chap 13 (slides)
An introduction to ML, Smola
Support Vector Machine Tutorial, Weston
Máquinas de vectores de soporte y selección de modelos (Jupyter Notebook)
Practice problems 4
Apr 20 3.1 Neural network basics Asynchronous class (video)
Neural networks, Representation Learning and Deep Learning (slides)
[Alp14] Chap 11 (slides)
Quick and dirty introduction to neural networks (Jupyter notebook)
Assignment 3
Apr 27 3.1 Neural network basics Asynchronous class (video)
[Alp14] Chap 11 (slides)
Backpropagation derivation handout
May 4-11 3.2 Deep learning
Asynchronous class (video 1, video 2)
Representation Learning and Deep Learning (slides)
Deep learning frameworks (slides)
Introduction to TensorFlow (Jupyter notebook)
Neural Networks in Keras (Jupyter notebook)
Practice problems 5
May 18 3.3 Convolutional neural networks Asynchronous class (video 1, video 2)
CNN for image classification in Keras (Jupyter notebook)
ConvNetJS demos
Feature visualization
Assignment 4
Practice problems 6
May 25 3.4 Recurrent neural networks Asynchronous class (video 1, video 2)
CNN for text classification handout
LSTM language model handout
Project proposal: 3 persons per group, maximum 2 pages describing problem, objectives and method (01/06/21)
Jun 1 3.5 Deep generative models Alexander Amini, Deep generative models (slides, video) (from MIT 6.S191)
Deep generative models (Jupyter notebook)
Jun 8 4.1 Bayesian Methods
4.2 Monte Carlo inference
Asynchronous class (video 1, video 2)
Radford M. Neal, Bayesian Methods for Machine Learning (slides)
Beery et al., Markov Chain Monte Carlo for Machine Learning, Adv Topics in ML, Caltech (slides)
Alex Rogozhnikov, Hamiltonian Monte Carlo explained
Jun 15 4.3 Variational Bayes Asynchronous class (video) Variational Bayes in Tensorflow
Variational Autoencoders in Tensorflow
Jun 22 5.1 Learning with Density Matrices and RFF Synchronous class (video 1, video 2)
Learning with DM and RFF slides
Learning with DM and RFF notebook
Aug 1 Final Project

Final Projects

sfdelgadop
TRANSFORMERS & REINFORCEMENT LEARNING ON 2048 GAME (video)
diagarciaar-dsvalencias-lahiguarans
CLASSIFICATORY MODEL FOR MOTOR NEURONAL SIGNALS. CNN VS. LSTM. (video)
gaacevedof
NEURAL NETWORK FOR FINANCIAL ASSETS FORECASTING (video)
ghamayac-ldbeltranb
Machine learning for classification of members of Colombian congress according to their number of judicial processes (video)
jlpadillag
Clasificación de Preguntas de StackOverflow de Acuerdo a su Estado de Solución (video)
jraba
NER MODEL IN JUDGMENTS OF THE COLOMBIAN CONSTITUTIONAL COURT (video)
julealc_anbermudezg
Clasificación de especies de Frailejón del páramo del Sumapaz mediante la morfología foliar (video)
jushernandezre-afestebanb-matovaro
Reconocimiento de entidades nombradas en Español usando BERT (video)
marortizmo-jmalagont-jsneizam
SURVIVAL PREDICTION USING MULTIPLE INSTANCE LEARNING FOR TRIPLE NEGATIVE BREAST CANCER (TNBC) (video)
srmedinac-josorior-lbetancourthc
ANOMALY DETECTION USING KERNEL DENSITY ESTIMATION WITH DENSITY MATRICES (video)
diarodriguezmo
Impressionism, Expressionism and Neural Networks (video)