I've searched the web and there are hundreds of recommendations on what to read. The time moves on and new better quality techniques are published, so I would like to know what is relevant in 2018?

My background is 4 years of BSc in Maths & Stats (top uni) + 1 year of role in Data Science (building predictive models, no NLP).

If possible, please separate it into sections/readings, e.g.

  • Background (History, e.g. philosophical)

  • Theoretical (Mathematics)

  • Practical (Using Tensorflow and other NLP libraries to build algorithms)

I have a few side projects that I would like to do:

Build an algorithm which answers multiple choice questions

E.g. given a question:

Which is not a fruit? 1) Apple 2) Cucumber

I would like NLP to understand negation, and find that the topic of the question is fruit. Then I'd probably incorporate Google Search API or something.

Categorise a list of 'keyword' searches into categories.

Let's take google which probably has something like this, it categorises every keyword and gives recommendations. Given a list of 10,000 searches, I would like to categorise them into N categories, based on similarity (not just how similar the words are, but including synonyms).


I would suggest instead of trying to get many sources, get one source that goes through concepts first (fairly robustly), then seek out sources to refine or deepen your knowledge. One source comes from Stanford's NLP group, and is Introduction to Information Retrieval. The only thing I don't like about this books is that it tends to orient documents as columns (where data science has more or less agreed that they are rows), but that's a pretty trivial concern (as long as you can take a matrix transpose). Aside from that, this book has excellent explanations, and the proper depth and breadth to be considered an exhaustive base for NLP.


[not a book but...] Definitely check out https://github.com/sebastianruder/NLP-progress for a self-updating list of relevant state-of-the-art literature in the field of NLP and its subfields.

As per the side projects that you mentioned, you might want to check e.g.

Check also recommendations that were given on SO,

https://stackoverflow.com/questions/2233435/machine-learning-and-natural-language-processing https://stackoverflow.com/questions/212219/what-are-good-starting-points-for-someone-interested-in-natural-language-processi


Natural Language Processing in Action: Understanding, Analyzing, and Generating Text with Python is a new practical textbook that covers all the latest (2019) topics.


Collected from Different Sources

NLP industry is expected to grow from USD 10.2 billion in 2019 to USD 26.4 billion by 2024. Here are a few resources to get started with NLP and be a part of this highly awesome domain.


19 Great Articles About Natural Language Processing (NLP):

  1. Structuring Unstructured Big Data via Indexation

  2. Your Guide to Natural Language Processing (NLP)

  3. Comparison of Top 6 Python NLP Libraries

  4. Text Classification & Sentiment Analysis tutorial

  5. Deep Learning Research Review: Natural Language Processing

  6. 10 Common NLP Terms Explained for the Text Analysis Novice

  7. Temporal Convolutional Nets Take Over from RNNs for NLP Predictions

  8. How I used NLP (Spacy) to screen Data Science Resumes

  9. Data Science Reveals Trump Tweets are Written by Two People

  10. Simple introduction to Natural Language Processing

  11. An NLP Approach to Analyzing Twitter, Trump, and Profanity

  12. A Natural Language Processing (NLP) Approach to Data Exploration

  13. Python NLTK Tools List for Natural Language Processing

  14. NLP app to find great available domain names

  15. Scaling an NLP problem without using a ton of hardware

  16. Analyzing the structure and effectiveness of news headlines

  17. Seven tricky sentences for NLP and text mining algorithms

  18. Overview of Artificial Intelligence and Role of NLP

  19. Text Classification & Sentiment Analysis tutorial

For Beginners


  • Bible of NLP is NLTK (Natural Language Toolkit). They have a free ebook as well.


Blog Series

Youtube videos

Deep Learning


Tutorials by Frameworks


Stanford CS224n: Natural Language Processing with Deep Learning

Python libraries

Spacy - Industrial-Strength Natural Language Processing


I have checked/read/watched countless sources on NLP, but at the end only two really made the difference:

  1. The best book ever on NLP: Speech and Language Processing by Dan Jurafsky and James H. Martin. The authors are making all its content available for free on their academic website. This contains 99.999% of the NLP notions needed in a whole ML career, and they keep it constantly updated.

  2. Stanford University course on Natural Language Processing with Deep Learning, by Chris Manning et al. This is a very intense course that explains everything from basics to very advanced attention RNNs. Quite challenging at some points, but it's so dense of extremely high quality content. They put all the 2019 course on YouTube.

There's so many stuff around that I found on GitHub, books, blogs, ... you name it. But at the end what really made the difference have been these two above.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.