The Machine Learning course will be organized with introductory lectures to the subject, followed by hands-on sessions where participants will be able to put into practice the main concepts.
In the lectures, an overview of the wide adoption of machine learning (ML) and deep learning (DL) techniques in science and beyond will be given, as well as an overview to the main ML/DL tools and framework used world-wide. A review of most common algorithms will be presented, including different kinds of neural networks (NN), like CNN and RNN, and their current and future usage in (selected) INFN research areas.
The hands-on parts aim at putting the concepts into practice through examples. Starting from getting familiar with the Python language and useful libraries for ML (e.g. scikit-learn), the hands-on sessions will dive into a series of exercises of increasing complexity, using more complex real-world datasets, as well as exploring more complete and powerful tools and frameworks, like Keras with Google Tensorflow as a back-end, or Pytorch.
The exercise will be prepared in such a way to allow a practical training at the course but also their continuation at home after the short training ends. The implication in terms of computing hardware (e.g. CPU vs GPU vs FPGA vs TPU) and the hidden technical debt in ML systems will also be briefly covered, as well as on-premise vs cloud access to computing resources for ML/DL at scale.