AML / Spring 2017 - Algorithmic Machine Learning
This course aims at providing a solid and practical algorithmic foundation to the design and use of scalable machine learning algorithms, with particular emphasis on the MapReduce programming model. Students will get familiar with a wide range of topics, through the application of theoretic ideas on problems of practical interest. This is a "reverse class", in which students are required to study (or revise) a particular topic at home, and apply what they have learned solving real world problems, including industrial applications, during numerous laboratory sessions. Laboratory sessions are based on modern technologies such as Jupyter Notebooks.
Teaching and Learning Methods: Laboratory sessions (group of 2 students)
Course Policies: Attendance to Lab sessions is mandatory.
Clouds / Fall 2016 - Distributed Systems and Cloud Computing
The goal of this course is to provide a comprehensive view on recent topics and trends in distributed systems and cloud computing. We will discuss the software techniques employed to construct and program reliable, highly-scalable systems. We will also cover architecture design of modern datacenters and virtualization techniques that constitute a central topic of the cloud computing paradigm. The course is complemented by a number of lab sessions to get hands-on experience with Hadoop and the design of scalable algorithms with MapReduce.
Teaching and Learning Methods: Lectures and Lab sessions (group of 2 students)
Course Policies: Attendance to Lab session is mandatory.
In 2016, Pietro Michiardi and his coauthors won the Best Paper Award for their paper "Access-time Cache Aware Algorithms" presented at the conference ITC2016 (28th International Teletraffic Congress).