Algorithms for Data Analysis

This course is inspired by the one written by Charlotte Laclau who kindly granted me her source files. So far, I use the same jupyter notebooks. Note that it will evolve over the next few years according to feedback from students and teachers.

Prerequisites

It is necessary to have prior knowledge on both the fundamentals of mathematics (analysis, linear algebra, probability, statistics) and computer science. As such, it is advised to be proficient in

Educational Goals

This course is designed to provide a quick introduction to data analysis algorithms for data engineers. As such, it meets different educational objectives:

Course Program

The course is given in 8 sessions of 3 hours each

- Tutorial class on the concepts & librairies of data analysis ( Slides)
  • Numpy
  • Pandas
  • Scikit-learn

- Practical exercice ( Jupyter notebook)
- Practical exercices on two use cases
  1. Behaviours of a telecom operator's customers ( Jupyter notebook)
  2. Video games sales ( Jupyter notebook)
- Tutorial class on machine learning ( Slides)
  • differences between AI and ML
  • distinction between supervised and unsupervised learning
  • training, validation and testing of ML models

- Tutorial class on simple supervised learning models ( Slides)
  • K neirest neighbors
  • Linear Regression
  • Ridge Regression

- Practical exercices ( Jupyter notebook)
- Tutorial class on simple supervised classification models ( Slides)
  • Logistic Regression
  • Decision Trees

- Tutorial class on numerical optimization ( Slides)
  • Convex vs. nonconvex
  • Role and impact of the step-size

- Practical exercices
  1. Toy examples ( Jupyter notebook)
  2. Wine quality analysis ( Jupyter notebook)

- Tutorial class on advanced supervised classification algorithms ( Slides)
  • SVM
  • Neural Networks

- Practical exercices ( Jupyter notebook)
- Tutorial class on unsupervised learning ( Slides)

- Practical exercices ( Jupyter notebook)
- Practical exercices on two use cases
  1. Determine if a mushroom is poisonous ( Jupyter notebook)
  2. Predict cell phone prices ( Jupyter notebook)

Course Materials