

Machine Learning course
Academic Year 20172018
MSc in Telecommunications Engineering
MSc in Electronic Engineering
PhD programme in Electronic and Computer Engineering




News: The teaching assessment form has been updated. Please fill it in at the end of this page. Moreover, the course mailing list is now active. Please subscribe by sending an email to mlunica+subscribe (at) googlegroups.com
Monday Apr 16, h1719 meeting room DIEE (ex Pad B): consultation with students on exercises for the first intermediate assessment. Please confirm participation by sending an email to battista.biggio (at) diee.unica.it
First intermediate assessment (2017)  Complementary exercises
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
Wednesday, h. 15:0018:00, BA classroom
Thursday, h. 8:0011:00, Lab L.I.D.I.A. multifunzionale 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 computerexercise 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 computerexercise 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
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