Machine Learning for Time Series - Master 2 MVA
In many application contexts (health, industry, climatology…), the data collected take the form of time series. The fundamental challenge then consists in choosing a suitable representation, allowing the temporal information to be taken into account as well as possible.
Machine Learning for time series encompasses a large number of unsupervised or supervised tasks such as prediction, classification, completion/interpolation, clustering, segmentation/change-point detection or anomaly detection. But in reality, most of the work for a data scientist dealing with temporal data consists of a series of hidden tasks:
- Understand the data: know where they come from, how they were acquired, what their characteristics are, interact with domain experts
- Improve the data: find accurate representation spaces, consolidate the data (denoising, detrending, outlier removal)
- Model the data: physical/statistical or expert-based models, simple, adaptive and interpretable models
- Extract information from the data: find repetitive patterns, features of interest, change-points
This course aims to provide an overview of ML techniques to study time series, mostly focused on these often poorly documented hidden tasks, widely illustrated with real data and usecases. Note that in its current form, the course will only marginally discuss Deep Learning algorithms.
Lectures take place on Monday mornings at ENS Paris-Saclay. They are held on-site only, and are neither filmed nor recorded. Lectures are given in French, while all course material is in English. Tutorial sessions, led by Valerio Guerrini, are held either on Monday mornings on-site or on Monday afternoons on Zoom. The content is identical in both slots, so students should attend only one. Attendance at the lectures is mandatory. Please note that auditeurs libres cannot attend due to the large number of students.
- Tutorials (25%): commented notebooks and/or PDF reports. Attendance at at least one session per tutorial (on-site or remote) is mandatory. Missed or late assignments → FAIL.
- Mini-project (75%): one paper on a topic related to the course, done in pairs.
- Report (25%): PDF, 5 pages, template provided
- Source code (25%): commented Jupyter notebook
- Oral presentation (25%): 10 min with slides
Report and source code must be submitted by 13 December 2026 (23:59) or 3 January 2027 (23:59), depending on the date of the oral presentation.
Registration form distributed at the first lecture. Final registration deadline: 8 October 2026.
Lecture 0 : Introduction
- Organization of the course
- What is a time series ?
- Data science for time series
- Outline of the course
Lecture 1 : Pattern Recognition and Detection
- Comparing time series
- Euclidean distance (influence of offset, amplitude, time shift)
- Normalized Euclidean distance (what normalization really does, linear trends)
- Dynamic Time Warping (paths, recursive formulation, algorithm, variants)
- Detecting patterns in time series
- Euclidean distance (reformulation, distance profile, fast computation)
- DTW (lower bounds, pruning of the computations)
- Learning patterns from time series
- Distance-based pattern extraction (matrix profile)
- Dictionary-based pattern extraction (convolutional dictionary learning, sparse coding)
Lecture 2 : Feature Extraction and Selection
- Feature extraction
- Stationarity and ergodicity
- Statistical features (autocorrelation function, moments)
- Spectral features (DFT, spectral descriptors, spectrogram, periodogram)
- Local symbolic features (quantization, SAX representation)
- Information theory features (entropy, approximate entropy)
- Convolutional features (scale, features, choice of the filters)
- Deep learning features (supervised, autoencoders, self-supervision)
- Other features (topological data analysis, wavelets, model parameters)
- Feature selection
- Unsupervised setting (reliability, utility, PCA)
- Supervised setting (filter, wrapper and embedded methods)
Lecture 3 : Models and Representation Learning
- Standard models
- Sinusoidal model (parameter estimation, $f_0$-estimation)
- Trend+Seasonality model (least-squares estimation)
- AR models and variants (properties, estimation, order selection, MA, ARMA, ARIMA, residual analysis)
- Latent-variable models (HMM, forward, Viterbi and Baum-Welch algorithms, Kalman filter)
- Representation learning
- Standard representations (dictionary approach)
- Notion of sparsity (redundancy in the dictionary)
- Sparse coding ($\ell_0$- and $\ell_1$-regularization, IHT, matching pursuit, ISTA)
- Dictionary learning (proximal gradient descent, alternated resolution)
Lecture 4 : Data Enhancement and Preprocessings
- Denoising
- Filtering (filter design)
- Sparse approximations (dictionaries, stopping criteria, adaptive dictionaries)
- Low-rank approximations (trajectory matrix, SVD, singular spectrum analysis)
- Other techniques (ICA, EMD, STL)
- Detrending
- Least-squares regression
- Other approaches (differencing, filtering, decomposition techniques)
- Interpolation of missing samples
- Polynomial interpolation
- Low-rank interpolation
- Model-based interpolation (AR-based)
- Outlier removal
- Isolated samples (histogram, median filtering)
- Contiguous samples (AR-based detection and removal)
Lecture 5 : Change-Point and Anomaly Detection
- Change-point detection
- Dealing with non-stationary time series
- Cost functions (parametric and non-parametric)
- Search method (optimal and approximated resolution)
- Finding the number of change-points (heuristics, penalized and supervised detection)
- Anomaly detection
- Outlier detection
- Statistical methods (adaptive methods)
- Model-based methods
- Distance-based methods (matrix profile)
- Evaluation of event detection methods (point-based vs. range-based, metrics, matching criteria)
Lecture 6 : Multivariate Time Series
- First considerations (do we really need a multivariate model?)
- Models for multivariate time series
- Vector autoregressive models (estimation, prediction, Granger causality)
- Multivariate dictionary learning (convolutional dictionary learning, joint sparsity, $L_{2,1}$-regularization)
- Graph signal processing
- Concepts and definitions (graph, Laplacian, graph signal)
- Graph Fourier Transform
- Bandlimitedness and smoothness
- Graph filtering
- Graph learning

