Gift Guide

Natural Language Processing with Python [NOOK Book]


This book offers a highly accessible introduction to natural language processing, the field that supports a variety of language technologies, from predictive text and email filtering to automatic summarization and translation. With it, you'll learn how to write Python programs that work with large collections of unstructured text. You'll access richly annotated datasets using a comprehensive range of linguistic data structures, and you'll ...

See more details below
Natural Language Processing with Python

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK 7.0
  • Samsung Galaxy Tab 4 NOOK 10.1
  • NOOK HD Tablet
  • NOOK HD+ Tablet
  • NOOK eReaders
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac
  • NOOK for Web

Want a NOOK? Explore Now

NOOK Book (eBook)
$19.99 price
(Save 44%)$35.99 List Price


This book offers a highly accessible introduction to natural language processing, the field that supports a variety of language technologies, from predictive text and email filtering to automatic summarization and translation. With it, you'll learn how to write Python programs that work with large collections of unstructured text. You'll access richly annotated datasets using a comprehensive range of linguistic data structures, and you'll understand the main algorithms for analyzing the content and structure of written communication.

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.
Read More Show Less

Product Details

  • ISBN-13: 9780596555719
  • Publisher: O'Reilly Media, Incorporated
  • Publication date: 6/12/2009
  • Sold by: Barnes & Noble
  • Format: eBook
  • Edition number: 1
  • Pages: 504
  • Sales rank: 797,184
  • File size: 9 MB

Meet the Author

Steven Bird is Associate Professor in the Department of Computer Science and Software Engineering at the University of Melbourne, and Senior Research Associate in the Linguistic Data Consortium at the University of Pennsylvania. He completed a PhD on computational phonology at the University of Edinburgh in 1990, supervised by Ewan Klein. He later moved to Cameroon to conduct linguistic fieldwork on the Grassfields Bantu languages under the auspices of the Summer Institute of Linguistics. More recently, he spent several years as Associate Director of the Linguistic Data Consortium where he led an R&D team to create models and tools for large databases of annotated text. At Melbourne University, he established a language technology research group and has taught at all levels of the undergraduate computer science curriculum. In 2009, Steven is President of the Association for Computational Linguistics.

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.

Read More Show Less

Table of Contents

What You Will Learn;
Why Python?;
Software Requirements;
Natural Language Toolkit (NLTK);
For Instructors;
Conventions Used in This Book;
Using Code Examples;
Safari® Books Online;
How to Contact Us;
Chapter 1: Language Processing and Python;
1.1 Computing with Language: Texts and Words;
1.2 A Closer Look at Python: Texts as Lists of Words;
1.3 Computing with Language: Simple Statistics;
1.4 Back to Python: Making Decisions and Taking Control;
1.5 Automatic Natural Language Understanding;
1.6 Summary;
1.7 Further Reading;
1.8 Exercises;
Chapter 2: Accessing Text Corpora and Lexical Resources;
2.1 Accessing Text Corpora;
2.2 Conditional Frequency Distributions;
2.3 More Python: Reusing Code;
2.4 Lexical Resources;
2.5 WordNet;
2.6 Summary;
2.7 Further Reading;
2.8 Exercises;
Chapter 3: Processing Raw Text;
3.1 Accessing Text from the Web and from Disk;
3.2 Strings: Text Processing at the Lowest Level;
3.3 Text Processing with Unicode;
3.4 Regular Expressions for Detecting Word Patterns;
3.5 Useful Applications of Regular Expressions;
3.6 Normalizing Text;
3.7 Regular Expressions for Tokenizing Text;
3.8 Segmentation;
3.9 Formatting: From Lists to Strings;
3.10 Summary;
3.11 Further Reading;
3.12 Exercises;
Chapter 4: Writing Structured Programs;
4.1 Back to the Basics;
4.2 Sequences;
4.3 Questions of Style;
4.4 Functions: The Foundation of Structured Programming;
4.5 Doing More with Functions;
4.6 Program Development;
4.7 Algorithm Design;
4.8 A Sample of Python Libraries;
4.9 Summary;
4.10 Further Reading;
4.11 Exercises;
Chapter 5: Categorizing and Tagging Words;
5.1 Using a Tagger;
5.2 Tagged Corpora;
5.3 Mapping Words to Properties Using Python Dictionaries;
5.4 Automatic Tagging;
5.5 N-Gram Tagging;
5.6 Transformation-Based Tagging;
5.7 How to Determine the Category of a Word;
5.8 Summary;
5.9 Further Reading;
5.10 Exercises;
Chapter 6: Learning to Classify Text;
6.1 Supervised Classification;
6.2 Further Examples of Supervised Classification;
6.3 Evaluation;
6.4 Decision Trees;
6.5 Naive Bayes Classifiers;
6.6 Maximum Entropy Classifiers;
6.7 Modeling Linguistic Patterns;
6.8 Summary;
6.9 Further Reading;
6.10 Exercises;
Chapter 7: Extracting Information from Text;
7.1 Information Extraction;
7.2 Chunking;
7.3 Developing and Evaluating Chunkers;
7.4 Recursion in Linguistic Structure;
7.5 Named Entity Recognition;
7.6 Relation Extraction;
7.7 Summary;
7.8 Further Reading;
7.9 Exercises;
Chapter 8: Analyzing Sentence Structure;
8.1 Some Grammatical Dilemmas;
8.2 What’s the Use of Syntax?;
8.3 Context-Free Grammar;
8.4 Parsing with Context-Free Grammar;
8.5 Dependencies and Dependency Grammar;
8.6 Grammar Development;
8.7 Summary;
8.8 Further Reading;
8.9 Exercises;
Chapter 9: Building Feature-Based Grammars;
9.1 Grammatical Features;
9.2 Processing Feature Structures;
9.3 Extending a Feature-Based Grammar;
9.4 Summary;
9.5 Further Reading;
9.6 Exercises;
Chapter 10: Analyzing the Meaning of Sentences;
10.1 Natural Language Understanding;
10.2 Propositional Logic;
10.3 First-Order Logic;
10.4 The Semantics of English Sentences;
10.5 Discourse Semantics;
10.6 Summary;
10.7 Further Reading;
10.8 Exercises;
Chapter 11: Managing Linguistic Data;
11.1 Corpus Structure: A Case Study;
11.2 The Life Cycle of a Corpus;
11.3 Acquiring Data;
11.4 Working with XML;
11.5 Working with Toolbox Data;
11.6 Describing Language Resources Using OLAC Metadata;
11.7 Summary;
11.8 Further Reading;
11.9 Exercises;
Afterword: The Language Challenge;
Language Processing Versus Symbol Processing;
Contemporary Philosophical Divides;
NLTK Roadmap;
NLTK Index;
General Index;

Read More Show Less

Customer Reviews

Average Rating 1
( 2 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 2 Customer Reviews
  • Anonymous

    Posted September 30, 2012

    Terrible formatting

    This book is awful to navigate. It gets stuck on pages and skips pages. The content is great and really useful but I wish they'd spent more time and formatted it properly.

    0 out of 1 people found this review helpful.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted July 30, 2012


    "Im locked out. Bleh."

    0 out of 1 people found this review helpful.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing all of 2 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)