Algorithms for NLP

Fall 2019

T/Th 10-11:30 pm, Wean Hall 2302

Yulia Tsvetkov (office hours: TBD, GHC 6405),
David Mortensen (office hours: TBD, GHC 5407),

Teaching Assistants:
Chan Young Park (office hours: Wed 3-4pm, GHC 5417),
Jong Hyuk Park (office hours: Thu 9-10am, GHC 5417),

Forum: Piazza


This course will explore current statistical techniques for the automatic analysis of natural (human) language data. The dominant modeling paradigm is corpus-driven statistical learning, with a split focus between supervised and unsupervised methods. This term we are making Algorithms for NLP a lab-based course. Instead of homeworks and exams, you will complete four hands-on coding projects. This course assumes a good background in basic probability and Python programming. Prior experience with linguistics or natural languages is helpful, but not required. There will be a lot of statistics, algorithms, and coding in this class.

Slides, materials, and projects for this iteration of Algorithms for NLP are borrowed from Dan Jurafsky at Stanford, Dan Klein and David Bamman at UC Berkeley and Nathan Schneider at Georgetown University



The lecture plan is subject to change.

Week Date Topics Readings HWs/Quizs
1 Aug 27 Course Introduction [slides]    
  Aug 29 Word [slides] J+M II 3.1-3.9  
2 Sep 3 Language Modeling I [slides] J+M II 4, M+S 6, Chen & Goodman, Interpreting KN  
  Sep 5 Language Modeling II [slides] Massive Data, Bloom, Perfect, Efficient LMs Quiz 1
3 Sep 10 Word Embeddings I [slides] J+M III 6, Turney and Pantel'10, Brown Quiz 2
  Sep 12 Word Embeddings II [slides] FastText, ELMo  
4 Sep 17 Lexical Semantics [slides] J+M II 17.0-2, 19.0-3 Quiz 3
  Sep 19 Parts of Speech [slides] J+M II 5.0-3  
5 Sep 24 POS Tagging [slides] J+M II 6.0-4 Quiz 4
  Sep 26 POS, NER, CRFs [slides] J+M 5, J+M III Appendix A, Collins notes, Brants, Toutanova & Manning HW1 release
6 Oct 1 Formal Grammars [slides] J+M 12.0–3 Quiz 5
  Oct 3 Parsing 1 [slides]    
7 Oct 8 Parsing 2 [slides] J+M III Ch 14, Chen & Manning 2014, Dyer et al 2015 Quiz 6
  Oct 10 Parsing 3 [slides] Split, Lexicalized, K-Best A*  
8 Oct 15 Semantics and Discourse [slides] J+M II 17.2-4, 19.4-6 Quiz 7
  Oct 17 Semantics and Discourse [slides] J+M II 20 HW1 deadline
9 Oct 22 Semantics and Discourse [slides] J+M II 18.1-3 Quiz 8
  Oct 24 Semantics and Discourse [slides]    
10 Oct 29 Pragmatics [slides]   Quiz 9
  Oct 31 Sentiment Analysis [slides] J+M II 4, 21 HW2 release
11 Nov 5 Intro to Neural Networks [slides]    
  Nov 7 No Class    
12 Nov 12 Machine Translation [slides]   Quiz 10
  Nov 14 Machine Translation    
13 Nov 19 Text Summarization [slides]    
  Nov 21 Machine Translation [slides]    
14 Nov 26 Low-resource NLP   HW2 deadline(moved to Nov 29)
  Nov 28 No class    
15 Dec 3 Multilingual NLP    
  Dec 5 Ethics [slides]  


The primary recommended texts for this course are:

Make sure you get the purple 2nd edition of J+M, not the white 1st edition.


Quiz. (50%; 5% each) We’ll have a in-class quiz per week, covering the material from the previous week. There will be 10 quizs in total, and each quiz will take up 5% of the overall grade.

Project. (50%; 25% each) There will be two Python programming projects; one for POS tagging and one for sentiment analysis. The detailed description on how to submit projects will be given when they are released.


Late policy. Each student will be granted 5 late days to use over the duration of the semester. There are no restrictions on how the late days can be used (e.g. all 5 could be used on one project.) Using late days will not affect your grade. However, projects submitted late after all late days have been used will receive no credit. Be careful!

Academic honesty. Homework assignments are to be completed individually. Verbal collaboration on homework assignments is acceptable, as well as re-implementation of relevant algorithms from research papers, but everything you turn in must be your own work, and you must note the names of anyone you collaborated with on each problem and cite resources that you used to learn about the problem. Suspected violations of academic integrity rules will be handled in accordance with the CMU guidelines on collaboration and cheating.

Note to Students

Take care of yourself! As a student, you may experience a range of challenges that can interfere with learning, such as strained relationships, increased anxiety, substance use, feeling down, difficulty concentrating and/or lack of motivation. All of us benefit from support during times of struggle. There are many helpful resources available on campus and an important part of having a healthy life is learning how to ask for help. Asking for support sooner rather than later is almost always helpful. CMU services are available, and treatment does work. You can learn more about confidential mental health services available on campus at: Support is always available (24/7) from Counseling and Psychological Services: 412-268-2922.

Accommodations for Students with Disabilities:

If you have a disability and have an accommodations letter from the Disability Resources office, I encourage you to discuss your accommodations and needs with me as early in the semester as possible. I will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, I encourage you to contact them at