LCD151: Methods in Computational Linguistics I

Table of contents

  1. Course and Instructor Information
  2. Course Materials
  3. Weekly Schedule (subject to change)
  4. Assessment
  5. Course Policies
  6. Academic Integrity

Course and Instructor Information

Item Information
Instructor Han Li
Email hli6@qc.cuny.edu ; han.li07@login.cuny.edu
Meeting Days T/TH 1:40-2:55
Location Queens Hall 340
Office Hours T/Th 12:30-1:30 Room QH 325

I am also available outside regular office hours via Zoom on M/W/F. Please feel free to reach out if you have some burning questions! 👉 Book a Zoom Meeting

The best way to reach me is to catch me after class. I am happy to stay and answer any questions you may have.


Course Description

Students will learn foundational skills for working with natural language data and for processing text. These include basic Linux commands, an introduction to (Python) programming, with a focus on writing programs and applications related to text and language processing. Basic data structures and algorithms necessary for working with textual data: loops, recursion, hash tables. At the end of the semester, students will gradually build practical skills that prepare them for later courses in NLP, machine learning, and computational linguistics.

This course does not have any prerequisites or prior programming experience.

Students are expected to have regular access to a computer for completing programming assignments and participating in course activities. If you do not have a personal computer, you are encouraged to use the Queens College Laptop Loan Program.

Please let me know ASAP if a computer may be a barrier to your participation in the course.


Learning Objectives

By the end of the course, students will be able to:

  • Understand Python basics.
  • Use lists, tuples, dictionaries, sets, and strings.
  • Navigate Linux using the command line.
  • Write simple programs to perform basic operations with text files
  • Process structured linguistic data.
  • Write functions and modular programs.
  • Apply regular expressions to text processing.
  • Use introductory NLP libraries including NLTK.

Course Materials

Readings

The following resources are highly recommended for this course and grasp beyond:

Additional Resources

The following resources are recommended for additional practice and reference:


Weekly Schedule (subject to change)

Each week follows a consistent structure:

  • Tuesday (Lecture): introduce new concepts through lectures, demonstrations, and short hands-on exercises.
  • Thursday (Lab): You will work on a small programming project that applies the material covered during the lecture. At the end of the week, you will submit your completed project as your assignment.

Note: This schedule is subject to change. Any changes will be announced in class and posted on Brightspace.

My materials draw on resources developed by Jiwon Yun and Jordan Kodner at Stony Brook University, Kyle Gorman and Spencer Kaplan at CUNY Graduate Center. I am deeply grateful to them for sharing their work.

Week Tuesday Thursday
1 (09/01, 09/03) Course Introduction & Python Setup Environment Setup & First Python Program
2 (09/08, 09/10) Literals, Variables & Expressions Lab 1: print() and input()
3 (09/15, 09/17) Strings & Indexing Lab 2: Clean transcription
4 (09/22, 09/24) Lists and Sets Lab 3 Phonotactics: Polish vs Mandarin
5 (09/29, 10/01) Control flow for loop Lab 4 Phonological processes modeling
6 (10/06, 10/08) Conditional if Lab 5: File Processing
7 (10/13, 10/15) ☕️ No Class (Monday Schedule) 📝 Midterm Exam
8 (10/20, 10/22) Invited Guest Lecture (TBD) Lab 6: Git & GitHub
9 (10/27, 10/29) Dictionaries Lab 7: Zipf’s law
10 (11/03, 11/05) Functions Lab 8: Building a Corpus Analysis Toolkit
11 (11/10, 11/12) NLTK1: Accessing Corpora Lab 9: Text Analysis and Comparsion
12 (11/17, 11/19) NLTK2: Regular Expressions Lab 10: Regex & Text Processing
13 (11/24, 11/26) NLTK3: Tagging ☕️ No Class – Thanksgiving
14 (12/01, 12/03) Invited Guest Lecture (TBD) Lab 11: TBD
15 (12/08, 12/10) NLTK & Final Project Workshop Course Review & Final Project Q&A

Please let me know in advance if you will need to miss class due to a religious observance.

Assessment

The instructor reserves the right to modify assessment dates if necessary.

Grade Components

Component Weight
Programming Labs (lowest lab dropped) 40%
Midterm 20%
Participation & Quizzes 15%
Final Project 25%

Grading Scale

Grade Range Grade Range Grade Range Grade Range
A+ 97–100 B+ 87–89 C+ 77–79 D+ 67–69
A 93–96 B 83–86 C 73–76 D 60–66
A- 90–92 B− 80–82 C− 70–72 F 0–59

Course Policies

Participation

Active participation in lectures, labs, discussions, and programming activities is expected. There are no extra-credit assignments unless announced by the instructor.

Attendance

Students are responsible for obtaining notes, assignments, and announcements from any missed class. Absence does not excuse missed work or deadlines.

Late Assignments

Assignments submitted late will incur a 20% penalty for each 24-hour period. Assignments submitted more than five days after the original due date will not be accepted.

Midterm

The midterm will be an in-person, paper-and-pen exam. There are no make-up exams except in cases of documented emergencies or prior approval.

Regrade Requests

Regrade requests must be submitted within one week after graded work is returned.

Academic Integrity

Students are expected to follow the Queens College Academic Integrity Policy. Academic dishonesty—including plagiarism, unauthorized collaboration, cheating, or submitting work that is not your own—may result in a grade of 0, failure of the course, and/or disciplinary action by the College.


This site uses Just the Docs, a documentation theme for Jekyll.