Semester.ly

Johns Hopkins University | EN.601.465

Natural Language Processing

4.0

credits

Average Course Rating

(4.68)

An in-depth introduction to core techniques for analyzing, transforming, and generating human language. The course spans linguistics, modeling, algorithms, and applications. (1) How should linguistic structure and meaning be represented (e.g., trees, morphemes, λ-terms, vectors)? (2) How can we formally model the legal structures and their probabilities (e.g., grammars, automata, features, log-linear models, recurrent neural nets, Transformers)? (3) What algorithms can estimate the parameters of these models (e.g., gradient descent, EM) and efficiently identify probable structures (e.g., dynamic programming, beam search)? (4) Finally, what kinds of systems can be built with these techniques and how are they constructed and evaluated in practice? Detailed assignments guide students through many details of implementing core NLP methods. The course proceeds from first principles, although prior exposure to AI, statistics, ML, or linguistics can be helpful. Prerequisite: Data Structures and basic familiarity with Python, partial derivatives, matrix multiplication and probabilities.

No Course Evaluations found

Lecture Sections

(01)

No location info
J. Eisner
18:00 - 19:30