ECE 49595 - Natural Language Processing

Course Details

Lecture Hours: 3 Credits: 3

Counts as:

  • EE Elective
  • CMPE Selective

Normally Offered:

Each Spring

Campus/Online:

On-campus only

Requisites:

ECE 20875, ECE 26400, ECE 30100, ECE 30200, ECE 36800, ECE 36900, MA 26100, MA 26500 or permission from the instructor

Requisites by Topic:

Programming in C and/or Python, probability, data structures, discrete math, multivariate calculus and linear algebra

Catalog Description:

An introduction to modern natural language processing and computational linguistics. This course covers morphological, syntactic, semantic, and pragmatic processing as well as applications such as information extraction, question answering, and machine translation. This course will cover fundamental topics as well as recent advances from the literature.

Required Text(s):

None.

Recommended Text(s):

  1. Foundations of Statistical Natural Language Processing , Chris Manning & Hinrich Schutze , MIT Press , May 1999 , ISBN No. 978-0262133609
  2. Speech and Language Processing , 2nd Edition , Dan Jurafsky and James H. Martin , Prentice Hall , 2008 , ISBN No. 978-0131873216

Learning Outcomes:

A student who successfully fulfills the course requirements will have demonstrated an ability to:
  1. design and implement a natural language parser. [1,2,6]
  2. construct a semantic representation from natural-language input. [1,2,6,7]
  3. train and use a neural network for NLP. [1,6,7]
  4. use natural-language technology to construct and demo a new application. [1,2,3,4,5,6,7]

Lecture Outline:

Lectures Lecture Topics
1-3 Speech Classification and Clustering
4 Kelly-Lochbaum
5-6 Spectograms
7 The EM Algorithm
8 Hidden Markov Models
9 Viterbi Algorithm
10 Baum-Welch Reestimation Procedure
11 HMM Speech Recognition
12 Syntax
13 Parsing I
14 CKY
15 Top Down
16 Parsing II
17 Partial Evaluation
18-21 Montague Grammar
22-24 PCFGs
25-27 Automatic Differentiation
28 Backpropagation
29 LSTMs
30 Transformers

Engineering Design Content:

  • Establishment of Objectives and Criteria
  • Synthesis
  • Analysis
  • Construction
  • Testing
  • Evaluation

Engineering Design Consideration(s):

  • Economic
  • Environmental
  • Health/Safety
  • Social
  • Global
  • Cultural

Assessment Method:

Projects and Homework