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 the first part of this project you will learn the basic idea and building blocks for neural networks. This will allow you to build, train and optimise your own neural network, which can perform some basic classification tasks on the image set of your choice. You will then learn about convolutional neural networks, which are basic architectural types of networks used for visual tasks (such as object recognition, image reconstruction etc.) Armoured with that knowledge, you will be free to take the project in the direction which you find interesting and try to apply neural networks to visual tasks which intrigue you.
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!
Strong knowledge of Python. Familiarity with basic probability theory.
The amount of literature is huge and most of it is available online. The following are just good starting points:
In Analytics Vidhya you can find loads of tutorials and reviews. They also have programmes for which you need to pay, but these are really not necessary. A very good blog written by a specialist in the subject, Jonathan Hui.