Johns Hopkins Computer Science Home
Johns Hopkins University The Whiting School of Engineering

Natural Language Processing
Prof. Jason Eisner
Course # 601.465/665 — Fall 2020

parse trees


Course Information

[Office hours for the TAs/CAs will be posted here.]


As the syllabus says: This year we'll often "flip the classroom," to make the best interactive use of our precious synchronous class meeting times. Thus, many of the class meetings will be used for Q&A, discussion, enrichment, and collaborative-problem solving. You'll be expected to watch lecture videos ahead of time, which will be announced on Piazza and posted below.

Warning: The schedule below may change! It should be correct up to the present, but for future dates, it shows last year's timetable and materials (adjusted to this year's dates). Watch Piazza for important updates such as new lecture videos, homeworks, and due date. Links to future lecture slides and homeworks currently point to last year's versions.

What's Important? What's Hard? What's Easy? [1 week]

Mon 8/31: Wed 9/2: Fri 9/4:

Language Models [1+ week]

Mon 9/7 (Labor Day: no class)
Wed 9/9, Fri 9/13: Mon 9/14, Wed 9/16:

Grammars and Parsers [3 weeks]

Fri 9/18, Mon 9/21: Wed 9/23, Fri 9/25: Mon 9/28, Wed 9/30: Fri 10/2: Mon 10/5: Wed 10/7:

Representing Meaning [1 week]

Fri 10/9, Mon 10/12, Wed 10/14:

Unsupervised Learning [2 weeks]

Fri 10/16, Mon 10/19: Wed 10/21: Fri 10/23 (fall break day) Mon 10/26, Wed 10/28:

Algebraic Methods [2+ weeks]

Fri 10/30, Mon 11/2, Wed 11/4, Fri 11/6:
  • HW5 due on 11/4
    Mon 11/9: Wed 11/11: Fri 11/13: Mon 11/16:

    Tying it All Together [1- weeks]

    Wed 11/18, Fri 11/20:

    Applications [2 weeks]

    Mon 11/23 (Thanksgiving break), Wed 11/25 (Thanksgiving break), Fri 11/27 (Thanksgiving break)
    Mon 11/30, Wed 12/2, Fri 12/4: Mon 12/7: Wed 12/9: Wed 12/16:

    Old Materials

    Lectures from past years, some still useful:
  • Optimal paths in graphs: A Dyna perspective
  • Tree-adjoining grammars (by Darcey Riley)
  • Grouping words: Semantic clustering
  • Splitting words: Word sense disambiguation and the Yarowsky algorithm
  • Words vs. terms in IR: Collocation discovery and Latent Semantic Indexing
  • Text categorization
  • Knowledge extraction and dialogue systems
  • Machine translation:
  • Applied NLP tasks: Old homework: