Version: Spring 2024
Catalog description: Concepts and practices for analysis of English by computer with emphasis on the applications of computational analysis to problems in applied linguistics such as corpus analysis and recognition of learner language in computer-assisted learning and language assessment.
Note about computer programming: This is not a programming class. Focused instruction in computer programming is not part of the learning experience in this class. However, a working knowledge of a programming language is expected from students who are taking this class, and developing computer programs is highly encouraged for the best outcomes of project-based learning.
Topic 1. Word and sentence tokenization: The first step in most computational analysis tasks (Weeks 1-2)
Readings:
- Jurafsky and Martin, Chapter 2 - read sections 2.1-2.4
Learning outcomes:
- define the task of computational analysis (as a specific example, research orthographic signals of sentence boundaries)
- develop a set of regular expressions for a rule-based sentence tokenzier for English
Assessment: participation points (5 max). Participation will be assessed holistically based on the following criteria:
- consistency of preparation for class (completion of assigned readings and other homework)
- meaningful participation in in-class discussions and activities
- substantive contribution to group work on task definition and system development
- evidence of the ability to synthesize prior linguistic knowledge for the development of the computational system
Topic 2. Evaluation of computational approaches to language analysis (Weeks 3-4)
Readings:
Learning outcomes:
- manually annotate a gold-standard corpus for system evaluation
- calculate, interpret, and report inter-annotator reliability using Krippendorff's alpha
- calculate, interpret, and report standard performance metrics (accuracy, precision, recall, F1-score) of the system
Assessment: a two-page write-up about the implementation and evaluation of the tokenizer (Methods and Results sections) - 30 points max, according to the following rubric:
- precise, succinct and reproducible description of the methods - 10 points
- clear, accurate and unbiased presentation of the results - 10 points
- correct calculation of the reliability index and the system performance metrics - 10 points
Topic 3. Computational analysis of English spelling: editing distance (Weeks 5-6)
Readings:
- Jurafsky and Martin, Chapter 2 - read sections 2.5, 2.8
Learning outcomes:
- explain and use the method of dynamic programming for combinatory optimization
- implement the calculation of Levenshtein distance between two strings
Assessment: an in-class quiz to demonstrate the understanding of dynamic programming - 5 points max. Rubric will be provided on the quiz.
Topic 4. Computational analysis of English morphology: Hidden Markov Models (HMM) and Part-of-Speech (POS) tagging (Weeks 7-9)
Readings:
Learning outcomes:
- explain how HMMs work and discuss the simplifying assumptions of HMMs for the POS tagging task
- explain the logic and the benefits of the Viterbi algorithm for POS tagging
- implement the training and classification procedures for a statistical (HMM) POS tagger
Assessment: participation points (10 max). Participation will be assessed holistically based on the following criteria:
- consistency of preparation for class, meaningful participation in in-class activities
- substantive contribution to group work on the development of a statistical POS tagger
- evidence of the ability to synthesize prior linguistic knowledge for the development of the computational systems
Topic 5. Computational analysis of English syntax: post-processing syntactic-parse information (Weeks 10-11)
Learning outcomes:
- understand computational representations of syntactic structures
- computationally process syntactic-parse information
Assessment: participation points (10 max). Participation will be assessed holistically based on the following criteria:
- consistency of preparation for class, meaningful participation in in-class activities
- substantive contribution to group work on post-processing syntactic-parse information
Topic 6. Computational analysis of English semantics: WordNet and embeddings (Weeks 12-13)
Learning outcomes:
- understand computational representations of meaning
- computationally process semantic information using WordNet and embeddings
Assessment: participation points (10 max). Participation will be assessed holistically based on the following criteria:
- consistency of preparation for class, meaningful participation in in-class activities
- substantive contribution to group work on computational semantics
Personal Project (Weeks 14-15)
Possible directions for the personal project include:
- a corpus-based empirical research study
- development of an automated writing evaluation tool/grammar checker
- a natural-language understanding module for a (spoken) dialog system
The project must use at least one of the following:
- post-processing of syntactic parse information
- computational analysis of natural language semantics
Assessment: a short paper documenting the final project - 30 points max, according to the following rubric:
- clear and effective delivery of the Introduction section - 5 points
- precise, succinct and reproducible description of methodology - 10 points
- clear, accurate and unbiased presentation of results (empirical findings or system evaluation) - 10 points
- discussion of findings within the broader context of research in applied linguistics - 5 points
Note: There will be no final exam.
Grading scale: 930 => A, 900 => A-, 870 => B+, 830 => B, etc.