The goal of this course is to provide an overview of classical Machine Learning algorithms, discussing modelling and computational aspects.
Learning how to use classical supervised and unsupervised machine learning algorithms by grasping the underlying computational and modeling issues.
UNDERSTAND and use the basic machine learning and statistical learning tools, considering supervised approaches, such as local methods, regularized methods with linear and non-linear models, and neural networks
UNDERSTAND and use unsupervised learning approaches such as clustering and dimensionality reduction.
UNDERSTAND how to effectively set-up machine learning pipelines
IMPLEMENT the learning algorithms presented in the course
DEVELOP the ability to critically analyze analytical results
Basic probability, calculus, linear algebra, programming.
Theoretical classes will be coupled with practical lab sessions Occasionally, students will be asked to work in groups (for code development and analysis, for instance)
The course will cover the following topics:
The material provided by the instructors (slides and papers), see the course Aulaweb page additional references.
Ricevimento: Appointment by email (nicoletta.noceti@unige.it)
NICOLETTA NOCETI (President)
LORENZO ROSASCO (President Substitute)
ALESSANDRO VERRI (Substitute)
In agreement with the calendar approved by the Degree Program Board of Computer Science.
The exam will be in written form and consist of theoretical questions and more practical exercises. The students will have the possibility of opting for a reduced version of the written exam by submitting two mid-term assignments (consisting of a practical lab activity in Python)
The exam will evaluate the overall understanding of Machine Learning basics, the capability to generalize the concepts to unseen problems and analyse the obtained results. Clarity of exposition, completeness of the concepts, quality of the proposed solutions and critical thinking will be taken into account.