Course Websites

CS 447 - Natural Language Processing

Last offered Fall 2024

Official Description

Part-of-speech tagging, parsing, semantic analysis and machine translation. Relevant linguistics concepts from morphology (word formation) and lexical semantics (the meaning of words) to syntax (sentence structure) and compositional semantics (the meaning of sentences). Course Information: 3 undergraduate hours. 3 or 4 graduate hours. Prerequisite: One of CS 173 or MATH 213; CS 225; CS 374 or ECE 374; one of CS 361, STAT 361, ECE 313, MATH 362, MATH 461, MATH 463, STAT 400 or BIOE 310; one of MATH 225, MATH 257, MATH 415, MATH 416, ASRM 406 or BIOE 210.

Related Faculty

Learning Goals

1. Be able to describe key concepts, models and challenges in Natural Language Processing
(this includes linguistic concepts such as POS tags, morphemes, phrase structure trees, dependency trees, various grammar formalisms, computational models such as recurrent and convolutional neural nets, HMMs, PCFGs, IBM models for machine translation; challenges include Zipf's law; lexical, syntactic, semantic, referential ambiguity) (1), (3)

2. Be able to describe, implement, and apply a variety of fundamental algorithms in Natural Language Processing (1), (2), (3)
(e.g. HMMs, CKY parsers, IBM alignment models)

3. Be able to describe and evaluate more complex software systems for various Natural Language Processing tasks (1), (2), (3), (6)

4. Be able to describe current approaches, datasets and systems for various Natural Language Processing tasks (1), (2), (3), (6)

Topic List

Morphological Analysis

POS tagging

Sequence labeling

Syntactic Parsing

Semantic Parsing

Machine Translation




CS446 (Machine Learning) and CS440 (Artificial Intelligence)

Required, Elective, or Selected Elective


Natural Language ProcessingDSO70473ONL4 -    Julia Hockenmaier
Natural Language ProcessingN363292ONL3 -    Julia Hockenmaier
Natural Language ProcessingN463293ONL3 -    Julia Hockenmaier