Is Udacity NLP Nanodegree the best way to learn NLP?

Abd L-Rahman Sharaf
6 min readApr 27, 2020
My Graduate certificate from the Nanodegree

We are all now locked in our homes, for me it’s my second month in this quarantine -trying to be safe with my family-. Anyways, besides my work-from-home routine, I was used to going to the gym and do some workouts every day, but sadly all the gyms are closed right now and we need to do something else, so I started to get back to my online learning courses as I haven’t taken any new online course from a year or more ago.
One of my friends told me that Udacity.com is offering a free month enrollment in any of their paid courses/programs, this got me excited and rolled my sleeves to start this 30 Days challenge to finish the whole Nanodegree and it was my first time to learn on Udacity.com.
I decided to take the NLP nanodegree assuming that it could be easy to finish in a short time because my job is basically to solve some NLP problems so I already went through many practices and have read much research in this field.

Nanodegree Syllabus

Udacity NLP Nanodegree

To be more concise, the nanodegree has a very good and defined syllabus covering the hottest topics in NLP which I discuss below.

(Part 1) Introduction to Natural Langauge Processing

This module covers the basics and the classical parts in NLP that we currently use it till now because some of the classical/statistical algorithms in NLP are not used or proved to be not a good solution for the problems we’re facing right now.
From this part, if you don’t have any background in NLP you will have a gentle introduction to it and also you will get introduced to one of the most important backbones in classical A.I algorithms which is the Hidden Markov Model (HMMs) the best way to learn the statistical NLP is from this part.

(Part 2) Computing with Natural Language

This one is really the most fascinating part of the three. You will get introduced to the advanced NLP area using the deep neural networks and understand some complex structures like the sequence-to-sequence learning using the encoder-decoder networks.
I would really add that this part added to me a lot to my knowledge especially the lesson of the attention layers and the transformers, those algorithms are published in the last 5 years and still a hot topic till now in the NLP.

(Part 3) Communicating with Natural Language

I would say that this part is a little bit advanced but won’t deal with the common NLP problems specifically, it will be more focused on Voice User Interfaces systems like the ones you use every day (Siri, Alexa, Google home …etc.), so the input data you will use is not text but it will be signals and waves data of human sound speech and you will build Automatic speech recognition (ASR), that’s an exciting lesson in this part that this project is totally different from any other project you have worked on during this program.

Who should take this NLP Nanodegree ?

The nanodegree flagged as an advanced program in Udacity and actually it really needs some prior knowledge in machine learning and basic deep neural network structures specially RNNs. But the program provides a different section for extracurricular content (videos & projects) which can help anyone who doesn’t have any background in RNNs and also some deeper knowledge in other parts like Embeddings (word2vec), Additional text processing, advanced sentiment analysis and also good tutorials for Keras, TensorFlow, and PyTorch which are the most common libraries in deep learning nowadays.

I believe that the more prior knowledge you have in the field in general, not NLP specifically but in AI or DL will give you a higher chance to finish this course in a short time. I finished it in just three weeks of studying and I have some advanced knowledge in NLP.

What are the things that I liked about this Nanodegree ? (pros)

  • To be honest, the second part of this nanodegree is the most important and fruitful part of the three. I’ve gained knowledge in approaches and algorithms that I didn’t use it or understand from anywhere else, they covered a very good part of how the attention mechanism in the RNNs is a turning point in NLP and how it evolved to the transformers architecture which is considered as the state-of-the-art in the field right now.
  • I do really like the projects and how they provide detailed documentation for each project covering a wide range of various tasks in NLP that you would deal with it in your work.
  • The extracurricular syllabus section is a very good part to recap some of the old knowledge I have and would also serve as a very good material for anyone who hasn’t any prior knowledge in ML or DL.
  • Perfect career service to improve your LinkedIn and GitHub profiles which will help you to land your next job.

What are the things that I didn’t like about this Nanodegree ? (cons)

  • The last part in nanodegree was a little bit not common in NLP problems that you deal with a different type of data which are human speech as wave signals and you don’t deal with text.
  • Some projects were black-boxed like the machine translation architecture, the instructors just want you to work on some recommended architectures without giving you the core math behind it which is the most important, but they preferred to make it an extra part for you to learn on your own
  • From the above point, this problem wasn’t just in projects, it also an issue with the whole syllabus. Many lessons in the program were just taught as a black-box without going in the details behind it except some lessons in part-1 and part-2 mainly about attention layers and Hidden Markov model (HMM)

My comparison of this Nanodegree program to other online courses

  • Comparing to one of the most popular online courses (Deep learning specialization) provided by Coursera.com and deeplearning.ai, specifically the sequence models course which covers all the algorithms and all sequence structures in deep learning like RNNs, LSTMs, and GRUs. This course is very good at covering the math behind those most common algorithms in NLP which doesn’t appear as much in the Nanodegree.
    — However, I would say that Udacity program in NLP is more updated with the latest papers and algorithms in NLP which transformers and attention and covers the whole journey in NLP from statistical NLP to advanced NLP using deep learning.
  • I would also compare this program with KnowledgeOfficer.com program which is mainly a persona for anyone wants to be a machine learning engineer.
    — I would say that knowledge officer has a different type of learning style which recommends for you the whole content and learning path well-curated to fit with the market needs but also covers a very good part in NLP which can onboard you with the latest research in this field.

My take-home-message

NLP field is not just an online course you take on any online platform, I prefer to say that NLP or the whole machine learning field is still a research area unless you’re a developer and you want just to use the pre-trained models in your product.

If you want to build your solid knowledge and find a job in this field I really recommend that you don’t just depend on online courses, of course, online courses are a very good start, but you will always need to learn more and you should learn how to read research papers and how you code them in your product that’s the most important skill you should have when you enter this field. NEVER STOP LEARNING

--

--