Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are the prerequisites to learning natural language processing? [closed]

Tags:

I am planning to learn natural language processing this year.

But when I start reading introductory books on this topic, I found that I miss a lot of points relating mainly to mathematics.

So I'm here searching for what I should learn before I can learn nlp, well, more smoothly?

Thanks in advance.

like image 768
satoru Avatar asked Jan 05 '10 14:01

satoru


People also ask

What are the prerequisites for learning natural language processing?

Prerequisites. While natural language processing is super cool, it requires usage of many modern machine learning algorithms and involves a lot of math and programming. To be successful in the class, on the math side, you should feel comfortable with probability, linear algebra, and calculus.

Can I learn NLP without machine learning?

Machine learning is considered a prerequisite for NLP as we used techniques like POS tagging, Bag of words (BoW), TF-IDF, Word to Vector for structuring text data.

How do I start with natural language processing?

Implement a spell checker based on edit distances between words. Implement a Markov chain text generator. Implement a topic model using latent Dirichlet allocation (LDA) Use word2vec to generate word embeddings from a large text corpus, e.g. Wikipedia.

Is deep learning a prerequisite for NLP?

Natural language processing is not “solved“, but deep learning is required to get you to the state-of-the-art on many challenging problems in the field.


1 Answers

There are two main approaches to NLP right now - one is the language-based approach detailed by Jurafsky and Martin (Speech and Language Processing) and the other is a probability and statistics-based approach (Foundations of Statistical Natural Language Processing).

Most people that I've talked to tend to prefer the latter as far as ease of ramping up and useful results. So I would recommend going over probability theory first and then tackling an NLP book (like the second one I linked to, which I am actually using on a project right now with pretty good results).

While I agree with laura that formal language theory is highly useful, I actually think that currently if you just want to get into the actual NL parts of NLP, you can leave formal languages for later as there are enough tools that will do your lexical analysis / parsing / tokenizing / text transformations that you can use those rather than roll your own.

Here is a book describing three such tools - I own it and recommend it as a good introduction to all three. Building Search Applications: Lucene, LingPipe, and Gate

Edit: in response to your question, I would say that the first step would be to get a thorough grounding in the basics of probability (the first 3-5 chapters of any undergrad prob/stats book should be fine), and then from there look up new topics as they come up in the NLP book. For instance, yesterday I had to learn about t-values or something (I'm bad with names) because they happened to be relevant to determining incidence of collocation.

like image 169
danben Avatar answered Sep 20 '22 08:09

danben