MSc Project Ideas

Please get in touch if you have any questions about specifics of the projects.

A Slurm Web Interface and API Wrapper

Web application development, Programming

A good knowledge of Linux is required for this project.

In the Computer Vision Lab we have a GPU cluster consisting of more than 50 GPUs. It is used by members of the lab, as well as collaborators and undergraduates working with lab members.

We currently manage user associations with a shell script and org-mode table.

The requirements include:

There is room for extensions if you'd like to add them. There may be room to open source this project.

Ideally development would be done in Node.js, PHP or Java.

Distributed Data Augmentation for Deep Learning using MPI

Distributed Computing, Deep Learning

An understanding of deep learning will be beneficial in this project.

One of the difficulties with deep learning is augmenting data during the training of deep convolutional neural networks. This means applying random transformations to the input data to make it look different some how. Occasionally, this also requires making changes to the output too. Data augmentation helps prevent a network from learning the training set directly, making it better able to generalise to new, unseen images during inference.

Data augmentation frequently becomes the bottleneck during training, often requiring many CPU cores. I would like to investigate ways of improving the performance of this workload by distributing the data augmentation problem across compute nodes using the Message Passing Inference (MPI).

MPI is a very standard and simple to use library for exchanging messages and data between compute nodes.

This work will be implemented as a Python library for the PyTorch framework. MPI is accessible through Python using mpi4py.

There is potential to analyse the performance of large batch sizes with and without MPI data augmentation.

Personal Handwriting OCR

Deep Learning, Computer Vision

OCR of clearly printed text is generally considered to be a solved problem. Handwriting poses many more challenges due to variations in style between individuals. However, building a system which is able to convert your own hand writing to text is within the realms of possibility.

While you are encouraged to experiment and develop your own approach, the project will likely need to be broken into several parts:

← Return Home

Copyright 2007-2020 Aaron S. Jackson (compiled: Tue 14 Jan 23:43:48 GMT 2020)