I 256: Applied Natural Language Processing

   Fall 2006, Prof. Marti Hearst

Course Information

Helpful Programming Links


Unfortunately, there really is not appropriate textbook for this course. Instead we will be reading online readings and handouts.

Students will need to learn a bit of Python programming for this course, and so an introductory Python book is recommended. I like Learning Python by O'Reilly.

These are the two main NLP textbooks, used in most NLP courses:

This one is short; the chapter on text categorization is especially relevant, but there isn't enough relevant for us to merit requiring it:

This text has been around for quite a long time, but has some very useful sections. An advantage is that it is now online and free.

These are guides to text processing as opposed to linguistic processing. The first uses java and is good for what it does (I have it if people want to look at it). I haven't seen the second one.

The first below is an excellent introduction to Python; the second is an online book which I've found a helpful supplement:

Books on English grammer. The first is a wonderful, concise summary. The second is an amazing encyclopediac account of English grammer.

Some other NLP books:


Fall '04 version of course