Reviewed by Thomas Hoffmann, University of Osnabrück
Great technological advancements of the past thirty years have led to a significant increase in computational speed and efficiency, and the success of the computer has had an enormous impact on the field of linguistics. The present handbook on computational linguistics (CL) and natural language processing (NLP) should, therefore, be of great interest to a large number of graduate students and researchers.
The volume is divided into four parts and covers all of the main fields of CL and NLP research. Following the editors’ concise introduction (1–8), Part 1 provides the ‘Formal foundations’ of the two disciplines. First, Shuly Wintner gives an overview of the elementary concepts of formal language theory (11–42), which includes a detailed discussion of basic issues such as formal language classes and the Chomsky Hierarchy. Next, Ian Pratt-Hartmann investigates computational resources in time and space in ‘Computational complexity in natural language’ (43–73). Ciprian Chelba’s chapter, ‘Statistical language models’ (74–104), follows and, among other topics, reviews probabilistic n-gram models and their relation to Markov systems, and compares them with models generated by probabilistic context-free grammars. The final chapter of Part 1 by Mark-Jan Nederhof and Giorgio Satta (‘Theory of parsing’, 105–30) focuses on the parsing of several context-free grammars and compares these with dependency grammar parsers and tree adjoining grammars.
Part 2 presents current methods employed in CL and NLP and begins with five chapters on widely used and influential techniques for machine learning, namely, ‘Maximum entropy models’ by Robert Malouf (133–53), ‘Memory-based learning’ by Walter Daelemans and Antal van den Bosch (154–79), ‘Decision trees’ by Helmut Schmid (180–96), ‘Unsupervised learning and grammar induction’ by Alexander Clark and Shalom Lappin (197–220), and ‘Artificial neural networks’ by James B. Henderson (221–37). Following is a chapter by Martha Palmer and Nianwen Xue, ‘Linguistic annotation’ (238–70), which deals with CL and NLP issues of corpus annotation, and a chapter by Philip Resnik and Jimmy Lin, which addresses the issue of evaluation of NLP systems (271–95).
CL and NLP approaches to various linguistic domains comprise the focus of Part 3, ‘Domains of application’: Steve Renals and Thomas Hain concentrate on phonetic issues and acoustic modelling in automatic speech recognition (299–332). This is followed by a chapter on the statistical parsing (333–63) of syntactic corpus data by Stephen Clark, a contribution on segmentation and morphology (364–93) by John A. Goldsmith, and an article by Chris Fox on computational semantics (394–428). ‘Computational models of dialogue’, by Jonathan Ginzburg and Raquel Fernández (429–81), and ‘Computational psycholinguistics’, by Matthew W. Crocker (482–513), round off Part 3.
Finally, Part 4 (‘Applications’) of the book deals with engineering tasks that NLP and CL procedures have been applied to, namely, ‘Information extraction’ (Ralph Grishman, 517–30), ‘Machine translation’ (Andy Way, 531–73), ‘Natural language generation’ (Ehud Reiter, 574–98), ‘Discourse processing’ (Ruslan Mitkov, 599–629) and ‘Question answering’ (Bonnie Webber and Nick Webb, 630–54).
Handbook editors always have the difficult task of deciding which topics to include and which to omit. This task is even more daunting for a handbook on a field as vibrant and dynamic as CL and NLP, which can never be documented exhaustively. Nevertheless, the editors of the present volume have succeeded in compiling a collection of articles that together constitute a state-of-the art introduction to CL and NLP.