Machine Learning II

This subject has not requirements, but it has got previous capacities
The goal of machine learning is the development of theories, techniques and algorithms that allow a system to modify its behaviour by observing data that represents incomplete information about a process or phenomenon subject to statistical uncertainty. Automatic learning is a meeting point for different disciplines: multivariate statistics, artificial intelligence, algorithmics and mathematical optimization, among others.The course takes advantage of modern learning techniques based on data, mainly deep artificial neural networks. A side goal is to get familiar with the corresponding computing environments.


Person in charge

  • Ferran Marques Acosta ( )


  • Carlos Hernández Pérez ( )
  • Jaume Alexandre Solé Gómez ( )
  • Javier Ruiz Hidalgo ( )
  • Laia Albors Zumel ( )

Weekly hours

Guided learning
Autonomous learning


Technical Competences

Technical competencies

  • CE1 - Skillfully use mathematical concepts and methods that underlie the problems of science and data engineering.
  • CE2 - To be able to program solutions to engineering problems: Design efficient algorithmic solutions to a given computational problem, implement them in the form of a robust, structured and maintainable program, and check the validity of the solution.
  • CE3 - Analyze complex phenomena through probability and statistics, and propose models of these types in specific situations. Formulate and solve mathematical optimization problems.
  • CE4 - Use current computer systems, including high performance systems, for the process of large volumes of data from the knowledge of its structure, operation and particularities.
  • CE5 - Design and apply techniques of signal processing, choosing between different technological tools, including those of Artificial vision, speech recognition and multimedia data processing.
  • CE6 - Build or use systems of processing and comprehension of written language, integrating it into other systems driven by the data. Design systems for searching textual or hypertextual information and analysis of social networks.
  • CE8 - Ability to choose and employ techniques of statistical modeling and data analysis, evaluating the quality of the models, validating and interpreting them.
  • CE9 - Ability to choose and employ a variety of automatic learning techniques and build systems that use them for decision making, even autonomously.

Transversal Competences


  • CT3 - Efficient oral and written communication. Communicate in an oral and written way with other people about the results of learning, thinking and decision making; Participate in debates on topics of the specialty itself.
  • CT5 - Solvent use of information resources. Manage the acquisition, structuring, analysis and visualization of data and information in the field of specialty and critically evaluate the results of such management.
  • CT6 [Avaluable] - Autonomous Learning. Detect deficiencies in one's own knowledge and overcome them through critical reflection and the choice of the best action to extend this knowledge.
  • CT7 - Third language. Know a third language, preferably English, with an adequate oral and written level and in line with the needs of graduates.

Generic Technical Competences


  • CG1 - To design computer systems that integrate data of provenances and very diverse forms, create with them mathematical models, reason on these models and act accordingly, learning from experience.
  • CG2 - Choose and apply the most appropriate methods and techniques to a problem defined by data that represents a challenge for its volume, speed, variety or heterogeneity, including computer, mathematical, statistical and signal processing methods.
  • CG3 - Work in multidisciplinary teams and projects related to the processing and exploitation of complex data, interacting fluently with engineers and professionals from other disciplines.
  • CG4 - Identify opportunities for innovative data-driven applications in evolving technological environments.
  • CG5 - To be able to draw on fundamental knowledge and sound work methodologies acquired during the studies to adapt to the new technological scenarios of the future.


  1. Organize the flow of solution of a machine learning problem, analyzing the possible options and elegint the mismatches to the problem
    Related competences: CE8, CG2, CT6,
  2. Decide, defend and criticise a solution for a machine learning problem, arguing the strong and weak points of appropriation.
    Related competences: CT6, CE1, CE2, CE3, CE4, CE5, CE6, CE8, CE9, CG1, CG2,
  3. Know and know how to apply advanced techniques to solve non-supervised learning problems, especially clustering.
    Related competences: CT5, CE1, CE2, CE4, CG1, CG2,
  4. Know and apply advanced techniques of learning methods based on deep learning, for the resolution of learning problems, both supervised and unsupervised.
    Related competences: CT5, CT7, CE1, CE2, CE3, CE4, CE8, CG1, CG2, CG5,
  5. To know and to know how to apply the various network architectures for solving complex problems with techniques of deep learning.
    Related competences: CT5, CE1, CE2, CE3, CE4, CE5, CE6, CE8, CG1, CG2, CG4, CG5,
  6. Know how to identify problems involving signal processing, such as data in the form of audio, image or video, or a combination of you, and solve them with advanced computer learning techniques.
    Related competences: CT5, CT7, CE1, CE2, CE3, CE4, CE5, CE8, CE9, CG1, CG2, CG3, CG4,
  7. Know how to identify problems involving human or non-human speech processing, such as data in the form of audio or text, or a combination thereof, and solve them with advanced computational learning techniques
    Related competences: CT3, CT7, CE1, CE2, CE3, CE4, CE6, CG1, CG2, CG3, CG4, CG5,


  1. Basic Elements in Neural Networks
    - Backpropagation
    - Perceptron and MLP .
    - Losses.
    - Optimizers.
    - Convolution
    - Pool and CNNs
    - Deconvolution and Skip
  2. Practical Aspects in Neuronal Networks
    - Interpretability
    - Methodology
    - Dropout and Regularization
    - Transfer Learning and Domain Adaptation
  3. Architectures
    - RNN, LSTM, GRU.
    - Attention and Transformers.
    - Generative GAN
    - GNN and AutoEncoders.


Activity Evaluation act

Development of subject 1

Objectives: 1 2 3
Guided learning
Autonomous learning

Development of subject 2

Objectives: 1 2 3 4 5
Guided learning
Autonomous learning

Development of subject 3

Objectives: 2 4 5 6 7
Guided learning
Autonomous learning

Teaching methodology

The theory classes introduce all the knowledge, techniques, concepts and results necessary to reach a well-founded level. These concepts are put into practice in the laboratory classes, in which the student learns to develop machine learning solutions to real problems of a certain complexity.

In the problem classes we will delve deeper to understand the theory by problem solving or by extending the concepts already seen.

In the laboratory classes, code is provided in various computing environments that allow solving a problem completely with the technique or techniques corresponding to the current topic.

Evaluation methodology

The subject is evaluated through a partial exam (P), a final exam (F) and the reports of the laboratory (L)

The final grade is calculated as:

Grade = MAX(0.3*L + 0.2*P + 0.5*F; 0.3*L + 0.7*F)

For the students who attend the re-evaluation (R): Grade = 0.3*L + 0.7*R




  • Machine Learning 2 - Giró-i-Nieto, Xavier; Marqués, Ferrán; Ruíz, Javier, Notes de classe , .

Previous capacities

Programming in Python.