Corsi di Laurea Corsi di Laurea Magistrale Corsi di Laurea Magistrale
a Ciclo Unico
Scuola di Scienze
DATA SCIENCE
Insegnamento
ALGORITHMIC METHODS AND MACHINE LEARNING
SCP7079257, A.A. 2017/18

Informazioni valide per gli studenti immatricolati nell'A.A. 2017/18

Principali informazioni sull'insegnamento
Corso di studio Corso di laurea magistrale in
DATA SCIENCE
SC2377, ordinamento 2017/18, A.A. 2017/18
N0
porta questa
pagina con te
Crediti formativi 12.0
Tipo di valutazione Voto
Denominazione inglese ALGORITHMIC METHODS AND MACHINE LEARNING
Sito della struttura didattica http://datascience.scienze.unipd.it/2017/laurea_magistrale
Dipartimento di riferimento Dipartimento di Matematica
Obbligo di frequenza No
Lingua di erogazione INGLESE
Sede PADOVA
Corso singolo È possibile iscriversi all'insegnamento come corso singolo
Corso a libera scelta È possibile utilizzare l'insegnamento come corso a libera scelta

Docenti
Responsabile ALESSANDRO SPERDUTI INF/01
Altri docenti GIANMARIA SILVELLO ING-INF/05

Dettaglio crediti formativi
Tipologia Ambito Disciplinare Settore Scientifico-Disciplinare Crediti
CARATTERIZZANTE Tecnologie dell'informatica INF/01 6.0
CARATTERIZZANTE Tecnologie dell'informatica ING-INF/05 6.0

Modalità di erogazione
Periodo di erogazione Secondo semestre
Anno di corso I Anno
Modalità di erogazione frontale

Organizzazione della didattica
Tipo ore Crediti Ore di
Corso
Ore Studio
Individuale
Turni
LEZIONE 12.0 96 204.0 Nessun turno

Calendario
Inizio attività didattiche 26/02/2018
Fine attività didattiche 01/06/2018

Commissioni d'esame
Nessuna commissione d'esame definita

Syllabus
Prerequisiti: The student should have basic knowledge of programming.
Conoscenze e abilita' da acquisire: This class teaches the basics in algorithmic methods and machine learning.
The part of the course covering algorithmic methods will first concentrate on the main data structures and their efficient implementation. Attention will then shift to the fundamental algorithmic paradigms for problem solving and their applicability through the discussion of relevant case studies. The other part will focus on machine learning techniques typically used in a data science scenario. First of all, general concepts concerning machine learning will be introduced. Then, the theory underpinning each presented technique will be explained and subsequently followed by practical demonstrations using Python and Scikit-Learn.
Modalita' di esame: Written exam and (individual) project. The project is due by the end of the course.
Criteri di valutazione: The project work, and the written exam, will be evaluated on the basis of the following criteria: i) student’s knowledge of the concepts, methods, and technologies; ii) ability of the student to master the implementation technology; iii) student’s capacity for synthesis, clarity, and abstraction, as demonstrated by the written exam and project presentation. The final grade is obtained as the weighted sum of the grades of the written exam (80%) and the project (20%).
Contenuti: The course will cover the topics listed below:
- Algorithmic Methods:
Preliminaries: definition of problem, instance, solution, algorithm. Models of computation. Analysis of algorithms: correctness and running time,. Asymptotic analysis.
Basic data structures: lists, stacks, queues. Trees and their properties. Dictionaries and their implementation. Priority queues.
Graphs: representation of graphs. Basic properties. Graph searches and applications.
Divide and Conquer paradigm: the use of recursion. Recurrence relations. Case study: sorting.
Dynamic programming: coping with repeating subproblems. Memoization of recursive code. Case study: optimization algorithms on sequences.
Greedy paradigm: solving by successive choices. Applicability of the paradigm. Case study: data compression.
- Machine Learning
Introduction to Machine Learning: why machine learning is useful; when to use it.; where to use it; Machine Learning paradigms; basic ingredients of Machine Learning; complexity of the hypothesis space; complexity measures; examples of supervised learning algorithms.
Application Issues: classification pipeline, representation and selection of categorical variables; model selection, evaluation measures.
in Depth (theory and practice using Python and Scikit-Learn): Support Vector Machines; Decision Trees and Random Forest; Neural Networks and Deep Learning; Manifold Learning; Kernel Density Estimation.
Attivita' di apprendimento previste e metodologie di insegnamento: The course consists of lectures.
Eventuali indicazioni sui materiali di studio: Log of the lessons, didactic material (slides) and the detailed exam modalities will be available in the Website accessible from the MOODLE platform.
Testi di riferimento: