Machine Learning

Base Knowledge

It is advisable that students have solid knowledge of math, statistics as well as Python programming.

Teaching Methodologies

Theoretical classes are lectures.

Practical classes are based on exercise resolutions. Some classes will be exclusively dedicated to solve work sheets.

All elements to support theoretical/practical classes are provided to students.

All classes theoretical/practical take place in a face-to-face classroom context

Learning Results

The main goal of Machine Learning Course is to provide students with a fundamental knowledge and skills, namely to:

  • identify the main steps of a real project based on Machine Learning;
  • analyze and prepare a dataset;
  • correctly identify several issues related to classifier’s evaluation (metrics, validation strategies);
  • know and apply the most relevant algorithms in Supervised Learning;
  • know and apply the most relevant algorithms in Unsupervised Learning.

Program

Theoretical Component

Chapter 1 – Introduction

  • Data Mining/Machine Learning
  • Learning Types
  • Classification/Regression
  • Main Challenges
  • Mathematical Notation

Chapter 2 – Data: Fundamental Concepts

  • Types of data
  • Descriptive statistics
  • Random variable
  • Data Distributions
  • Data Cleaning

Chapter 3 – Main phases of a Project

  • Identification/Contextualization of the problem
  •  Obtaining the data
  •  Data visualization and preparation
  •  Model selection and training
  •  Model tuning/adjustment
  •  Monitoring and Maintenance

Chapter 4 – Classification’s Assessment

  • Validation Strategies
  • Metrics

Chapter 5 – Supervised Learning

  • Linear Regression
  • Logistic Regression
  •  Naïve Bayes
  •  Decision Trees
  •  Support Vector Machine
  •  KNN-nearest Neighbour
  • Random Forest
  •  Neural Networks

Chapter 6 – Unsupervised Learning

  • Clustering
    • K-means
    • Subtractive Clustering
  • Principal Component Analysis

 

Practical Component

  • Python applied to Data Analysis
    • Numpy
    • Scipy
    • Pandas
    • Matplotlib
    • Seaborn
    • Scikit-learn
  • Data Analysis and Preparation
  • Supervised Learning
  • Unsupervised Learning

Curricular Unit Teachers

Internship(s)

NAO

Bibliography

Geron A. (2019).  Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems 2nd Edition. ISBN-13: 978-1492032649, O’Reilly (ISEC: 1A-4-179)

Chen, D. (2018) Pandas for Everyone, Python Data Analysis, ISBN:13-978-0-13-454693-3, Addison-Wesley, (ISEC: 1A -19-26) 

Kuhn M., Johnson K. (2016). Applied Predictive Modeling. ISBN: 978-1-4614-6848-6, Springer. (ISEC:3-3-244)

Rashka S, Mirjalili V. (2019). Python Machine Learning, 3rd Edition. ISBN: 978-1-78995-575-0, Packt. (ISEC: 1A – 4-187)

Watt J., Borhani R., Katsaggelos A. (2020). Machine Learning Refined, 2nd Ed. ISBN: 978-1-108-48072-7, Cambridge University Pack. (ISEC: 1A – 4- 200)