My experience with Udacity’s AI with Python Nanodegree
Last month I completed my first ever Udacity Nanodegree. This course covers the basics of the Python language, NumPy, Pandas, Matplotlib, PyTorch, Calculus, and Linear Algebra.
Prior to taking this course I hadn’t used Python before and had little knowledge of AI. I found it overall to be very beneficial and it is certainly one of (if not) the best online programming courses I have taken.
Project 1: Use a Pre-trained Image Classifier to Identify Dog Breeds
In this project, we were required to use three different pre-trained image classifiers to identify dog breeds in a series of pictures.
It was mainly an exercise to test the Python coding skills we had picked up. I didn’t have too many issues with it and all the problems I had were already resolved in the forums.
Project 2: Create Your Own Image Classifier
In this project, we created our own neural network in order to classify flowers (from pictures) by their name.
In the theory leading up to this project, there were some concepts that were a bit tricky to understand so I am glad this project was there to reinforce these ideas.
It would have been nice to get a bit more understanding on how to construct a neural network, rather than just put the building blocks together with trial and error as I ended up doing.
How effective was the course?
I came into this course with a computer science degree and therefore some experience with coding; so I can’t speak on behalf of everyone who took the course – like for those who had no prior coding experience.
However, I can say with confidence that thanks to this program I understand the basics of Python, and neural networks/machine learning. It has motivated me to look deeper into all of these aspects that were covered in the course.
Had I not had any background in programming I think it would’ve have taken me more time to come to grips with a lot of the concepts – especially with the early lessons on Python.
However, what differentiated the course for me compared to other online courses that I’ve taken (such as those on Udemy) were a few factors that helped motivate me to finish the course and achieve the outcomes.
- The cost. Udacity nanodegrees are multiple times more expensive compared to the average Udemy course so you want to ensure you have something to show for it at the end of the course so your money isn’t wasted.
- Time frame. The 3-months (or 4 if you get the 1 month extension) you have to complete the nanodegree force you to plan out your time so you are putting in enough hours to actually complete it and not just procrastinate until you forget about it. Most people who enrolled in a Udemy course will know what this is like.
- Personal mentor. Having the personal mentor check up on you regularly is a great way to be held accountable to your goals. The 1-on-1 chat at the beginning of the program also helps to make sure that you are serious about completing the course.
Having said that, if you don’t need these motivating factors then there is no reason you can’t learn the content covered by yourself. In fact, it may even be better for you to solve the issues you run into completely by yourself. After all, the personal mentor and Udacity community won’t be there with you after you complete your nanodegree.
Overall, it was a positive experience that I would definitely recommend to others who are looking to learn Python with a focus on AI.
If you believe you have the discipline and motivation to learn Python and the basics of AI/machine learning on your own, then you may as well save the cost of the course and go do that instead.