Natural Language Processing I

CSCI 657/490-B8

Spring 2025


Last updated Sun. 3/9/2025

Back to Reva Freedman's home page

Course Information



Outline of Blackboard files

Future material is provided for your convenience. Details may change until the week we get to each section.

Chapter 01: Introduction
Section Topic                                                                            
1a
1b
1c
1d


Chapter 05: Text preprocessing
Section Topic                                                                            
5a
5b
5c
  HW1 due , 11:59 PM


Chapter 15: Spelling
Section Topic                                                                            
15a Spelling: background
15b Bayes' Law
15c Edit distance
15d Spelling: implementation
15e Spelling: advances
15f Bioinformatics (optional)
  HW2 due


Chapter 17: Language Models
Section Topic                                                                            
17a N-gram models (Markov models)
17b Testing language models
17c Perplexity
17d Smoothing
 
17e
  HW3 due
  Exam 1


2A2A
Chapter 20: Zipf's Law
Section Topic                                                                            
20a
20b
  HW5 due


Chapter 25: Parts of speech (POS)
Section Topic                                                                            
25a
25b
25c
25d
  HW due


Chapter 30: Machine Learning
Section Topic                                                                            
30a
30b
30c


Chapter 31: Naive Bayes ML algorithm (NB)
Section Topic                                                                            
31a
31b
31c


Chapter 50: Bag-of-words
Section Topic                                                                            
50a
50b
  HW9 due


Chapter 35: Neural networks
Section Topic                                                                            
35a
35b
35c
  Final exam, Tue. May 6, 2-3:50 PM



Python Resources

Python style guides

Python reference

Introductory Python

NLP Resources

Textbooks

Papers

Statistics

NLP Software

NLTK

Java software

Linguistics

Artificial Intelligence

Programming Resources

Unicode

Unix information




Old notes

What makes NLP hard

Morphology

Spelling correction

Discourse

Preliminary form