Final Projects (2020/2021)
In the following you can find a list of final project topics, partitioned into survey works (requiring reading and summarization of a number of scientific articles on a theme/model) and coding works (requiring implementing a method/application from literature). Some of the coding works might involve a higher level of complexity, as they encompass an original modification of an existing model. Coding projects can be developed in team, provided that the project is of sufficient complexity and that the contribution of the different team members is clearly marked.
Students are welcome to propose their topic, but the proposal should come with the following associated information:
- Survey project: a list of 3/4 scientific articles on the topic of interest
- Coding project: a reference article detailing the model to be implemented plus references to the data to be used for training/testing the model.
The following lists are likely to be updated in the upcoming weeks.
Survey Projects
- Advanced Hidden Markov Models – Survey of modern hidden Markov models, including Bayesian non-parametric extensions and applications to structured data.
- Latent topic models - A survey of latent topic models covering either: different learning and inference algorithms; architectural variants (hierarchical topic models, time varying topics, etc.); different machine vision applications of topic models.
- Topic Models for Graphs – A survey of works on the use of latent Dirichlet allocation and other topic models to graph analysis
- Semantic Image Segmentation – A review of articles on the joint use of CNN and MRF for semantic image segmentation
- Deep learning for graphs – Survey of recent approaches to structured data processing, including the extension of CNN to network data, CNN for variable sized graphs.
- Generative learning for graphs - Survey of recent approaches to the generation of graph structured predictions and their applications (mostly chemistry)
- Theoretical properties of deep graph networks – Survey of theoretical results (and models) on representational capabilities of deep learning models for graphs.
- Pooling in CNN for graphs – Survey of recent works focusing on presenting pooling mechanisms for graph structured data
- Memory Enhanced Neural Networks - Survey of neural models with multi-scale memory or external memory components.
- Neural reasoning – Survey of recent works on reasoning and pondering in deep models, e.g. Neural Turing Machines, adaptive computation time networks, pondering networks.
- Neural tensors – A survey on tensor-based neural networks, e.g. using tensor operators to model a full neural network or extending neurons with tensor-based aggregation functions
- Deep learning in Bioinformatics – Convolutional neural networks for genetic sequences, interpretation of filters on genomic sequences, models for multimodal biomedical data.
- Deep reinforcement learning - A survey covering foundational as well as more recent deep models for reinforcement learning (e.g. learning Atari games, AlphaGo)
- Continual learning survey – A survey covering the problem of continual learning in different data task types (images, sequences, ...) or theoretical issues associated to it (learning under drifting distributions, forgetting and interference, …)
- Continual learning in reinforcement learning - A survey of applications of continual learning to reinforcement learning tasks
- Replay-based continual learning - A survey of continual learning paper dealing with forgetting through a replay-based approach
- A comparative survey of recent GAN models – Survey comparing some notable recent GAN models from a theoretical, robustness and/or representational perspective.
- Deep learning of distributions – A survey of VAE-based approaches to learn complex distributions exploiting neural models and the reparameterization trick.
- Theoretical aspects of Stochastic Gradient descent – A survey of theoretical aspects of different GD optimization algorithms, including moments, adaptive learning rates, second-order methods or works considering the theoretical properties of SGD.
- Adversarial attacks – Review of the main approaches to perform adversarial attacks to neural networks.
- Reliable Deep Learning – Review of recent works on defending neural networks from adversarial attacks.
- Video Analysis – A review of learning models and applications applied to video analysis.
- Machine learning for multimodal data – A review of machine learning models for multimodal data comprising information from different sources (audio, video, text).
- Deep learning for music – Survey on deep learning approaches to music representation, generation and style disentanglement.
- Representation learning and style disentanglement – A survey of recent approaches addressing representation learning and style disentanglement in different application areas (machine vision, music generation, etc).
- Artificial creativity – Survey works on generation of artistic content by artificial intelligence
- Adversarial Autoencoders - Extending generative AE approaches with adversarial losses to impose structure on the latent space
- Neural point processes – A survey of works dealing with learning sequences of very sparse events (point processes) by deep neural networks.
- Trustworthy deep learning – A survey on one of the several aspects of trustworthy AI, such as interpretability of neural models, dependable AI, property proving on neural models.
- Integrating symbolic-subsymbolic models - A survey on selected works attempting to bridge deep learning models with symbolic information
Coding Projects
- Deep learning for graphs libraries – Implement and empirically confront a couple of variants of neural networks for graphs using one of the available libraries (Pytorch Geometric, DLG).
- CNN for brain imaging – Implement a CNN to perform semantic segmentation on brain MR images.
- Neural Turing Machine – Try to create your personal implementation of the NTM and train it on the classical NTM benchmark data.
- Emotion recognition – Implement an emotion recognition application that connects a pre-trained deep learning model for emotion recognition from images to the webcam and classifies the stream of frames captured by the cam according to the emotion shown by the people in the frame.
- Machine vision for autonomous vehicles – Implement a simple machine vision application exploiting training data available from an autonomous vehicle manufacturer and using one (or more than one) of the technologies seen in the course (CNN, CRF, etc).
- Music generation – Implement a music generation deep neural network integrating a variational auto-encoder approach with transformers.
- Bayesian Tensor Graph Model – Extend a deep network for graphs to use Bayesian tensor factorization to compute node embeddings
- Music generation app – Build a simple (web-based or mobile) application that exploits an available and pretrained Adversarial AE to generate music and/or interpolate between music pieces.
- Music latent characterization – Study the organization of the latent space of a Music Autoencoder to characterize the contribution of the single attributes to musical aspects such as rhythm, style, etc.
- Object detection in videos – Use Keras, OpenCV, ImageAI or whatever framework you are comfortable with to create a simple application performing object detection in videos (e.g. from youtube of from your webcam). Use a pretrained network for the task (suggestion: YOLO).
- Molecular property prediction challenge – Implement your solution to one (or more if you really wish) of the predictive tasks in the MIT Cures challenge: https://www.aicures.mit.edu/tasks. The tasks typical require processing graphs of some nature (molecular, proteins) or with their sequential representation (SMILES). Submit your solution to the website of the challenge for assessment.
- Plant Patology Challenge (Images)– Create a team (of 2/3) to participate to this image classification challenge (www.kaggle.com/c/plant-pathology-2021-fgvc8/). Use any approach you might find reasonable (as soon as it is motivated). Submitting your solution to the challenge is not needed for the exam.
- Monet Style Painting (GANs) - Create a team (of 2/3) to participate
to this Kaggle challenge (www.kaggle.com/c/gan-getting-started). Use GAN approach you
might find reasonable (as soon as it is motivated). Submitting your solution to
the challenge is appreciated but not needed for the exam. For the exam you do not need to generate the whole 7,000-10,000 images. Generating some selected 100 images would be sufficient.
- Deep Reinforcement Learning – Implement a neural-based reinforcement learning agent (e.g. DQN) and experiment training it on one of the environments available in the OpenAI Gym.
- Deep Graph Learning Benchmarking – Leverage an existing library for deep learning for graphs to setup an experiment verifying scalability of the models on large social network data (entails getting hands dirty on high-performance computing sytems, and use of persistent-memory).
- People tracking (and social distancing) – Create a people tracking model leveraging the annotated RGBD people dataset (http://www2.informatik.uni-freiburg.de/~spinello/RGBD-dataset.html). The model should at least be able to identify the bounding boxes of the people in the dataset (validating performance as standard in the RGBD People benchmark). A more articulated project can be run (perhaps by more than 1 student) in which it is built a people tracking application (web or mobile) which, apart from identifying bounding boxes, can also estimate the distance in meters between the bounding boxes center of mass (for social distancing monitoring purposes).
- Benchmarking contrinual learning in Avalanche - Experiment with a selection of continual learning strategies implemented in Avalanche (on a benchmark dataset, possibly of your choice).
- Extending continual learning in Avalanche - Extend the Avalanche library with a continual learning strategy that is currently unsupported.