MACHINE LEARNING AND DATA ANALYTICS
Learning outcomes of the course unit
The objective of this module is to provide students with the theoretical basis and practical knowledge of some relevant machine-learning and evolutionary computation algorithms, aimed at classifying data and optimizing classification and data analytics methods.
The methods described in the course will allow students to:
- learn and use inductive-learning algorithms
- learn and use neural nets and other algorithm classes for the supervised classification of data
- learn and use the main supervised and unsupervised clustering algorithms
- learn and use evolutionary computation and swarm intelligence algorithms
Entry-level courses in linear algebra and probability theory, such as those normally offered in the corresponding 3-year Laurea course, are necessary pre-requisites for this course.
Course contents summary
- Machine Learning Principles
- Supervised Learning
- Unsupervised Learning
- Evolutionary Computation
- Multi-layer Perceptrons
- Convolutional Networks
- Genetic Algorithms
- Genetic Programming
- Particle Swarm Optimization
Part 1: Introduction
Lesson 1: How to set up a machine learning experiment
Lesson 2: Learning-based classification
Lesson 3: Classification quality assessment
Part 2: Clustering
Lesson 4: Clustering basics and unsupervised clustering: K-means / Isodata
Lesson 5: Supervised clustering
Part 3: Neural Networks
Lesson 6: Introduction to neural networks
Lesson 7: Supervised learning algorithms: the Backpropagation algorithm
Lesson 8: Deep Learning
Lesson 9: Kohonen's self-organizing maps (SOM)
Lesson 10: Learning Vector Quantization
Part 4: Evolutionary Computation
Lesson 11: Basics
Lesson 12: Genetic Algorithms
Lesson 13: Genetic Programming
Lesson 14: Open research issues
Part 5: Swarm Intelligence
Lesson 15: Basics and Particle Swarm Optimization
Lesson 16: Ant algorithms
Part 6: Other learning-based classifiers
Lesson 17: Support Vector Machines
Lab 1: WEKA
Lab 2: Clustering
Lab 3: Multi-Layer Perceptrons
Lab 4: SOM-based clustering
Lab 5: Genetic algorithms
Lab 6: Genetic Programming
 C. W. Therrien, "Decision, estimation and classification" Wiley, 1989
 C. M. Bishop "Pattern Recognition and Machine Learning", Springer, 2006.
 R O Duda, P, E. Hart, D. G. Stork, "Pattern classification", 2nd Ed., Wiley, 2001
 A. Eiben, J. Smith "Introduction to Evolutionary Computing", 2nd ed., Springer, 2015.
 A.P. Engelbrecht "Computational Intelligence: An Introduction", 2nd. Edition, Wiley, 2007
Classroom teaching, 32 hours.
Labs, 16 hours.
Homework regularly assigned.
Assessment methods and criteria
Discussion of the homework assignment, collected in a single report.
After discussing the homework, a practical project will be assigned, consisting in the development of an application using the methods taught during the course, whose results will be presented and discussed by the student both as a written report and as an oral presentation.
By appointment (Scientific Complex, Building 1, floor 2, email stefano.cagnoni[AT]unipr.it).