Machine Learning

 
Machine Learning course
Academic Year 2016-2017
MSc in Telecommunications Engineering
MSc in Electronic Engineering
PhD programme in Electronic and Computer Engineering

 

News. The third (and final) intermediate assessment (Python) will be held next Thursday,  June 15th, at 3 pm, in room B0 (DIEE, building B).

The results of the second pre-intermediate assessment are available here (recall that the maximum was 21).

The results of the first pre-intermediate assessment are available here.

Course objectives and outcome

Objectives

The objective of this course is to provide students with the fundamental elements of machine learning and its applications to pattern recognition. The main concepts and methods of machine learning and statistical pattern recognition are presented, as well as basic methods to design and evaluate the performance of a pattern recognition system.
 

Outcome

An understanding of fundamental concepts and methods of machine learning, statistical pattern recognition and its applications. An ability to analyse and evaluate simple algorithms for pattern classification. An ability to design simple algorithms for pattern classification,  code them with Python programming language and test them with benchmark data sets. 


Class schedule

Monday, h. 15:00-18:00, BI classroom

Thursday, h. 10:00-13:00, M classroom


Syllabus - MSc in Telecommunications Engineering (6 CFU)
1. Introduction (2 hours)
2. Bayesian decision theory (6 hours)
3. Introduction to pattern classification methods (2 hours)
4. Parametric methods (4 hours)
5. Non parametric methods and decision trees (4 hours)
6. Linear discriminant functions and support vector machines (4 hours)
7. Artificial neural networks (4 hours)
8. Performance evaluation (2 hours)
9. Clustering Methods (2 hours)
10. Adversarial machine learning (2 hours)
11. Exercises (12 hours)
12. Python Programming language and computer exercises (16 hours)
 
Course grading and material (6 CFU)
• Home computer-exercise assignment + Oral examination
   — You can do intermediate assessments instead of the oral examination
   — You can do intermediate assessments instead of the home computer- exercise assignment
   — You can do the oral examination only after the computer exercise — Teams of 3 students maximum can do the home computer exercise
• Grading policy = Computer exercise (10/30) + Oral examination (20/30)
• Reference book: Pattern Classification (2^ edizione), R. O. Duda, P. E. Hart, e D. G. Stork, John Wiley & Sons, 2000
 
 
Syllabus - MSc in Electronic Engineering (4 CFU)
1. Introduction (2 hours)
2. Bayesian decision theory (6 hours)
3. Introduction to pattern classification methods (2 hours)
4. Parametric methods (2 hours)
5. Decision trees (2 hours)
6. Artificial neural networks (4 hours)
7. Performance Evaluation (2 hours)
8. Exercises (4 hours)
9. Python Programming language and computer exercises (16 hours)
 
Course grading and material  (4 CFU)
• Home computer-exercise assignment + Oral examination
   — You can do intermediate assessments instead of the oral examination
   — You can do intermediate assessments instead of the home computer- exercise assignment
   — You can do the oral examination only after the computer exercise — Teams of 3 students maximum can do the home computer exercise
• Grading policy = Computer exercise (20/30) + Oral examination (10/30)
• Reference book: Pattern Classification (2^ edizione), R. O. Duda, P. E. Hart, e D. G. Stork, John Wiley & Sons, 2000

Examples of exercises for the first intermediate assessment

Examples of exercises for the second intermediate assessment

Slides (and Exercises)

Part 1 - Introduction to the course

Part 2 - Elements of Bayesian Decision Theory (Exercises)

Part 3 - Introduction to Statistical Classification Techniques

Part 4 - Elements of Parametric Techniques (Exercises)

Part 5 - Elements of NonParametric Techniques (Exercises)

Part 6 - Elements of Linear Discriminant Functions (Exercises)

Part 7 - Neural Networks

Part 8 - Elements of Performance Evaluation

Part 9 - Elements of Data Clustering (Exercises)

Laboratory

Part 1 - Python basics

Part 2 - Data Sampling, Visualization, Learning and Classification (Code)

Part 3 - Performance Evaluation (Code)

Part 4 - Parameter Estimation (Code)

Part 5 - Short seminar on Adversarial Machine Learning (Code)


Contacts

Prof. Fabio Roli  

Dr. Battista Biggio   battista.biggio(at)diee.unica.it

Dr. Luca Didaci   didaci(at)diee.unica.it