88407 - APPLIED MACHINE LEARNING

Academic Year 2018/2019

  • Teaching Mode: Traditional lectures
  • Campus: Bologna
  • Corso: Second cycle degree programme (LM) in Bioinformatics (cod. 8020)

Learning outcomes

At the end of the course the student is able to handle different Machine Learning and Deep Learning models, to tune them to specific applications, and to design approaches that may scale with large amount of data

Course contents

Part 1 - Scratching the surface of the box

  • Real-worlds applications: examples of current and (possible) future outcomes of ML applications
  • Basic foundations of AI, ML, DL (with a focus on ML at large)
  • Mathematical models (classification, regression, clustering, dimensionality reduction, parametric vs non-parametric models)
  • Supervised vs unsupervised vs reinforcement learning
Part 2 - Opening the box
  • Loss functions, gradient descent
  • Linear regression, logistic regression
  • Overfitting, regularization, training procedures and cross validation
  • Neural networks, feed forward NN, multi-layer NN, regularization, activation functions, deep NN, decision trees and ensemble methods, random forest.
  • Elements of unsupervised learning
Part 3 - Jumping into the box
  • Practical advices: what approach to choose for your problem, how to debug your learning, cheat sheet of potential fixes
  • Hardwar: the right infrastructure for the right ML strategy tailored to your problem
Part 4 - Closing and running the box: applying tools from the box to a science use-case
  • applications of ML techniques to real-time examples (e.g. High-Energy Physics at the LHC accelerator at CERN)
Hands-on
  • overview of (selected) frameworks for ML
  • hands-on on scikit-learn, tensorflow, keras, pytorch

Readings/Bibliography

Course material will be shared, plus external MOOCs and books will be suggested during the course.

Teaching methods

Intuitions on the theory will be offered, and practical hands-on sessions on all ML frameworks and librarires, with real-world examples, will be held with Python and Jupyter notebook.

Assessment methods

A final end-to-end project on ML on a real dataset of interest.

Teaching tools

Slides for the theory, Python-based Jupyter notebooks for the exercises/tutorials.

Office hours

See the website of Daniele Bonacorsi