Contactar esade

Artificial Intelligence I (19CBA11005)

General information






S semester

ECTS Credits:


Teaching Staff:

Group Teacher Department Language
Sec: A Esteve Almirall Mezquita Operaciones, Innovación y Data Sciences ENG

Group Teacher Department Language
Sec: B Esteve Almirall Mezquita Operaciones, Innovación y Data Sciences ENG


Comfortable using Python with Pandas, Numpy and graphics libraries such as Matplotlib, Seaborn, Bokeh or Plotly.

Basic knowledge of statistics and algebra.

Basic understanding of sql and non-sql databases


Through the last two decades we have been witnessing how the use of Artificial Intelligence is changing the nature of business and the nature of how business compete. Organizations are developing new proposals unbelievable just a few years ago but at a scale and speed as never before. AI is at the very center of all this. These new organizations are not built only on the basis of analysis but with an aim of transformation, a transformation mostly driven by AI.

Course Learning Objectives

After completing this course you should be able to:

1) Have a broad vision of what is AI and where are the most active vectors of growth and transformation.
2) Be familiar the most common tools in Machine Learning.
3) Be able to use in Python the most common tools of ML for analyzing data.


1. Intro to AI & Machine Learning

This module will provide an intro to the field of Artificial Intelligence and in particular to Machine Learning, providing the basis for the course.

2. Feature Selection, Engineering & Visualization

Using pandas, seaborn, plotly, ipwidgets and Dash we will walk through the basis of feature selection and engineering in large datasets and visualization.

3. Hipothesis Testing - A/B Testing

In this module we will use Python to do Hypothesis Testing and A/B testing using the frequentist approach, multi-arm bandits and the bayesian approach.
We will also discuss in depth the validity o the p-value approach.

4. Unsupervised Learning - Clustering

This module will be devoted to unsupervised learning: clustering and hierarchical clustering. For that we will use both BigML and Python.

5. Supervised Learning - Decision Trees

This module will be devoted to Decision Trees for both classification and regression. Again BigML and Python will be used.

6. Random Forest

Random Forest is one of the most popular methods, extending Decision Trees towards a robust learner. Again we will use BigML and Python.

7. XGBoost

XGBoost is possibly the most powerful algorithm in use now for tabular data, both in regression and classification. This module will cover it at length.

8. Regressions, lasso and ridge and logistic

This module will cover traditional and contemporary regression algorithms together with logistic regression for classification.

9. Dimensionality Reduction & Text processing

This module will approach the topics of dimensionality reduction with PCA and text processing, so common today with exercises using sentiment analysis and wordclouds.

10. Causality

In machine learning we are mostly interested in prediction, however determining causality, particularly from data alone is crucial in many areas. In this session we will explore this emerging field of A.I..


Teaching methodology will be a combination of theory with coding examples combined with class exercises done in groups.

Guest speakers will also contribute with their expertise regularly.

Assessment criteria

The evaluation will consist on three elements: participation a personal coding project using a jupyter notebook and a final exam.

Attendance, participation and contributions to class 10%
Lab 40%
Final exam 50%

Timetable and sections

Group Teacher Department
Sec: A Esteve Almirall Mezquita Operaciones, Innovación y Data Sciences

Timetable Sec: A

Group Teacher Department
Sec: B Esteve Almirall Mezquita Operaciones, Innovación y Data Sciences

Timetable Sec: B