Machine Learning and Deep Networks (28 hours)

Teacher: Mario Merone

The course will be structured in two parts:
Part I – Foundations. This part will give a broad introduction to machine learning, data mining, and statistical pattern
recognition. The topics will include supervised learning (e.g., support vector machines, kernels, neural networks) and
unsupervised learning (e.g., clustering, dimensionality reduction, deep learning). The issue of dimensionality of data will be also discussed, and the task of clustering data, as well as evaluating those clusters, will be tackled. Supervised
approaches for creating predictive models will be described. Part II – Applications. This part will introduce the learner to applied machine learning, focusing more on the techniques and methods than on the statistics behind these methods. Starting from numerous case studies and applications, the student will learn how to apply machine learning algorithms to computer vision, smart robotics, text understanding (web search, anti-spam), medical informatics, database mining, and other areas. The learners will be also able to apply the scikit learn predictive modelling methods while understanding process issues related to data generalizability (e.g. cross validation, overfitting).
Both parts will involve a relevant part of hands-on use of the illustrated techniques, based on dedicated Python libraries such as SciKit Learn and Keras, applied to selected case studies.