Learing Outcomes
- Learn the foundational methods used in NLP from first principles in statistics, algorithms, and lingusitics.
- Understand key facts about human language that motivate NLP methods, and critically disern what problems are possible to solve.
- Implement, experiment with, evaluate, and improve NLP models, gaining practical skills for building natural language systems.
- Learn about and navigate the process of an open-ended NLP research project.
- Reason about the ethical and social implications that arise from NLP systems.
Expectations & Class Norms
You can expect me (the instructor) to:
- Contribute to and support a respectful and welcoming environment.
- Start and end class on time.
- Craft lectures and assignments designed to help you learn the material.
- Release assignments and provide feedback in a timely matter.
- Reply to emails and Piazza posts within 24 hours on weekdays and 48 hours on weekends.
We can expect you (the students) to:
- Contribute to and support a respectful and welcoming environment.
- Attend all lectures in person except for health emergencies or extenuating circumstances.
- Arrive to class and lab on time, and plan to stay until the end.
- Take responsibility for your own learning and stay engaged with the class and material.
- Reach out for help from the TAs or instructors.
- Adhere to the Honor Code.
Class Norms:
- If you become sick with COVID or another illness please stay home and let us know via email.
- If you must miss class for other reasons please give us as much advance notice as possible.
- The Computer Science department strives to be a friendly and welcoming community. You may find it slightly less formal (but no less respectful) than what you encountered in previous academic settings. For example, most students and faculty address other faculty by their first names. You are welcome to call me "Katie" as well.
- You are also welcome to address me informally in email (i.e. starting an email with “Hi Katie.”) Here are a few other tips for emailing professors if that is something new to you or out of your comfort zone.
- Katie has set student help hours (office hours). Feel free to use these times to discuss questions adjacent to the course.
- Katie uses she/her pronouns. We will try to use your preferred pronouns, as indicated in PeopleSoft. Please don’t hesitate to correct us.
- We will use Piazza to answer questions about homeworks and logistics. You can post annonymously on Piazza and your questions can help other students as well. Homework questions sent over email will be kindly redirected to Piazza.
Assessments
CS 375 will have several forms of assessments.
- Homeworks are a mix of (a) analytical problems about mathematical/statistical/linguistic foundations of NLP, (b) programming assignments, and (c) conceptual questions.
- The Midterm Project will be in groups, and will be a longer and more collaborative programming assignement.
- The final project will be in groups. More details will be announced later in the semester. You are encouraged to start browsing other NLP topics early on in the course.
Grade breakdown
The breakdown of grades is as follows:
Homeworks |
50% |
Paper responses |
10% |
Paper presentation |
10% |
Midterm Project |
10% |
Final Project |
20% |
Late days on homeworks
- You (the student) have 3 late days which you can allocate to homework assignments throughout the semester. Note, this only applies to homework assignments (not paper responses/presentations or projects).
- To use a late day, fill out this Google form. This will be checked after every homework deadline so there is no need to email the instructor.
- If you have used all three late days and require a special exception extension, we require a note from your class Dean.
- If a special exception extension is not granted and all late days are used, the total number of homework points possible will be reduced 20% for each day late. If the work is more than 5 days late, the work will not be accepted.
Extra Credit
- Extra credit will be offered on some (but not necessarily all) of the assignments.
- Extra credit can only help you, not hurt you. At the end of the semester, if you have a borderline grade, extra credit will be considered to move up your grade.
- Example: At the end of the semester, a student is on the border between a B+ and A-. The student has done all the extra credit so the instructor awards them an A-.
- Rationale: We want you to be invested in the learning process and remain curious about NLP. Extra credit can possibly help this as well as mitigate concerns over small point losses.
Honor Code
Computer Science Honor Code
For computer assignments in computer science courses, the honor code is interpreted in very specific ways. Homework assignments are expected to be the work of the individual student unless otherwise designated, designed and coded by them alone. Help locating errors and interpreting error messages is allowed, but a student may only receive help in correcting errors of syntax; help in correcting errors of logic is strictly forbidden. In general, if you are taking photos of someone else’s screen, looking at someone else’s screen, or telling someone else what to type, it is likely the work is no longer the work of an individual student.
The College and Department also have computer usage policies that apply to courses that make use of computers. Read more about these policies here.
50-Foot Rule
To make this policy a little more concrete, we will be following the 50-foot rule.
Most proficient programmers will make use of tools on the internet, however, the 50-foot rule applies to Google, Stack Overflow, large language models (such as ChatGPT), and any other online sources as well. Directly copy-pasting from any of these sources is considered a violation of the honor code.
If in doubt as to what is appropriate, do not hesitate to ask Katie. I'm happy to discuss this anytime.
Sharing Solutions.
Please do not post your solutions to our assignments in any public forum, including public GitHub repositories. Students taking the course should not be looking for solutions, but tempting them by making solutions available is inappropriate. This applies not just to the semester you are taking the course, but to the future as well.
Accommodations
Students with disabilities or disabling conditions who experience barriers in this course are encouraged to contact me to discuss options for access and full course participation. The Office of Accessible Education is also available to facilitate the removal of barriers and to ensure access and reasonable accommodations. Students with documented disabilities or disabling conditions of any kind who may need accommodations for this course or who have questions about appropriate resources are encouraged to contact the Office of Accessible Education at oaestaff@williams.edu.
Mental Health
If you are experiencing mental or physical health challenges that are significantly affecting your academic work, you are encouraged to contact your instructor and/or speak with Dean’s Office staff (x4171).
Public Health
If you feel ill, please do not come to class or lab and let us know if you are unable to attend class due to COVID restrictions. We will work with you to make sure you can make up any missed work, and to develop a plan that allows you to continue making progress in the course during your time in isolation/quarantine.
Inclusion and Classroom Culture
The Williams community embraces diversity of age, background, beliefs, ethnicity, gender, gender identity, gender expression, national origin, religious affiliation, sexual orientation, and other visible and non visible categories. I welcome all students in this course and expect that all students contribute to a respectful, welcoming and inclusive environment. If you have any concerns about classroom climate, please come to me to share your concern.
Acknowledgement
Parts of this course are adapated from Dan Jurafsky's CS 124 at Stanford and Brendan O'Connor's CS490A at UMass Amherst.