Book review: “Natural language processing with Python” by Bird, Klein & Loper
August 28th, 2009 at 6:46 amThere are three kinds of people who might think this book could be useful:
- Natural language processing (NLP) researchers and students who want a learn a solid programming tool to help them with their work.
- Python programmers who want to find out more about NLP.
- Newbies in both Python and NLP who just think the topic sounds cool and those whales on the cover are kinda cute.
In my opinion, the only kind that will find this book suitable and useful is (1). If you’re familiar with Python and know no NLP it won’t help you much, because it doesn’t really teach NLP. It shows a few domains of this vast field, with nice code examples and all, but you should probably start with some introductory textbook on the subject or a course. You won’t really learn NLP here.
The book’s focus is mostly on the NLTK library written in Python by the authors. This library implements many NLP algorithms and comes with lots of data for testing and training. Almost no algorithms are implemented in the book – some are explained, and the code always imports the required modules from NLTK and shows their usage. The Python code is well-written and clean.
To conclude, if you’re a NLP researcher or student, this is a very good book to read. Especially if you plan to start working with NLTK (which seems like a mature and powerful tool) – this book will serve as a great introduction. If you have other interests, this is probably not the right book.
Related posts:
- Book review: “Beginning game development with Python and Pygame” by Will McGugan
- Book review: “Mastering algorithms with Perl”
- Book review: “Rapid GUI Programming with Python and Qt” by Mark Summerfield
- Book review: “Matplotlib for Python developers” by Sandro Tosi
- Book review: “C Interfaces and Implementations” by David R. Hanson

August 30th, 2009 at 04:43
Although just being a first year graduate student involved in Natural Language Processing I too took a look at this book some time ago after it being mentioned by a friend. It should be noted that I at this stage had read the two major NLP tomes Jurafsky Martin and Manning Schuetze, the reason I flipped through it was because I wondered if it could stir up some interest among undergraduates for my field without being very heavy.
The feeling I got was that in the beginning it was a step-by-step guide to some Python language features and later on some other step by step guides to some NLP task using a specific toolkit. The theoretical descriptions were missing or very brief, while I respect briefness I find it a bit strange to bring something up as a task and then leave out any solution. Unlike both earlier mentioned NLP books it does not refer back to research and other sources to the same extent.
I can’t say that I would recommend this book to anyone. I got the feeling of an internet tutorial rather than a textbook that holds my hand while charting unknown lands. Small recipes, not much more. For researchers the NLTK documentation should suffice and for anyone truly interested in NLP to just read the usage of a toolkit from a book should be pointless. Perhaps if you wish to use some techniques to boost your webapp or data miner without proper background knowledge you may find the NLP parts useful.
For a beginner, get a Python book, implement something small, play around and have a friend or teacher on standby while doing so. You should be able to understand most of the code at the level of this book within a week or weekend. Then I would rather read selected parts of Jurafsky Martin and point out that you should not be too hard on yourself if you skip some of the mathematical bits, just make sure you understand the theory and why X and Y are issues and Z can be applied.
If you already know how to program, read Guido’s online tutorial, spend some time, implement something small and then do just like the beginner and grab Jurafsky Martin (personal preference, 50/50 among professors agree with me on it being a better choice due to the age of Manning Schuetze).
I hope someone finds this feedback useful, I believe there are thousands of ways leading to NLP, I just have a hard time seeing this book as a preferable one.
September 4th, 2009 at 10:45
Great info, ive linked to you from my blog.