Course: LIN386M  Introduction to Computational Linguistics
Semester: Fall 2011

Instructor Contact Information

Jason Baldridge
office hours:  Mon 10-noon, Fri 9:30-10:30
office: Calhoun 510
phone: 232-7682


Graduate standing.

Syllabus and Text

 This page serves as the syllabus for this course.

Additional required readings will be made available for download from the schedule page of the course website.

For learning Scala, there is no official course book. I will be creating many tutorials and providing explicit instruction. In addition, here are some resources:

Exams and Assignments

There will be no midterm or final exam. Instead, this course has a course project.

There will be five homework assignments. Assignments will be updated on the assignments page. A tentative schedule for the entire semester is posted on the schedule page. Readings and exercises may change up one week in advance of their due dates.  

Philosophy and Goal

The foremost goal of this course is to expose the student to the core techniques and applications of computational linguistics, with a primary focus on symbolic approaches. Students will gain an appreciation for the difficulties inherent in NLP and and understanding of strategies for tackling them. The course will address both theoretical and applied topics.

Some specific goals of the course are to enable students to:

  • understand core algorithms and data structures used in NLP
  • write non-trivial programs for NLP (using the Scala programming language)
  • build and use finite state transducers with XFST
  • appreciate the relationship between linguistic theory and computational applications, especially with respect to morphology, syntax and semantics
  • write computational grammars
  • complete a non-trivial NLP project and write a report in the format of submissions to computational linguistics conferences

This course presents an opportunity for students to gain experience with models and algorithms used in computational linguistics that underly practical applications while gaining an appreciation for the theoretical questions which they raise and which they can help us tackle. It will thus help prepare the student both for jobs in the industry and for doing original research in computational linguistics.

The course is designed to include key activities engaged in by computational linguistics researchers, including generation of ideas and programs, critical oral discussion of ideas, and written evaluation and presentation of ideas. This will help students make the transition to doing real research in the field. For those students with interest, it could possibly lead to subsequent research opportunities.  

Content Overview

This course will focus on many of the core technologies and techniques used in computational linguistics, such as finite-state methods, categorial grammars and parsing. It will also serve as an introduction to Scala programming and programming for NLP.

This course provides a broad introduction to computational linguistics with a particular emphasis on core algorithms and data structures. Topics include:

  • finite-state automata and transducers
  • computational morphology
  • n-gram language models
  • part-of-speech tagging
  • categorial grammars and parsing
  • feature structures and unification
  • computational semantics

The field of computational linguistics has experienced significant growth in the last two decades. Some of the most important factors behind this include the use of statistical techniques, the availability of large (sometimes annotated) corpora (including the web itself), and the availability of relatively cheap and powerful computers. Together, these factors have played a major part in making computational linguistics very relevant in applied settings. We will show, on a few chosen topics, how statistical natural language processing builds on and uses the fundamental data structures and algorithms presented in this course. In particular, we will discuss:

  • Probabilistic language models
  • Hidden Markov Models for part-of-speech tagging
  • Probabilistic parsing
See the course schedule for details.

Course Requirements

Course project (50%)

Course Project (50%)
  • Project Ideas (1%, 1 page).
  • Proposal (4%, 3 pages).
  • Progress Report (10%, 6 pages).
  • Final Report (25%, 8 pages).
  • Final Presentation (10%).

Assignments (50%): There will be five assignments, each worth 10% each of the total course grade. Assignments will be graded on a five-point scale, described below.

  1. no credit (e.g., you failed to turn in the assignment).
  2. serious deficiencies (i.e., you missed significant portions of the assignment or a significant number of the answers were incorrect.
  3. adequate completion (i.e., most of the answers were correct, but there were some missing or incorrect answers).
  4. satisfactory completion (i.e., everything or nearly everything was correct).
  5. extraordinary mastery (i.e., you went above and beyond what was necessary).

Overall course grades. The grading scale is different from the usual one used in the USA.

80+ A
77-80 A-
74-77 B+
70-74 B
67-70 B-
64-67 C+
60-64 C
57-60 C-
54-57 D+
50-54 D
47-50 D-
0-47 F

This scale is inspired by typical British grading scale. It allows us to give you a better sense of where you can improve, taking off points, but still giving an A for quality work. Also, if you get 90+, it means you did an amazingly good job, above and beyond expectations.

Attendance is not required, and it is not used as part of determining the grade.

Extension Policy

Homework must be turned in on the due date in order to receive credit. Late homework will be accepted only under exceptional circumstances (e.g., medical or family emergency) and at the discretion of the instructor (e.g. exceptional denotes a rare event).  This policy allowing for exceptional circumstances is not a right, but a privilege and courtesy to be used when needed and not abused. Should you encounter such circumstances, simply email assignment to instructor and note "late submission due to exceptional circumstances". You do not need to provide any further justification or personally revealing information regarding the details. 

Academic Honor Code

You are encouraged to discuss assignments with classmates, but all written submission must reflect your own, original work. If in doubt, ask the instructor. Acts like plagiarism represent a serious violation of UT's Honor Code and standards of conduct:

Students who violate University rules on academic dishonesty are subject to severe disciplinary penalties, such as automatically failing the course and potentially being dismissed from the University. Don't risk it. Honor code violations ultimately harm yourself as well as other students, and the integrity of the University, policies on academic honesty will be strictly enforced.

For further information please visit the Student Judicial Services Web site:

Notice about students with disabilities

The University of Texas at Austin provides appropriate accommodations for qualified students with disabilities. To determine if you qualify, please contact the Dean of Students at 512-471-6529 or UT Services for Students with Disabilities. If they certify your needs, we will work with you to make appropriate arrangements.

UT SSD Website:

Notice about missed work due to religious holy days

A student who misses an examination, work assignment, or other project due to the observance of a religious holy day will be given an opportunity to complete the work missed within a reasonable time after the absence, provided that he or she has properly notified the instructor. It is the policy of the University of Texas at Austin that the student must notify the instructor at least fourteen days prior to the classes scheduled on dates he or she will be absent to observe a religious holy day. For religious holy days that fall within the first two weeks of the semester, the notice should be given on the first day of the semester. The student will not be penalized for these excused absences, but the instructor may appropriately respond if the student fails to complete satisfactorily the missed assignment or examination within a reasonable time after the excused absence.