Aprenentatge Automàtic

Crèdits
6
Tipus
Obligatòria d'especialitat (Ciència de les Dades)
Requisits
Aquesta assignatura no té requisits, però té capacitats prèvies
Departament
CS
The aim of machine learning is the development of theories, techniques and algorithms to allow a computer system to modify its behavior in a given environment through inductive inference. The goal is to infer practical solutions to difficult problems --for which a direct approach is not feasible-- based on observed data about a phenomenon or process. Machine learning is a meeting point of different disciplines: statistics, optimization and algorithmics, among others.

The course is divided into conceptual parts, corresponding to several kinds of fundamental tasks: supervised learning (classification and regression) and unsupervised learning (clustering, density estimation). Specific modelling techniques studied include artificial neural networks and support vector machines. An additional goal is getting acquainted with python and its powerful machine learning libraries.

Professorat

Responsable

  • Mario Martín Muñoz ( )
  • Marta Arias Vicente ( )

Altres

  • Bernat Coma Puig ( )
  • Raquel Leandra Pérez Arnal ( )

Hores setmanals

Teoria
1.9
Problemes
0
Laboratori
1.9
Aprenentatge dirigit
0
Aprenentatge autònom
6.86

Competències

Competències Tècniques Generals

Genèriques

  • CG1 - Capacitat per aplicar el mètode científic en l'estudi i anàlisi de fenòmens i sistemes en qualsevol àmbit de la Informàtica, així com en la concepció, disseny i implantació de solucions informàtiques innovadores i originals.
  • CG3 - Capacitat per al modelatge matemàtic, càlcul i disseny experimental en centres tecnològics i d'enginyeria d'empresa, particularment en tasques de recerca i innovació en tots els àmbits de la Informàtica.
  • CG5 - Capacitat per aplicar solucions innovadores i realitzar avenços en el coneixement que explotin els nous paradigmes de la Informàtica, particularment en entorns distribuïts.

Competències Transversals

Raonament

  • CTR6 - Capacitat de raonament crític, lògic i matemàtic. Capacitat de resoldre problemes en la seva àrea d'estudi. Capacitat d'abstracció: capacitat de crear i utilitzar models que reflecteixin situacions reals. Capacitat de dissenyar i realitzar experiments senzills, i analitzar-ne i interpretar-ne els resultats. Capacitat d'anàlisi, de síntesi i d'avaluació.

Bàsiques

  • CB6 - Que els estudiants sàpiguen aplicar els coneixements adquirits y la seva capacitat de resolució de problemes en entorns nous o poc coneguts dins de contexts més amplis (o multidisciplinaris) relacionats amb la seva àrea d'estudi.

Competències Tècniques de cada especialitat

Específiques comunes

  • CEC1 - Capacitat per aplicar el mètode científic en l'estudi i anàlisi de fenòmens i sistemes en qualsevol àmbit de la Informàtica, així com en la concepció, disseny i implantació de solucions informàtiques innovadores i originals.
  • CEC2 - Capacitat per al modelatge matemàtic, càlcul i disseny experimental en centres tecnològics i d'enginyeria d'empresa, particularment en tasques de recerca i innovació en tots els àmbits de la Informàtica.

Objectius

  1. Formulate the problem of (machine) learning from data, and know the different machine learning tasks, goals and tools.
    Competències relacionades: CG3, CEC1,
  2. Organize the workflow for solving a machine learning problem, analyzing the possible options and choosing the most appropriate to the problem at hand
    Competències relacionades: CB6, CEC1, CEC2, CTR6, CG5,
  3. Ability to decide, defend and criticize a solution to a machine learning problem, arguing the strengths and weaknesses of the approach. Additionally, ability to compare, judge and interpret a set of results after making a hypothesis about a machine learning problem
    Competències relacionades: CG1, CEC1, CEC2, CTR6,
  4. Understand and know how to apply least squares techniques for solving supervised learning problems
    Competències relacionades: CG3, CEC2, CTR6,
  5. Understand and know how to apply techniques for single and multilayer neural networks for solving supervised learning problems
    Competències relacionades: CG3, CB6, CEC2, CTR6,
  6. Understand and know how to apply support vector machines for solving supervised learning problems
    Competències relacionades: CG3, CB6, CEC2, CTR6, CG5,
  7. Understand and formulate different theoretical tools for the analysis, study and description of machine learning systems
    Competències relacionades: CG3, CTR6, CG5,
  8. Understand and know how to apply the basic techniques for solving unsupervised learning problems
    Competències relacionades: CG3, CB6,

Continguts

  1. Introduction to Machine Learning
    General information and basic concepts. Overview to the problems tackled by machine learning techniques. Supervised learning (classification and regression), unsupervised learning (clustering and density estimation) and semi-supervised learning (reinforcement and transductive). Examples.
  2. Supervised machine learning theory
    The supervised Machine Learning problem setup. Classification and regression problems. Bias-variance tradeoff. Regularization. Overfitting and underfitting. Model selection and resampling methods.
  3. Linear methods for regression
    Error functions for regression. Least squares: analytical and iterative methods. Regularized least squares. The Delta rule. Examples.
  4. Linear methods for classification
    Error functions for classification. The perceptron algorithm. Novikoff's theorem. Separations with maximum margin. Generative learning algorithms and Gaussian discriminant analysis. Naive Bayes. Logistic regression. Multinomial regression.
  5. Artificial neural networks
    Artificial neural networks: multilayer perceptron and a peak into deep learning. Application to classification and to regression problems.
  6. Kernel functions and support vector machines
    Definition and properties of Kernel functions. Support vector machines for classification and regression problems.
  7. Unsupervised machine learning
    Unsupervised machine learning techniques. Clustering algorithms: EM algorithm and k-means algorithm.
  8. Ensemble methods
    Bagging and boosting methods, with an emphasis on Random Forests

Activitats

Activitat Acte avaluatiu




Mid-term exam (test)


Objectius: 1 2 3
Setmana: 7
Tipus: examen de teoria
Teoria
1h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
8h

Final exam


Objectius: 1 2 3 4 5 6 7 8
Setmana: 17
Tipus: examen final
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
16h

Course project


Objectius: 1 2 3 4 5 6 7 8
Setmana: 18
Tipus: entrega
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
25h

Metodologia docent

The course introduces the most important concepts in machine learning and its most relevant techniques with a solid foundation in math. All the theory and concepts are illustrated and accompanied by real-world examples and code using open source libraries.

The theory is introduced in lectures where the teacher exposes the concepts, and during the lab sessions students will see many examples on how to apply the methods and theory learned, as well as code their own solutions to exercises proposed by the teacher.

Students have to work on a course project using a real-world dataset.

Mètode d'avaluació

The course is graded as follows:

P = Grade of mid-term test-type exam
F = Score of the final exam
L = Score for the practical work

final grade = 20% P + 40% F + 40% L

Bibliografia

Bàsica:

Complementaria:

Web links

Capacitats prèvies

Elementary notions of probability and statistics.
Elementary linear algebra and real analysis
Good programming skills in a high-level language