CompLing
Computational Linguistics course
Install / Use
/learn @bxjthu/CompLingREADME
Autumn 2018
Course number: 40641533
Instructor: Xiaojing Bai
Teaching Assistants: Qing Lyu, Yibin Shu
Overview
This course provides an introduction to computational linguistics, covering the fundamental models of linguistic phenomena at the levels of morphology, syntax, semantics and pragmatics. Students will learn how these models are implemented, evaluated, and applied to real-world natural language processing (NLP) tasks, together with some entry-level but practical skills in NLP with Python.
Aims
- To introduce the fundamental language models, their strengths and weaknesses.
- To introduce some current and potential NLP applications.
- To develop an understanding of how linguistics can support research in NLP.
- To develop an understanding of how computational perspectives and tools can support research in both theoretical and applied linguistics.
Prerequisite
This is an entry-level course accessible to undergraduate students in linguistics. No background in computational linguistics or computer science is required; mathematical essentials are expected; and a burning interest in linguistics and programming are highly appreciated.
Teaching
There will be 14 lectures in total, each followed by a practical session during which students can have a go with some language tools on their own computers.
Grading
- Participation (5%): showing up for class, demonstrating preparedness, contributing to class discussions
- Quizzes (20%): in-class quizzes about the required readings
- Homework (20%): post-class tasks concerning the lectures, practicals, and readings
- Final exam (20%): close-book exam covering the topics of the course
- Term project (35%): a research proposal (e.g. a theoretical or applied study of language from a computational perspective and supported by CL tools or resources, an improvement of a CL algorithm or an NLP application, etc.) and the preliminary implementation of the proposal
Readings
-
Speech and Language Processing - An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition by Daniel Jurafsky and James. H. Martin
-
Natural Language Processing with Python by Steven Bird, Ewan Klein, and Edward Loper
-
How to Think Like a Computer Scientist by the Runestone Interactive Project
Homework 0
Try Homework 0 to see whether this course is your cup of tea, in the sense of what you are supposed to do and what you may learn.
Quizzes
Click here to see the schedule for in-class quizzes and the readings to be covered respectively.
Schedule
Session | Slides | Required Readings | Extras ------- | ------ | -------- | ----- 1 | Introduction [pdf]<br> Practical 1 <br> Homework | J+M_1|Kenneth Church: A Pendulum Swung Too Far<br>Shuly Wintner: What Science Underlies Natural Language Engineering<br>冯志伟:《统计自然语言处理》序言<br>宗成庆:自然语言处理的基本方法<br>IBM Watson 2 | Text Normalization, Finite State Transducers, and Morphological Parsing [pdf]<br> Practical 2 <br> Homework | J+M_2 (2.2, 2.3, 2.4)<br> J+M_second_edition_2 (2.2) <br> J+M_second_edition_3 (3.1)|J+M_second_edition_3.2-3.7<br>Julia Hirschberg and Christopher D. Manning: Advances in Natural Language Processing<br> Saying maths 3 | Regular Expressions and Edit Distance [pdf] <br> Practical 3 <br> Homework| J+M_2 (2.1, 2.5) |regex 101 4 | N-gram Language Models [pdf] <br> Practical 4 <br> Homework | J+M_3(3.1-3.3)|Smoothing: J+M_3.4-3.5<br>Mathematical foundations 5 | Hidden Markov Models and Part-Of-Speech Tagging [pdf]<br> Practical 5[data download][example solutions]<br>Homework|J+M_8 (8.1-8.4; 8.7) |现代汉语<br>The Penn - CU Chinese Treebank Project 6 | Formal Grammars and Syntactic Parsing[pdf]<br>Practical 6<br>Homework| J+M_10<br>J+M_11 |CYK algorithm 7 | Statistical Parsing and Dependency Parsing[pdf]<br>Practical 7<br>Homework | J+M_12 (excluding 12.7) <br>J+M_13 (13.1)|詹卫东:从计算机处理的角度看短语结构歧义 8 | Features and Unification, Language and Complexity[pdf] <br>Practical 8<br>Homework | J+M_second_edition_15 (Optional) <br> J+M_second_edition_16 | 9 | Meaning Representation and Vector Semantics[pdf]<br>Practical 9<br>Homework | J+M_14 (14.1-14.4)<br> J+M_6 (6.1-6.3) | 10 | Semantic Similarity and Word Sense Disambiguation [pdf] <br>Teamwork submission guideline<br>Homework | J+M_6 (6.1-6.7)<br>J+M_C |Distributed word representations: vector comparison 11 | Teamwork presentation <br> More on WordNet [pdf] |J+M_C(C.1-C.4)|WordNet 12 | Practical 12<br>Homework<br>Term Project - Milestone 1 | |Topics from term projects 2017<br>Qing Lyu: Google Ngram 13 | Semantic Role Labeling and Computational Discourse <br> Term Project - Milestone 2| J+M_18<br>J+M_second_edition_21 | 14 | AliMe Bot: Knowledge-Based Question Answering, and NLP in Real-world Applications | | 15 | Online Language Resources: Advances, Applications, and Challenges | | 16 | Machine Translation | |
WE
Autumn 2017 <br> Teaching Assistant: Yuxiao Ye
{:height="244" width="326"}
