Tutorials For Natural Language Processing

28,591

Solution 1

You could read Jurafsky and Martin's Speech and Language Processing (2008 edition), which is the standard textbook in the field. It's long, and has a variety of topics, so I'd suggest reading just the chapters that really apply to your interests.

Further, the best way to learn is almost certainly to actually implement NLP algorithms from scratch. You could pick some standard tasks (language modeling, text classification, POS-tagging, NER, parsing) and implement various algorithms from the ground up (ngram models, HMMs, Naive Bayes, MaxEnt, CKY) to really understand what makes them work. It also shouldn't be too hard to find some free dataset to test your implementations on.

Finally, there are lots of tutorials out there for specific NLP algorithms that are excellent. For example, if you want to build an HMM, I suggest Jason Eisner's tutorial which also covers smoothing and unsupervised training with EM. If you want to implement Gibbs sampling for unsupervised Naive Bayes training, I suggest Philip Resnik's tutorial.

Solution 2

Aside from Jurafsky and Martin's book, Christopher D. Manning and Hinrich Schütze's Foundations of Statistical Natural Language Processing is also widely used. For IR, Manning et al. also wrote Introduction to Information Retrieval which can be read or downloaded online at their site.

Solution 3

If you want practical knowledge on how can you work on Natural language you should start implementing it. I suggest to use NLTK(Natural Language Proecessing Toolkit) with Python. Its easy to implement NLP in python.

You can refer to this link http://nltk.org/

Or you can try it online on http://cst.dk/online/pos_tagger/uk/

Solution 4

Instead of reading a specific book, diving into the sea of papers might be an as good idea. http://www.aclweb.org, for example, contains many topics on NLP. Through those papers, you get references to more papers, some of which are the foundations of a certain branch of NLP. And because they were written by different authors, you are unlikely to be influenced too much by one point of view.

Solution 5

If you are a Java developer there is an extensive list of tutorials for how to build components of NLP systems using LingPipe at http://alias-i.com/lingpipe/demos/tutorial/read-me.html. Full disclosure I wrote some of those tutorials and one of the books below.

There are a few books that are more industrially oriented:

1) Natural Language Processing with Java by Richard M Reese

This covers how to do some common tasks with a range of open source toolkits (including LingPipe).

2) Natural Language Processing with Java and LingPipe Cookbook Paperback by Breck Baldwin, Krishna Dayanidhi

This book is task driven at the level of "get the component built" and covers the major technologies driving most NLP systems that are text driven. It does not cover translation. It goes into more detail than the first book and has broader coverage than the LingPipe tutorials but is sometimes less detailed than the tutorials.

Breck

Share:
28,591

Related videos on Youtube

Max
Author by

Max

#SOreadytohelp

Updated on May 20, 2020

Comments

  • Max
    Max almost 4 years

    I recently attended a class on coursera about "Natural Language Processing" and I learnt a lot about parsing, IR and other interesting aspects like Q&A etc. though I grasped the concepts well but I did not actually get any practical knowledge of it. Can anyone suggest me good online tutorials or books for Natural Language Processing?

    Thanks

  • arunmoezhi
    arunmoezhi almost 12 years
    Are we allowed to post download links of books?
  • Agi Hammerthief
    Agi Hammerthief over 9 years
    @arunmoezhi Assuming that's not a rhetorical/sarcastic question: Not as far as I know (and I'm inclined towards 'no'), but it shouldn't be too hard to locate them if left as an exercise for the reader.
  • arunmoezhi
    arunmoezhi over 9 years
    It's not a sarcAstic question.