Natural Language Processing with Python: Analyzing Text with the Natural Language Toolkit 1st Edition
| Steven Bird (Author) Find all the books, read about the author, and more. See search results for this author |
| Ewan Klein (Author) Find all the books, read about the author, and more. See search results for this author |
Use the Amazon App to scan ISBNs and compare prices.
Packed with examples and exercises, Natural Language Processing with Python will help you:
- Extract information from unstructured text, either to guess the topic or identify "named entities"
- Analyze linguistic structure in text, including parsing and semantic analysis
- Access popular linguistic databases, including WordNet and treebanks
- Integrate techniques drawn from fields as diverse as linguistics and artificial intelligence
This book will help you gain practical skills in natural language processing using the Python programming language and the Natural Language Toolkit (NLTK) open source library. If you're interested in developing web applications, analyzing multilingual news sources, or documenting endangered languages -- or if you're simply curious to have a programmer's perspective on how human language works -- you'll find Natural Language Processing with Python both fascinating and immensely useful.
Frequently bought together

- +
- +
Customers who viewed this item also viewed
From the brand
-
Sharing the knowledge of experts
O'Reilly's mission is to change the world by sharing the knowledge of innovators. For over 40 years, we've inspired companies and individuals to do new things (and do them better) by providing the skills and understanding that are necessary for success.
Our customers are hungry to build the innovations that propel the world forward. And we help them do just that.
-
From the Publisher
|
|
|
|
|
|---|---|---|---|---|
| Practical Natural Language Processing | Natural Language Processing with Python | Natural Language Processing with PyTorch | Natural Language Processing with Spark NLP | |
| Natural Language Processing from O'Reilly Media | A Comprehensive Guide to Building Real-World NLP Systems | Analyzing Text with the Natural Language Toolkit | Build Intelligent Language Applications Using Deep Learning | Learning to Understand Text at Scale |
Editorial Reviews
About the Author
Ewan Klein is Professor of Language Technology in the School of Informatics at the University of Edinburgh. He completed a PhD on formal semantics at the University of Cambridge in 1978. After some years working at the Universities of Sussex and Newcastle upon Tyne, Ewan took up a teaching position at Edinburgh. He was involved in the establishment of Edinburgh's Language Technology Group in 1993, and has been closely associated with it ever since. From 2000-2002, he took leave from the University to act as Research Manager for the Edinburgh-based Natural Language Research Group of Edify Corporation, Santa Clara, and was responsible for spoken dialogue processing. Ewan is a past President of the European Chapter of the Association for Computational Linguistics and was a founding member and Coordinator of the European Network of Excellence in Human Language Technologies (ELSNET).
Edward Loper has recently completed a PhD on machine learning for natural language processing at the the University of Pennsylvania. Edward was a student in Steven's graduate course on computational linguistics in the fall of 2000, and went on to be a TA and share in the development of NLTK. In addition to NLTK, he has helped develop two packages for documenting and testing Python software, epydoc, and doctest.
Product details
- Publisher : O'Reilly Media; 1st edition (August 4, 2009)
- Language : English
- Paperback : 502 pages
- ISBN-10 : 0596516495
- ISBN-13 : 978-0596516499
- Item Weight : 1.75 pounds
- Dimensions : 7 x 1.2 x 9.19 inches
- Best Sellers Rank: #51,486 in Books (See Top 100 in Books)
- #12 in Natural Language Processing (Books)
- #15 in JavaScript Programming (Books)
- #26 in Programming Algorithms
- Customer Reviews:
About the authors

Associate Professor, Department of Computer Science and Software Engineering, University of Melbourne; Senior Research Scientist, International Computer Science Institute, University of California Berkeley.

Discover more of the author’s books, see similar authors, read author blogs and more
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonTop reviews from the United States
There was a problem filtering reviews right now. Please try again later.
The book has several strengths. It is tightly integrated with Python and NLTK code. There are numerous examples throughout and the author walks through and modifies them to clarify how the NLTK works. The sizeable reference sections at the end of each chapter are also valuable. These sections include both introductory and advanced sources. And a lot of them. There is also useful integration with the NLTK web site which provides and points to additional resources.
Not to be missed are the end-of-chapter questions. Readers have come to expect little from these learning aids; they usually invite us to parrot back a small number of key concepts or try a few calculations or code segments. This book's questions go far beyond the norm. They introduce new concepts, encourage writing and comparing several versions of a program, and otherwise extend each chapter's contents. Even readers who don't plan to complete these exercises should read them closely.
Weaknesses are few. As noted, the book may assume too much Python and NLP background for some users. It does have a narrow focus and is not organized the right way to be used as a reference book. Readers who want something a little more modular and reference-like might prefer Jacob Perkins' Python 3 Text Processing with NLTK 3 Cookbook . David Mertz's Text Processing in Python is an older source, but still useful as well.
1. Know the basics of natural language processing (NLP) or linguistics;
2. Know the Python programming language or you're willing to learn it;
3. Are using the NLTK library or plan to do so.
NLTK is a Python library that offers many standard NLP tools (tokenizers, POS taggers, parsers, chunkers and others). It comes with samples of several dozens of text corpora typically used in NLP applications, as well as with interfaces to dictionary-like resources such as WordNet and VerbNet. No FrameNet, though. NLTK is well documented, so you might not need this book initially. However, it definitely helps to have it on your desk if you are serious about using NLTK.
The first chapters are a bit messy, as they attempt to introduce all three themes (NLP, NLTK and Python) together. Beginners may have some difficulty sorting things out. By the time you reach the WordNet section, you either got lost in the forest, realize that you would never understand this topic without the book, or both. However, if you are a bit patient and try out all simple code examples, you'll make it eventually. In my opinion, NLTK remains the simplest, most elegant and well rounded library of its kind.
My interest in NLP (and the book) is limited to being able to apply machine learning techniques to solve NLP problems, so I found the first two sections really useful. However, the entire book (including the exercises) is a great source of ideas on what you can accomplish in NLP with NLTK.








