"Ever since computers were invented, we have wondered whether they might be made to learn. If we could understand how to program them to learn - to improve automatically from experience - the impact would be dramatic. Imagine computers learning from medical records which treatments are most effective for new diseases, houses learning from experience to optimize energy costs based on the particular usage patterns of their occupants, or personal software assistants learning the evolving interests of their users in order to highlight especially relevant stories from the online morning newspaper." Tom M. Mitchell, Machine Learning, Mc Graw-Hill 1999.


The course's objective is to transmit the theoretical basis of machine learning, to introduce various types of learning systems, including neural networks, support vector machines, decision trees and some unsupervised learning systems, and to give laboratorial practice on the use of several of these systems. The course is open to foreign students. All essential course materials are supplied in English. The classes will be in English if there is at least one student who requires it.


  • Alexandre Jose Malheiro Bernardino. Email: alex(at)isr(dot)ist(dot)utl(dot)pt
  • Margarida Silveira. Email: msilveira(at)isr(dot)ist(dot)utl(dot)pt

(Note - replace (at) by @ and (dot) by . )


  • Lectures
    • Tuesdays and Thursdays, 15:30h-17.00h, room EA 3.
  • Labs
    • Tuesdays and Thusdays, 17:00h-18:30h, room LSDC 1 (5th floor).
  • Questions (please book by email with 24h prior notice)
    • Prof. Margarida Silveira: Tuesdays, 14:00, Room 5.15. (5th floor)
    • Prof. Alexandre Bernardino: Fridays, 11:00, Room 5.15 (5th floor)

Lab Grades !!!

Exams !!!

Lecture Material

Lecture 1 - Introduction

Lecture 2 - Formulation of Machine Learning Problems

Lecture 3 - Basics of Function Approximation

Lecture 4 - Introduction to Neural Nets

Lecture 5 - The ADALINE

Lecture 6 - Introduction to Multi-Layer Perceptrons

Lecture 7 - Backpropagation

  • Lecture Slides
  • Also consult Multilayer Perceptrons, Luís Borges de Almeida (see Other Documents)

Lecture 8 - Evaluation and Validation

Lecture 9 - Dynamic Networks

Lecture 10 - Statistical Decision Theory

Lecture 11 - Statistical Decision Theory II

Lecture 12 - Statistical Properties of Neural Networks

Lecture 13 - Support Vector Machines

  • Lecture Slides
  • Also consult (see Other Documents)
    • "A Tutorial on Support Vector Machines for Pattern Recognition", Christopher Burges.
    • "Duality and Geometry in SVM Classifiers", Kristin Bennett and Erin Bredensteiner.

Lecture 14 - Support Vector Machines II

Lecture 15 - Support Vector Machines III

  • Lecture Slides
  • Also consult (see Other Documents)
    • "A Tutorial on Support Vector Regression", Alex Smola and Bernhard Scholkopf.

Lecture 16 - Unsupervised Learning I

Lecture 17 - Unsupervised Learning II

Lecture 18 - Unsupervised Learning III

Lecture 19 - Seminar Monte Carlo Methods (by Dr. Ruben Martinez-Cantin)

Lecture 20 - Data Normalization

Lecture 21 - Principal Component Analysis

Lecture 22 - Conclusions on Principal Component Analysis

  • Consult the Tutorial on Principal Component Analysis by Javier Movellan (see Other Documents).

Lecture 23 - Decision Trees

Lecture 24 - Conclusion on Decision Trees

Lecture 25 - Seminar by Prof. Margarida Silveira.

Laboratory Sessions

In the official fenix page

Other Documents

(require password)

Official Site

Want to learn more ?

Video Links


The materials provided in this course have been inspired in the materials of previous courses by Prof: Fernando Silva, Prof. Luís Almeida and Prof. Jorge Marques.