How can a computer work with words, meaning, and conversation? This learning hub connects linguistic questions with practical experiments in natural language processing. Start with a small dataset, build a simple solution, and examine where its predictions succeed or fail.
The materials are intended for students of linguistics, language teaching, and related disciplines. Basic Python skills will help with the practical work; keep a notebook of unfamiliar mathematical concepts and connect each one to an example.
Turn a linguistic question into a task with identifiable inputs, outputs, and evaluation criteria.
Prepare a small text collection and document the choices made during annotation.
Compare a baseline with a more complex approach using the same evaluation data.
Explain errors with examples, considering ambiguity, language variety, and data coverage.
Report data provenance, limitations, and responsible uses of a system.
This hub follows the three-part reading structure of Jurafsky and Martin’s Speech and Language Processing, third-edition draft, released 19 August 2026. The learning activities below are suggested exercises for this page.
Read in sequence, keeping a worked example beside your notes. For each method, identify what it learns from data and what would count as a useful prediction.
Choose a small collection of openly licensed texts. Define a classification task, write annotation rules, and reserve a test set before modelling. Compare a simple majority-class baseline with a classifier. Include a confusion matrix and discuss five errors with their surrounding text.
Choose a question that matters to a particular user. Before selecting a model, decide what evidence would show that the system is useful and what kinds of mistakes would be costly.
Chapter 12 — Agents: planned; no chapter available.
Reading note: Chapter 10 is incomplete in this draft.
Prepare ten questions about a small, openly available document collection. Record an expected answer and supporting passage for each. Test a retrieval-based workflow, then inspect whether each answer is supported by the retrieved text. Separate retrieval failures from answer-generation failures in your report.
Connect the output of a computational system to a linguistic analysis. Work with short examples first, and write down how you resolve disagreements before scaling up annotation.
Collect a small set of public texts with clear reuse permissions. Define an annotation scheme for one phenomenon, such as entity reference or conversational turns. Ask two annotators to label a shared sample, inspect disagreements, and revise the guidelines. Submit the guidelines, anonymised examples, and a short account of unresolved cases.
Use the textbook’s online appendices A–K for additional background. Return to these selectively when an exercise exposes a gap in your understanding.
Investigate a focused question using a dataset you are permitted to use. Submit a reproducible notebook, a short report, and an error-analysis appendix. Explain the task, data selection, annotation decisions, baseline, evaluation method, and limitations. Where relevant, include examples from Vietnamese or compare two language varieties without assuming that performance will transfer equally.
Before sharing your work: remove personal data, document permissions, keep training and test examples separate, and record any use of generative AI. Support claims with examples and measured results.
Jurafsky, D., & Martin, J. H. (2026). Speech and language processing (3rd ed., online draft, 19 August). Author-hosted manuscript and teaching resources.
This teaching page provides an adapted reading guide and suggested activities. Chapter PDFs and slides remain hosted on the authors’ website. Chapter numbering follows the linked draft; consult the source page for revisions.