Knowledge and understanding.
Know main kinds of problems which can be tackled with ML, DM, and EC and those ones concerning text and natural language and recommendation
Know main ML and DM techniques; know the high-level working scheme of EAs.
Know design, development, and assessment phases of a ML system; know main assessment metrics and procedures suitable for a ML system.
Applying knowledge and understanding.
Formulate a formal problem statement for simple practical problems in order to tackle them with ML, DM, or EC techniques.
Develop simple end-to-end ML or DM systems.
Experimentally assess a simple end-to-end ML or DM system.
Judge the technical soundness of a ML or DM system.
Judge the technical soundness of the assessment of a ML or DM system.
Describe, both in written and oral form, the motivations behind choices in the design, development, and assessment of a ML or DM system, possibly exploiting simple plots.
Retrieve information from scientific publications about ML, DM or EC techniques not explicitly presented in this course.
Basics of statistics: basic graphical tools of data exploration; summary measures of variable distribution (mean, variance, quantiles); fundamentals of probability and of univariate and multivariate distribution of random variables; basics of linear regression analysis.
Basics of linear algebra: vectors, matrices, matrix operations; diagonalization and decomposition in singular values.
Basics of programming and data structures: algorithm, data types, loops, recursion, parallel execution, tree.
Introduction to data science; data analytics, machine learning and statistical learning approaches: common and distinctive aspects (more and more different in name only).
Recap. of main concepts and tools of probability and statistical inference.
Elements of statistical learning; regression function; assessing model accuracy and the bias-variance trade-off; cross-validation methods.
Supervised learning and linear models; model validation and selection; hints to regularization and extensions.
Definitions of Machine Learning and Data Mining; why ML and DM are hot topics; examples of applications of ML; phases of design, development, and assessment of a ML system; terminology.
Elements of data visualization.
Decision and regression trees: learning and prediction; role of the parameter and overfitting.
Trees aggregation: bagging, Random Forest, boosting.
Supervised learning system assessment: cross-fold validation; accuracy and other metrics; metrics for binary classification (FPR, FNR, EER, AUC) and ROC.
Support Vector Machines (SVM).
Separating hyperplane: maximal margin classifier; support vectors; learning as an optimization problem; maximal margin classifier limitations.
Soft margin classifier: learning, role of the parameter C.
Non linearly separable problems; kernel: brief background and main options (linear, polynomial, radial); intuition behind radial kernel; SVM,
Multiclass classification with SVM.
Supervised learning for classification.
Training and test error rate; the Bayes classifier.
Linear and quadratic discriminant analysis.
The K-nearest neighbors classifier.
Dimensionality reduction methods: principal component analysis; biplot.
Cluster analysis: hierarchical methods, partitional methods (k-means algorithm).
Text and natural language appliactions (text mining)
Sentiment analysis; features for text mining; common pre-processing steps; topic modeling.
Content-based filtering; collaborative filtering.
Assessment metrics: precision, recall, accuracy@K, diversity, serendipity.
Evolutionary Computation (EC).
High-level working scheme of an Evolutionary Algorithm (EA); terminology.
Generational model; selection criteria; exploration/exploitation trade-off; genetic operators with examples; fitness function; multi-objective optimization and Pareto dominance; debugging of an evolutionary search; EA issues (diversity, variational inheritance, expressiveness); fitness landscape.
Examples of common EAs: GA, GP, GE.
Frontal lessons with blackboard and slide projection; exercises, under teacher supervision, in dealing with simple problems with ML or DM techniques.
Final exam according to one of the following two options (student’s choice):
Written test + project (the final mark is the average of the two marks).
Written test with questions on theory and application with short open answers.
Project (home assignment) in which the student chooses a problem among a closed, teacher-defined set of problems and proposes a solution based on ML, DM, or EC techniques. The expected outcome is a written document (few pages) including: the problem statement; one or more performance indexes able to capture any solution ability to solve the problem; a description of the proposed solution from the algorithmic point of view; the results and a discussion about the experimental assessment of the solution with, if applicable, information about used data. Student may form groups for the project. The project will be evaluated according also to clarity.
Written test only.
Written test with questions on theory and application with medium- and short-length open answers.
Kenneth A. De Jong. Evolutionary computation: a unified approach. MIT press, 2006
Jerome Friedman, Trevor Hastie, and Robert Tibshirani. The elements of statistical learning: Data Mining, Inference, and Prediction. Springer, Berlin: Springer Series in Statistics, 2009.
Gareth James, Daniela Witten, Trevor Hastie and Robert Tibshirani. An Introduction to Statistical Learning, with applications in R. Springer, Berlin: Springer Series in Statistics, 2014.