Contents

What This Book Is About

Overview for Instructors

Acknowledgments

1 Prologue

1.1 Where do we start?

1.2 Writing systems used for human languages

1.3 Encoding written language

1.4 Encoding spoken language

2 Writers’ Aids

2.1 Introduction

2.2 Kinds of spelling errors

2.3 Spell checkers

2.4 Word correction in context

2.5 Style checkers

3 Language Tutoring Systems

3.1 Learning a language

3.2 Computer-assisted language learning

3.3 Why make CALL tools aware of language?

3.4 What is involved in adding linguistic analysis?

3.5 An example ICALL system: TAGARELA

3.6 Modeling the learner

4 Searching

4.1 Introduction

4.2 Searching through structured data

4.3 Searching through unstructured data

4.4 Searching semi-structured data with regular expressions

4.5 Searching text corpora

5 Classifying Documents

5.1 Automatic document classification

5.2 How computers “learn”

5.3 Features and evidence

5.4 Application: Spam filtering

5.5 Some types of document classifiers

5.6 From classification algorithms to context of use

6 Dialog Systems

6.1 Computers that “converse”?

6.2 Why dialogs happen

6.3 Automating dialog

6.4 Conventions and framing expectations

6.5 Properties of dialog

6.6 Dialog systems and their tasks

6.7 Eliza

6.8 Spoken dialogs

6.9 How to evaluate a dialog system

6.10 Why is dialog important?

7 Machine Translation Systems

7.1 Computers that “translate”?

7.2 Applications of translation

7.3 Translating Shakespeare

7.4 The translation triangle

7.5 Translation and meaning

7.6 Words and meanings

7.7 Word alignment

7.8 IBM Model 1

7.9 Commercial automatic translation

8 Epilogue

References

Concept Index