UNIL — Université de LausanneHEC Lausanne Autumn semester 2026

Advanced Data Analytics

Machine learning for economics and finance — from regression to reinforcement learning.

Meets

Mondays, from 14 September

Lecture 12:30–14:00, Internef 125 · exercise session 16:30–18:00, Anthropole 3185

Grading

Final project (100 %)

Proposal by 9 November · submission by 20 December 2026

Prerequisites

Python basics

Refresher notebooks if you need them

Compute

Nuvolos cloud workspaces

Free for enrolled students

Nuvolos
Your workspace runs on Nuvolos.JupyterLab in the browser with every package installed — nothing to install yourself. Enrolment is closed. Log in at app.nuvolos.cloud with the account you enrolled with. If you are registered for the course but cannot get in, email the teaching assistant from your university address.

Schedule

Each Monday has two meetings: the lecture at 12:30 and the exercise session at 16:30. Dates are the provisional 2026 calendar; materials are the current course corpus and may be updated week by week.

#DateSessionMaterials
01Sep 14Introduction to Machine LearningMaterials

Learning Objectives

  • Understand the fundamentals of machine learning
  • Distinguish between different types of learning paradigms
  • Set up your development environment on Nuvolos
  • Get familiar with the course structure and expectations

Topics Covered

  • Introduction to Machine Learning: What is ML, history, and applications
  • Types of Learning: Supervised, unsupervised, and reinforcement learning
  • Nuvolos Setup: Cloud environment configuration for the course
  • Course overview and expectations

Key Concepts

  • Machine Learning vs Traditional Programming
  • Supervised vs Unsupervised vs Reinforcement Learning
  • Training data, test data, and model evaluation
  • Real-world applications of ML

Getting Started

  1. Enrol in the Nuvolos cloud platform
  2. Review the introduction slides thoroughly
  3. Familiarize yourself with the course repository
  4. No assignment this week - focus on setup and understanding fundamentals
02Sep 21No class — Swiss federal fast (holiday)—
03Sep 28Get up to speed — Python, notebooks, GitHubMaterials

Learning Objectives

  • Master Python programming fundamentals for data analysis
  • Work effectively with Jupyter notebooks for interactive computing
  • Understand NumPy and SciPy for scientific computing
  • Set up GitHub for version control and collaboration
  • Build foundation skills for machine learning implementations

Topics Covered

  • Python Crash Course: Essential Python concepts for data science
  • Jupyter Notebooks: Interactive development environment
  • GitHub Introduction: Version control basics (self-study)
  • NumPy Fundamentals: Arrays, linear algebra operations (self-study)
  • SciPy Introduction: Scientific computing tools (self-study)
  • Practical Exercises: Hands-on finger exercises

Key Skills Developed

  • Python data structures and control flow
  • Jupyter notebook best practices
  • Basic array operations with NumPy
  • Scientific computing with SciPy
  • Version control workflow

Assignments

  • Exercise 1: Distributed this week
  • Complete finger exercises from lecture
  • Set up GitHub repository for course work
04Oct 5Supervised Learning - RegressionMaterials

Learning Objectives

  • Understand the fundamental concepts of supervised learning
  • Master linear and polynomial regression techniques
  • Learn optimization methods including gradient descent
  • Apply regression models to real-world datasets
  • Understand model complexity and overfitting

Topics Covered

  • Supervised Learning: The general framework and approach
  • Linear Regression: Single and multiple variables
  • Gradient Descent: Optimization algorithm for model training
  • Polynomial Regression: Non-linear relationships
  • Tuning Model Complexity: Bias-variance tradeoff
  • Practical Applications: Stock market prediction (if time permits)
  • Data Manipulation: Introduction to Pandas

Key Concepts

  • Cost functions and loss minimization
  • Normal equation vs gradient descent
  • Feature scaling and normalization
  • Model evaluation metrics (MSE, MAE, R²)
  • Overfitting vs underfitting

Practical Skills

  • Implementing regression from scratch
  • Using scikit-learn for regression tasks
  • Data preprocessing with Pandas
  • Model evaluation and validation

Assignments

  • Exercise 2: Distributed this week
  • Complete finger exercises with TA guidance
  • Practice implementing gradient descent
05Oct 12Guest Lecture - Generative AI for ProgrammingMaterials

Guest Lecturer

Anna Smirnova - PhD Candidate

Learning Objectives

  • Understand the landscape of AI tools for programming (chatbots, assistants, agents)
  • Distinguish between standard and reasoning AI models
  • Learn effective prompt engineering techniques for code generation
  • Understand the capabilities and limitations of AI-assisted programming
  • Get hands-on experience with GitHub Copilot and other AI coding tools

Topics Covered

  • The AI Landscape: Three types of AI tools for coding
    • Chatbots (ChatGPT, Claude)
    • Code Assistants (GitHub Copilot, Cursor)
    • Autonomous Agents (Devin, Claude Code)
  • Understanding AI Models: Standard vs. reasoning models
  • Practical Usage: How to effectively use GitHub Copilot
  • Prompt Engineering: Techniques for better AI assistance
  • Reality Check: Benefits, limitations, and ethical considerations
  • The Future: Autonomous coding agents and their implications

Key Concepts

  • Large Language Models (LLMs) architecture
  • Transformer models and attention mechanisms
  • Context windows and token limits
  • Fine-tuning vs. prompt engineering
  • Chain-of-thought reasoning
  • AI safety and alignment

Practical Skills

  • Using GitHub Copilot effectively
  • Writing effective prompts for code generation
  • Debugging AI-generated code
  • Understanding when to use (and not use) AI assistance
  • Evaluating AI tool outputs critically

Important Considerations

  • Academic Integrity: Proper attribution and understanding
  • Code Quality: AI as a tool, not a replacement for learning
  • Security: Risks of copying AI-generated code without review
  • Bias: Understanding limitations and biases in AI systems

Additional Resources

  • GitHub Copilot documentation
  • OpenAI and Anthropic research papers
  • AI safety and ethics guidelines
06Oct 19ClassificationMaterials

Learning Objectives

  • Understand fundamental classification concepts and algorithms
  • Master k-Nearest Neighbors (k-NN) algorithm
  • Learn how to evaluate classifier performance
  • Understand Naive Bayes classification
  • Explore decision trees and ensemble methods
  • Apply classification algorithms to real-world datasets

Topics Covered

  • Classification Fundamentals: Problem formulation and terminology
  • k-Nearest Neighbors (k-NN): Instance-based learning algorithm
  • Classifier Evaluation: Accuracy, precision, recall, F1-score, confusion matrices
  • Naive Bayes: Probabilistic classification based on Bayes’ theorem
  • Decision Trees: Tree-based classification and feature selection
  • Ensemble Methods: Boosting and Bagging for improved performance
  • Practical Applications: Introduction to matplotlib (if time permits)

Key Concepts

  • Supervised vs unsupervised classification
  • Training and test set evaluation
  • Cross-validation techniques
  • Overfitting in classification models
  • Feature importance and selection
  • Bias-variance tradeoff in classification

Algorithms Covered

  • k-NN: Distance-based classification
  • Naive Bayes: Probabilistic approach
  • Decision Trees: Rule-based classification
  • AdaBoost: Adaptive boosting
  • Bagging: Bootstrap aggregating

Practical Skills

  • Implementing classifiers from scratch
  • Using scikit-learn for classification tasks
  • Model evaluation and performance metrics
  • Data visualization with matplotlib
  • Handling categorical and numerical features

Assignments

  • Exercise 3: Distributed this week
  • Complete finger exercises with TA guidance
  • Practice implementing and comparing different classifiers
07Oct 26Deep Learning BasicsMaterials

Learning Objectives

  • Understand the fundamentals of neural networks and deep learning
  • Learn about multi-layer perceptrons (MLPs) and their architecture
  • Master feed-forward networks and their training process
  • Understand stochastic gradient descent (SGD) and backpropagation
  • Recognize overfitting issues and regularization techniques
  • Apply deep learning to real-world problems

Topics Covered

  • Deep Learning Basics: Neural network fundamentals and motivation
  • Multi-layer Perceptron (MLP): Architecture and design principles
  • Feed-forward Networks: Information flow and network topology
  • Network Training: Stochastic Gradient Descent (SGD) optimization
  • Error Backpropagation: Algorithm for computing gradients
  • Overfitting Prevention: Regularization techniques and best practices
  • Introduction to TensorFlow: Applied to supervised learning problems

Key Concepts

  • Perceptron: Single neuron model and limitations
  • Universal Approximation Theorem: Theoretical foundation of neural networks
  • Activation Functions: ReLU, sigmoid, tanh, and their properties
  • Loss Functions: Mean squared error, cross-entropy for different tasks
  • Optimization: Gradient descent variants and learning rates
  • Regularization: Dropout, weight decay, early stopping

Practical Skills

  • Building neural networks from scratch
  • Implementing backpropagation algorithm
  • Using TensorFlow for deep learning tasks
  • Network architecture design and hyperparameter tuning
  • Debugging and troubleshooting neural networks

Assignments

  • Exercise 4: Distributed this week - Neural network implementation
  • Practice building and training MLPs
  • Explore different activation functions and architectures

Further Reading

  • Deep Learning textbook chapters on MLPs and backpropagation
  • TensorFlow documentation and tutorials
08Nov 2Tensorflow/PyTorch, RNNs, LSTMsMaterials

Learning Objectives

  • Master popular deep learning frameworks: TensorFlow and PyTorch
  • Understand sequence modeling with RNNs and LSTMs
  • Apply deep learning to time series and sequential data
  • Develop practical skills in framework-specific implementations
  • Explore self-attention mechanisms and their applications

Topics Covered

  • TensorFlow Tour: Comprehensive introduction to TensorFlow ecosystem
  • PyTorch Introduction: Practical PyTorch for machine learning applications
  • Deep Learning for Sequence Modeling: Working with sequential data
  • Recurrent Neural Networks (RNNs): Understanding sequential dependencies
  • Long Short-Term Memory (LSTMs): Advanced sequence modeling
  • Self-Attention: Introduction to attention mechanisms

Key Concepts

  • Framework Comparison: TensorFlow vs PyTorch advantages and use cases
  • Computational Graphs: Static vs dynamic graph construction
  • Sequential Data: Time series, text, and other sequential patterns
  • RNN Architecture: Vanilla RNNs, vanishing gradient problem
  • LSTM Components: Forget gate, input gate, output gate
  • Attention Mechanisms: Self-attention and transformer basics

Practical Applications

  • Function Approximation: Using TensorFlow for analytical functions
  • Time Series Prediction: LSTM models for ozone concentration data
  • Stock Price Modeling: Financial time series analysis
  • Sequence Classification: Text and sequential data classification

Hands-on Examples

  • Warm-up with TensorFlow: Approximate analytical functions
  • Comprehensive TensorFlow tour and best practices
  • PyTorch introduction for supervised learning problems
  • LSTM applications to real-world time series data
  • Comparison of framework implementations

Assignments

  • Exercise 5: Distributed this week - Framework implementation comparison
  • Practice with both TensorFlow and PyTorch
  • Implement RNN/LSTM models for sequence prediction

Technical Skills

  • TensorFlow model building and training
  • PyTorch tensor operations and automatic differentiation
  • Sequence preprocessing and data preparation
  • RNN/LSTM architecture design and optimization
  • Model evaluation for sequential data
09Nov 9Recap WeekMaterials

Overview

This week provides a comprehensive review of the most important concepts covered in the first 8 weeks of the course. It’s designed to consolidate learning and prepare students for the advanced topics in the remaining weeks.

Learning Objectives

  • Consolidate understanding of fundamental machine learning concepts
  • Review supervised learning approaches: regression and classification
  • Revisit optimization techniques and gradient descent methods
  • Strengthen knowledge of deep learning fundamentals
  • Practice with sequence modeling and neural networks

Topics Reviewed

  • Supervised Learning - Regression: Linear and polynomial regression recap
  • Supervised Learning - Classification: k-NN, Naive Bayes, Decision Trees
  • Optimization Methods: Gradient Descent and Stochastic Gradient Descent
  • Deep Learning Foundations: Feed-forward networks and backpropagation
  • Sequence Modeling: RNNs, LSTMs, and their applications
  • Applications in NLP: Brief introduction (self-study)

Recap Materials

  • Comprehensive notebooks covering all major topics
  • Step-by-step implementation reviews
  • Problem-solving strategies and best practices
  • Common pitfalls and how to avoid them

Key Learning Reinforcements

  • Model Selection: Choosing appropriate algorithms for different problems
  • Evaluation Metrics: Understanding when to use different performance measures
  • Overfitting Prevention: Regularization and validation strategies
  • Practical Implementation: Framework usage and debugging techniques

Assignment

No new assignment this week - focus on reviewing and strengthening understanding of previous concepts. Use this time to catch up on any missed exercises or concepts.

10Nov 16Gaussian ProcessesMaterials

Learning Objectives

  • Understand the theoretical foundations of Gaussian Processes (GPs)
  • Master Gaussian Process regression techniques
  • Learn about kernels and their role in GP modeling
  • Handle noisy data in GP frameworks
  • Apply GPs to financial modeling and option pricing
  • Understand GP classification methods

Topics Covered

  • Gaussian Process Regression: Theoretical foundations and practical implementation
  • Kernels with Noise: Incorporating uncertainty and noise in GP models
  • Option-Pricing Examples: Financial applications of Gaussian Processes
  • GP Classification: Extending GPs to classification problems
  • Bayesian Framework: Understanding the Bayesian perspective in GPs
  • Hyperparameter Optimization: Tuning GP models for optimal performance

Key Concepts

  • Gaussian Processes: Non-parametric Bayesian approach to regression
  • Kernel Functions: RBF, Matern, periodic kernels and their properties
  • Mean and Covariance Functions: Defining GP priors
  • Marginal Likelihood: Model selection and hyperparameter optimization
  • Uncertainty Quantification: Predictive distributions and confidence intervals
  • Computational Complexity: Scaling GPs and approximation methods

Mathematical Foundations

  • Multivariate Gaussian distributions
  • Kernel methods and reproducing kernel Hilbert spaces
  • Bayesian inference and posterior distributions
  • Maximum likelihood estimation for hyperparameters

Practical Applications

  • 1D and 2D Regression: Basic GP regression examples
  • Financial Modeling: Option pricing using GP methods
  • Noise Handling: Robust regression with noisy observations
  • Multi-dimensional Problems: Scaling to higher dimensions
  • Classification Tasks: GP classification with various kernels

Assignments

  • Exercise 6: Distributed this week - GP implementation and applications
  • Complete two-part finger exercises covering theory and practice
  • Implement GP regression from scratch and compare with scikit-learn

Tools and Libraries

  • GPy and GPFlow for advanced GP modeling
  • scikit-learn for basic GP implementations
  • Practical GP examples and case studies
11Nov 23Dimensionality Reduction, PCA, Active LearningMaterials

Learning Objectives

  • Understand the curse of dimensionality and its implications
  • Master Principal Component Analysis (PCA) and its variants
  • Learn Bayesian active learning strategies
  • Explore active subspaces in the context of Gaussian Process regression
  • Apply dimensionality reduction techniques to real-world datasets
  • Understand when and how to use different dimensionality reduction methods

Topics Covered

  • Curse of Dimensionality: Challenges in high-dimensional spaces
  • Principal Component Analysis (PCA): Linear dimensionality reduction
  • Kernel PCA: Non-linear dimensionality reduction using kernel methods
  • Bayesian Active Learning: Intelligent sampling strategies
  • Active Subspaces: Dimension reduction for complex functions
  • GP Regression with Active Subspaces: Combining dimensionality reduction with GPs

Key Concepts

  • High-Dimensional Challenges: Sparsity, distance metrics, visualization problems
  • Linear vs Non-linear Methods: When to use PCA vs kernel PCA
  • Variance Explained: Choosing the number of components
  • Active Learning: Uncertainty sampling and query strategies
  • Subspace Identification: Finding low-dimensional structure in high-dimensional functions
  • Integration with GPs: Using active subspaces to improve GP scalability

Dimensionality Reduction Methods

  • PCA: Eigenvalue decomposition and SVD approaches
  • Kernel PCA: RBF, polynomial, and custom kernels
  • Active Subspaces: Gradient-based dimension reduction
  • Comparison: When to use each method

Active Learning Strategies

  • Uncertainty Sampling: Exploiting model uncertainty
  • Query by Committee: Ensemble-based active learning
  • Expected Model Change: Information-theoretic approaches
  • Bayesian Optimization: Active learning for expensive function evaluations

Practical Applications

  • Image Processing: PCA for image compression and visualization
  • Wine Dataset Analysis: Multi-class dimensionality reduction
  • Financial Data: Portfolio dimensionality reduction
  • Scientific Computing: Active subspaces for expensive simulations

Assignments

  • Exercise 7: Distributed this week - PCA and active learning implementations
  • Compare different dimensionality reduction techniques
  • Implement active learning strategies

Tools and Implementation

  • scikit-learn for PCA and kernel PCA
  • Custom implementations for active subspaces
  • Visualization techniques for high-dimensional data
  • Integration with previous GP implementations
12Nov 30Clustering (k-means, GMM, hierarchical)Materials

Learning Objectives

  • Understand unsupervised learning and clustering fundamentals
  • Master k-means clustering algorithm and its variants
  • Learn Gaussian Mixture Models (GMM) and Expectation Maximization
  • Explore hierarchical clustering methods
  • Apply density-based clustering techniques like DBSCAN
  • Compare different clustering algorithms and choose appropriate methods

Topics Covered

  • k-Means Clustering: Centroid-based clustering algorithm
  • Gaussian Mixture Models (GMM): Probabilistic clustering approach
  • Expectation Maximization: Algorithm for parameter estimation in GMM
  • Hierarchical Clustering: Agglomerative and divisive methods
  • Density-Based Clustering: DBSCAN and related algorithms
  • Cluster Validation: Metrics and techniques for evaluating clusters

Key Concepts

  • Unsupervised Learning: Learning patterns without labeled data
  • Distance Metrics: Euclidean, Manhattan, cosine similarity
  • Cluster Quality: Intra-cluster vs inter-cluster distances
  • Initialization Methods: K-means++, random initialization
  • Model Selection: Choosing the number of clusters
  • Convergence: When and why algorithms converge

Clustering Algorithms

  • k-Means: Lloyd’s algorithm, k-means++, mini-batch k-means
  • GMM: Multivariate Gaussian distributions, soft clustering
  • Hierarchical: Ward linkage, complete linkage, single linkage
  • DBSCAN: Density-based spatial clustering, noise detection
  • Mean Shift: Mode-seeking algorithm for clustering

Practical Applications

  • Customer Segmentation: Marketing and business applications
  • Image Segmentation: Computer vision clustering tasks
  • Gene Expression: Bioinformatics clustering analysis
  • Market Segmentation: Financial and economic clustering

Evaluation Metrics

  • Internal Metrics: Silhouette score, Davies-Bouldin index
  • External Metrics: Adjusted Rand index, normalized mutual information
  • Visual Assessment: Scatter plots, dendrograms, cluster visualization

Assignments

  • Exercise 8: Distributed this week - Clustering algorithm implementations
  • Compare different clustering methods on various datasets
  • Implement k-means and GMM from scratch
  • Apply clustering to real-world datasets

Tools and Implementation

  • scikit-learn for standard clustering algorithms
  • Custom implementations for educational purposes
  • Visualization tools for cluster analysis
  • Performance comparison frameworks
13Dec 7Reinforcement LearningMaterials

Learning Objectives

  • Understand the fundamentals of reinforcement learning (RL)
  • Master Q-learning algorithm and its applications
  • Explore the optimal portfolio choice problem using RL
  • Learn about Markov Decision Processes (MDPs)
  • Apply RL techniques to financial and decision-making problems
  • Understand the exploration-exploitation tradeoff

Topics Covered

  • Introduction to Reinforcement Learning: Agents, environments, rewards
  • Q-Learning: Model-free reinforcement learning algorithm
  • Optimal Portfolio Choice: Financial application of RL methods
  • Markov Decision Processes: Mathematical framework for RL
  • Policy vs Value Methods: Different approaches to RL
  • Exploration-Exploitation: Balancing learning and performance

Key Concepts

  • Agent-Environment Interaction: The RL loop
  • States, Actions, Rewards: Core RL components
  • Policy: Strategy for action selection
  • Value Functions: State-value and action-value functions
  • Temporal Difference Learning: Learning from experience
  • Bellman Equation: Fundamental recursive relationship

Reinforcement Learning Algorithms

  • Q-Learning: Off-policy temporal difference learning
  • SARSA: On-policy temporal difference learning
  • Policy Gradient Methods: Direct policy optimization
  • Deep Q-Networks (DQN): Deep learning meets RL
  • Actor-Critic Methods: Combining value and policy methods

Financial Applications

  • Portfolio Optimization: Using RL for asset allocation
  • Markowitz Framework: Modern portfolio theory with RL
  • Risk Management: Dynamic hedging strategies
  • Trading Strategies: Algorithmic trading using RL
  • Market Making: Optimal bid-ask spread strategies

Practical Implementation

  • RL Basics: Fundamental concepts and simple environments
  • Q-Learning Implementation: Step-by-step algorithm development
  • Financial Modeling: Least squares interpolation and Markowitz optimization
  • Performance Evaluation: Metrics for RL algorithm assessment

Real-world Examples

  • Game Playing: RL in strategic games
  • Robotics: Control and navigation applications
  • Recommendation Systems: Personalization using RL
  • Autonomous Systems: Decision making under uncertainty

Assignment

No new assignment this week - focus on capstone project development and RL exploration

Tools and Libraries

  • OpenAI Gym for RL environments
  • Custom financial environment implementations
  • NumPy and scikit-learn for basic RL algorithms
  • TensorFlow/PyTorch for deep RL (advanced)
14Dec 14Wrap-upMaterials

Overview

The last session applies the course’s tools to one large problem — deep uncertainty quantification for integrated assessment models — and then looks back over the semester: which method answers which kind of question, and how they fit together.

Topics Covered

  • Deep Uncertainty Quantification: an application to integrated assessment models
  • Course Wrap-up: the methods of the semester, side by side
  • Project showcase (voluntary): students who wish to may present their project in a few minutes and take questions
  • Project consulting: the exercise-session slot is open for individual questions on the project

The project, in the last week

The presentation of the project is the 15-minute video submitted with the repository; there is no oral presentation, and the showcase above is optional and ungraded. Everything is due on Sunday 20 December, 23:59. The requirements and the guidelines are on the project page; the week before the deadline, run the reproduction test described there.

Course materials by Prof. Simon Scheidegger (Advanced Data Analytics, HEC Lausanne, 2023–2025), used with permission. Autumn 2026 edition: lectures by Prof. Dimitrios Karyampas, teaching assistant Anna Smirnova. Amended and added material is marked as such.

Teaching team

Dimitrios KaryampasLecturerdimitrios.karyampas@unil.chLectures, and the project.
Anna SmirnovaTeaching assistantanna.smirnova@unil.chPractice sessions, materials, and project sign-off.

Project proposals and questions about the requirements go to the teaching assistants.