Student Projects

Available MSc, BSc and PhD Semester Projects

In this page you can find our offering for semester projects. Students who are interested to do a project are are encouraged to have a look at the Thesis & Project Guidelines from the MLO lab, where you will gain understanding about what can be expected us and what we expect from students.

Last Update: 27th April 2019

Applying to projects:

Please, apply via the Google form.

You will need to specify which project(s) you are interested in, why you are interested, and if you have any experience in the area.

To access the form you need to login with your EPFL email address.

External students Students that are not from EPFL should get in touch personally with the supervisors of the project(s) via email.

COVID-19 Because of the current situation, many of us have not been able to update the projects for the next semester. This list of projects will grow in the next few weeks (May), so please keep this page monitored.

After new projects are included, and if you are interested in some of them you can update your Google form entry with your selection.

If you encounter any technical issue please get in touch with Giovanni Cherubin and Laurent Girod.

Projects on Machine Learning

ML1: Adversarial machine learning for privacy

Machine learning techniques have become widely used in privacy-invasive applications, like website traffic fingerprinting, facilitation of video and audio surveillance, inference of private attributes from seemingly non-sensitive information (e.g., Cambridge Analytica case).

In this project we investigate the potential of exploiting inherent deficiencies in machine learning models to protect private information. The students will use techniques from adversarial machine learning to interfere with operation of image recognition models, or text classifiers.

  • Good knowledge of deep learning: backpropagation, stochastic gradient descent
  • Experience with implementing machine learning models
  • Familiarity with adversarial examples is welcome
  • Knowledge of one of the existing machine learning frameworks: PyTorch, TensorFlow, Keras; cleverhans
Further Details

This semester project is aimed at one BSc/MSc/PhD student. The student will work with Bogdan Kulynych.


Other labs with cool projects on Machine Learning (we can always consider co-supervision):

 DLab (Prof. West): 
 MLO (Prof. Jaggi):


Projects on Computer Graphics

CG1: 3D Rendering for Physical Attacks against ML

Multiple artists and researchers are exploring the use of adversarial machine learning to create real-world objects that evade or mislead ML-based computer vision classifiers. Some examples are eyeglasses that prevent face detection, and patches on road signs that prevent the recognition of the signs. Such interventions are not rigorously tested in realistic conditions, and hence their effectiveness in the real world is unclear.

In this project, we will build tools that enable comprehensive testing of such real-world adversarial objects. You will build a software environment that can render multiple pictures of 3D scenes involving the adversarial objects from different angles. This tool can then be used to evaluate the performance of an intervention in settings that are close to realistic. As a stretch goal, you will use differentiable rendering to enable end-to-end creation of the adversarial objects that are effective in the real world.

  • Good knowledge of Python and PyTorch
  • Familiarity with the basics of 3D graphics: meshes, textures, rendering, etc.
  • (Optional) Familiarity with 3D modeling with, e.g., Blender
  • (Optional) Familiarity with adversarial machine learning
Further details

This semester project is aimed at one BS/MSc student. This is a joint project between SPRING lab and RGL lab. The student will work with Bogdan Kulynych and Merlin Nimier-David.


Projects on Web Security

WebSec1: Automated detection of website breakage from content blocking [Taken]

Tracking protection measures (such as ad-blockers) often result in ‘website breakage’ — loss of legitimate website functionality as a result of content blocking. This can hinder user experience and cause users to not adopt tracking protection tools.

Current approaches to detecting breakage are predominantly manual, resulting in a slow turn-around time to fix breakage. In this project, we will conduct an initial study whether breakage detection can be automated, by analyzing changes caused in a website’s structure when content blocking is applied. 

We will build a graph representation of website functionality when a page renders (such as network requests, JavaScript execution, HTML elements, etc.), and observe changes in the graph structure with different degrees of content blocking. We will trace back the patterns that cause breakage and use their properties to build features for a classifier that can detect breakage.

  • Programming skills in Python
  • Familiarity with web development (JavaScript/HTML)
Further Details

This semester project is aimed at one BSc/MSc student. The student will work with Sandra Siby.