Natural Language Processing Spring 2023
Imagine a world where you can pick up a phone and talk in English,
while at the other end of the line your words are spoken in
Chinese. Imagine a
computer animated representation of
yourself
speaking fluently what you have written in an email. Imagine a computer writing new poetry and stories from a prompt or generating art
based on descriptions. Imagine
automatically uncovering protein/drug interactions in petabytes
of medical abstracts. Imagine feeding a
computer an ancient script that no living person can read, then
listening as the computer reads aloud in this dead
language.
Imagine a computer that can do better than humans at answering
questions.
Natural Language Processing is the automatic analysis of human
languages such as English, Korean, and thousands of others analyzed
by computer algorithms. Unlike artificially created programming
languages where the structure and meaning of programs is easy to
encode, human languages provide an interesting challenge, both in
terms of its analysis and the learning of language from observations.
Instructor
Teaching Assistants
- Yilong (Jetic) Gu,
jeticg
, Office hour: Tue 3-4pm, TASC 9404.
- Ruiqi Wang,
rwa135
, Office hour: Mon 3-4pm, Zoom.
Asking for help
- Ask for help on Canvas Discussion Forum
- Instructor office hours: Wed 3pm-4pm
- No emails to the TAs and strictly emails about personal matters to the instructor
- Use only SFU email address and use either
cmpt413:
orcmpt713:
as subject prefix
Time and place
Course lectures will be held in person at the Burnaby campus
- Wed 1:00PM - 2:20PM AQ3159
- Thu 1:00PM - 2:20PM AQ3159
- Last day of classes: Apr 11, 2023
Links to course material will be made available on Canvas.
Prerequisites
There are no formal prerequisites for this class. However, you are expected to be familiar with the following:
- Proficiency in Python - Programming assignments will be in python (numpy and pytorch will be used).
- Calculus and Linear Algebra (MATH 151, MATH 232/240) - You will need to be comfortable with taking multivariable derivatives
- Basic Probability and Statistics (STAT 270)
- Basic Machine Learning (CMPT 410/726) is strongly recommended (Note: CMPT 410 was previously offered as CMPT 419 under the title “Machine Learning”)
There will be optional TA led tutorials that will help review these topics.
Textbook
- No required textbook. Online readings provided in Syllabus.
- Many of the readings will be from the following:
Grading
- Submit homework source code and check your grades on Canvas
- Programming setup and diagnostic homework (5%)
- Four homeworks (64% total - 16% each, with 8% for programming and 8% for question answering). Due dates:
- HW1 on Jan 25, 2023
- HW2 on Feb 8, 2023
- HW3 on Feb 22, 2023
- HW4 on Mar 8, 2023
- Final Project (28% total)
- Project Proposal: Due on Mar 2, 2023 (5%)
- Project Milestone: Due on Mar 23, 2023 (5%)
- Project “Poster” Presentation: Video due on Apr 6, 2023 (5%)
- Project Report and Code: Due on Apr 12, 2023 (13%)
- Participation: Helping other students on the discussion board in a positive way (3%)