WS 2020/21

Computational Linguistics


Computational Linguistics

Winter Semester 2020/21
Prof. Dr. Alexander Koller
Tutors: Noon Pokaratsiri Goldstein; Pia Weißenhorn
Tue, Fri 10-12; mostly online

Core Course, Area CL
Required course for MSc with specializations CL and LT

First class: Friday, November 6

Information on COVID-19: Due to the ongoing COVID-19 pandemic, this lecture will be primarily taught online. Please let me know by October 25 (or earlier) that you would like to take this class by filling out this Google form. I will then be in touch before classes start with more details.

The course “Computational Linguistics” is the introductory course to computational linguistics for MSc students. It covers a wide range of techniques for natural language processing. The focus will be on structured statistical models; we will only touch upon neural methods occasionally.

Online learning platform. We will make heavy use of the online learning platform Moodle for all course activities. I will upload the slides, assignments, and additional materials there, and will link to video recordings of the classes and to reading materials. You will also upload your solutions to the assignments on Moodle, and I urge you to use the discussion forum. Long story short, please join the Moodle page for this course as soon as you can. (Note that this is the university’s Moodle server, and you need a university account to log in.)

Structure of the course. We will meet twice a week for lectures and to discuss the assignments. I will assign some reading material for each lecture, and will assume that you have read this material before the lecture. This will allow us to cover more ground in the lectures, and allow you to identify questions that you’d like to ask.

Furthermore, I will hand out six assignments over the course of the semester. Assignments will mostly be programming projects that are designed to give you a deeper understanding of the course material. I will prepare the assignments under the assumption that you will use Python and NLTK to solve them.

After you turn in each assignment, the tutors will score it, and we will then discuss your solutions in class. You should be prepared to explain your own solution to the other students. In addition, the tutors will offer regular tutorial sessions, in which you can ask us questions about the current assignment or anything else pertaining to the course. Attending the tutorials is voluntary, but strongly recommended.

Prerequisites. As an introductory class, this course does not assume any prior knowledge in computational linguistics. However, the programming assignments will start the first week of the course, and you will need to either have or develop solid programming skills to pass the course (roughly at the level of the Coursera course “Principles of Computing, Part 2”). We will give you a one-lecture crash course in Python as part of this course, and you can attend the Python I course in parallel. However, if you have never programmed before, Computational Linguistics may not be an ideal course for you; consider taking only the Python course in your first semester, and then taking Computational Linguistics in your third semester.

Grading. This class is worth 6 credit points, which translates into 180 hours of work. Please schedule your semester accordingly.

The grade for the course is determined based on 50% grade for the assignments and 50% grade for your final project. Towards the end of the semester, you will propose a topic for a small final project that applies or extends the techniques from the course. Generally speaking, the workload for a final project should be similar to that of an assignment. You will then work on your project in the term break, and submit a working system together with a short paper that explains what problem your system solves and how it does this. We will grade the project on the difficulty of the task, the quality of your solution, and the clarity of the presentation.

In addition, you must successfully complete the assignments for the course. You must submit solutions to at least four of the five assignments. We will then add up your four best scores. To pass the course, you must obtain at least 250 points (out of 400).