I am currently taking part of the Deep Learning Nanodegree at Udacity. This program goes through 5 different projects in order to become familiar with neural networks and apply them in a practical way.
I tried to learn Machine Learning in the past, but never fully succeed. I started the Introduction to Machine Learning from Coursera but quit after week 8 because it was impossible to keep following. I also did some small projects using TFLearn (a library that helps using TensorFlow) but always without a clear idea of what I was doing.
Before doing the Nanodegree, I also did the free Introduction to Data Analysis course from Udacity, which I think is essential for anyone unfamiliar with Numpy and Pandas (and Python in general) since the program uses them a lot.
The program recommends you to follow a tight calendar that they provide, and you will also have a final deadline. I started the program on June 12 and my deadline is October 20.
For the first project, Udacity gives you two weeks, but I was able to complete it in three days. That was possible thanks to my previous background, both the Data Analysis and the Machine Learning courses I did helped me a lot to with the first lessons, which felt more like a refresher to me than learning something new.
The content from Udacity is way nicer than any other introductory course I did on neural networks. I can see how this program has improved a lot in the last years since it was launched, because it received lots of criticism regarding how hard was for a beginner to follow. However the content is easy to follow, very visual and with lots of practical examples.
If you didn’t previously play with Numpy and never read anything about neural networks before, it will definitely take you longer than three days to complete the first project. But that’s OK because you will have two weeks.
Project: Your First Neural Network
In the first project, you will build a neural network that predicts the hourly usage of a bike sharing service. You will be given two years of data and a project template that implements everything, except the feed-forward and back-propagation algorithms. And as well, a series of hyperparameters for you to tune up.
The project requires less work than what I thought. Most of the code is already provided, and everything you need to apply is already explained in the previous lessons. My advice: Keep all the code examples you will do during the first weeks at hand, because you will be using them.
Finally, you can visualise your solution and see how your prediction performs:
My prediction works well on weekdays, but not so good on vacation days
The project submission process will run a series of tests to auto-evaluate you and generate a file that you will have to submit. In less than an hour after submission I got a review in my inbox telling me that I passed.
My next project deadline is on July 28, so I have plenty of time to look at the optional content, learn about Keras, sentiment analysis and implement a dog breed classifier for the second project.
See you then!