Objective: introducing students to modern architectures for high performance computing. Students will learn how to properly test such architectures (computing power, bandwidth, latency, energy efficiency). Leveraging these skills, students will be introduced to the parallel programming based on MPI protocols (Message Passing Interface) and multi-threading with OpenMP.
Foundations of Data Science
Objective: providing students with the methodological, theoretical and practical tools to formulate linear programming models and combinatorial optimization problems and to solve them, even for high dimensionality problems, using appropriate optimization software.
Objective: providing students with practical information on how to design data models and data structures, to manage metadata to optimize access and research, and to become familiar with interoperability standards. The course will focus on the concept of open data, with efficiency for big data projects, and the concept of cloud as an infrastructure for data management and their processes.
Objective: providing numerical analysis tools for scientific computing, with particular attention to linear algebra, polynomial approximation, numerical integration, numerical solution of ordinary differential equations and partial differential equations, approximation of eigenvalues and eigenvectors.
Objective: Introduce the students to the machine learning fundamentals, to the main techniques on supervised learning, and to the principal application domains. Present evolutionary calculation. The course explains how to design, develop and evaluate simple ML-based end-to-end systems and, at the same time, how to describe their operations.
Objective: introducing students to computational management of data, in particular the characterization of an information system, data modeling, design and management of databases, including non-traditional ones (eg, unstructured documents, spatial data, biological data , multimedia data), to the fundamentals of distributed data and to methodologies and techniques for the management and analysis of big data.
Objective: introduce the student to the principles of learning from data based on statistics, and to the scientific treatment of data to obtain new and reproducible knowledge. Some of the main supervised and unsupervised statistical learning techniques are presented.
Objective: presenting the most important conceptual aspects of information retrieval systems and both principles and techniques for data visualization.
Objective: introducing cyber-physical systems, with particular regard to modeling them with hybrid formalisms and the formal verification of their properties. Presenting both notions and main techniques of Reinforcement Learning.
Objective: introducing advanced computational and statistical techniques for the analysis of clinical data.
Objective: introduce modern computational techniques and machine learning techniques for the analysis of natural language.
Objective: introducing concepts and techniques for collaborative development of large and complex software systems for industrial applications, including Java, software development lifecycle, best practices in software development as code testing, versioning, and design patterns.
The course introduces the main concepts in information theory and algorithmic information theory.
Objective: introducing machine learning techniques for artificial vision and pattern recognition in sequential data.
Notes: Begins on Octorber 9th.
Objective: providing advanced knowledge of both theoretical and practical programming in C / C ++ and Python, with particular regard to the principles of object oriented programming and best practices of software development (advanced use of version control systems, continuous integration, unit testing), and introducing the modern technology of algorithms development.
Objective: introducing the main algorithmic methods for the storage, compression and analysis of large amounts of biological data, with particular emphasis on the treatment of sequencing data produced with next generation sequencing technologies.
Objective: introducing to the main techniques for the design of algorithms and data structures to manipulate strings, trees and large graphs, in particular to compression techniques and randomization.
Objective: You will learn how to organize, transform, analyse and visualize data, with a focus on the relational data model, and a detour to semistructured data. You will learn the fundamentals of data science using R environment.
Objective: introducing techniques of analysis and statistical Bayesian inference.
Objective: presenting statistical analysis techniques for social networks and other social and economic networks.
Objective: introducing cyber-physical systems, with particular regard to modeling them with hybrid formalisms and the formal verification of their properties.