Project IV 2020-2021

Applications of neural networks

Description

In recent years, neural networks have become a basic tool in building the most exciting AI projects: from giving power to virtual assistants like Siri or Alexa, guiding self-driving cars, to predicting the prices of houses on the market, or even writing new literary pieces of art. Neural networks are becoming an integral part of our everyday life and their relevance is ever so increasing.

In this project, you will learn the basic ideas and basic building blocks for making various types of supervised neural networks. You will learn various methods to speed up and optimise the network training as well as improve its performance. While possible applications of neural networks are numerous, one possible avenue along which you could shape this project is to build a neural network which classifies images: a system which can recognize hand-written digits, or different types of clothes, or even different types of your favourite ice-creams.

While this project will require you to gain significant theoretical knowledge, it will be equally important to show how this knowledge works in practice, by implementing in code what you have learnt. It is therefore very important that you have a strong knowledge of Python and that you enjoy doing it!

Prerequisites

Strong knowledge of Python. Familiarity with basic probability theory.

Some background material

The amount of literature is huge and most of it is available online. The following are just good starting points: