CS 6501 Natural Language Processing (Spring 2024)
Logistics
- Instructor: Yu Meng (yumeng5[at]virginia[dot]edu)
- Teaching Assistants: Afsara Benazir (hys4qm[at]virginia[dot]edu) Zhepei Wei (tqf5qb[at]virginia[dot]edu)
- Time: Mondays & Wednesdays 3:30pm - 4:45pm
- Location: Mechanical & Aerospace Engineering Building 339
Course Overview
This advanced graduate-level course offers a comprehensive exploration of cutting-edge developments in the field of natural language processing (NLP). With Large Language Models (LLMs) serving as the foundation for state-of-the-art NLP systems, we will cover various topics aiming at gaining a better understanding of LLMs’ design, capabilities, limitations, and future prospects. Key areas include model architecture and design, training methodologies (e.g., pretraining, instruction tuning, RLHF), emergent capabilities (e.g., in-context learning, reasoning), parametric knowledge with retrieval-augmented generation, efficiency (e.g., parameter-efficient training, sparse methods), language agents, and ethics. This course will be highly research-driven with a substantial focus on presenting and discussing important papers and conducting research projects.
Grading
- Paper Presentation (30%) (Signup Sheet): In each lecture starting from the 3rd lecture, a group of 2 or 3 students will be tasked to present 4 papers selected for the topic they signed up for. The primary objective is to impart knowledge to the rest of the class. The presentation duration is strictly limited to 60 minutes, followed by a 10-minute question-and-answer session with the audience. The presentation will be assessed based on the following criteria (everyone from the same presentation group receives the same score):
- Clarity: Whether the presentation effectively communicates the core concepts and insights contained in the papers.
- Completeness: Whether the presentation adequately covers the essential messages in the 4 assigned papers within the allocated timeframe.
- Teamwork: Whether the presentation is prepared and delivered by all team members.
- Question answering: Whether the presenters effectively answer the questions raised by the audience.
Tips for presentation preparation: It is not necessary to cover every detail of the papers; rather, emphasis should be placed on conveying general ideas and insights: For theoretical papers, you don’t need to go over each proof in detail, but need to explain the major conclusions/insights of the theoretical analysis. For empirical papers, you don’t need to present every piece of experiment results, but need to articulate how the empirical findings support the major claims. A good presentation should highlight
- The major contributions of the paper
- Why these contributions are deemed important (e.g., did they reveal any previously unknown facts or change people’s opinions on a widely acknowledged phenomenon?)
- The most important technical details (e.g., the motivation behind a new training objective/model architecture design and the corresponding implementation)
- The limitations of the work and how they might be addressed in the future
Deadline for slides submission: Send your slides to the instructor and TAs via email at least 48 hours before your presentation (e.g., if presenting on Monday, slides should be submitted by Saturday 3:30 pm). You will receive feedback from the instructor to improve your slides, and if necessary, the instructor may schedule a meeting with your team to go over the slides. Late submissions after the deadline will result in a 50% presentation grade deduction.
- Participation (20%): For each lecture starting from the 3rd lecture, everyone is required to complete the following two mini-assignments (regardless of whether or not you have signed up to present for that lecture):
- Pre-lecture question: Your task is to read the 4 papers to be introduced in the lecture, and submit a question you have when you read them. The question must not be trivial (e.g., “Does the proposed method work?” / “What is the aim of the paper?”). You are also welcome to raise these questions in the 10-minute question-and-answer session during class. The deadline is one day before the lecture (e.g., For Monday lectures, you need to submit the question by Sunday 11:59 pm).
- Post-lecture feedback: After attending the lecture, you are required to provide feedback to the presenters. You should comment on the clarity, completeness, depth, etc. Your feedback doesn’t have to be long, but should be specific and constructive. The deadline is each Friday (both Monday & Wednesday feedback is due Friday 11:59 pm).
- Project (50%): By the end of this course, you are required to complete a research project, present your results, and submit a project report. You are required to work in a team of 2 or 3 (any deviation from this team size requires prior approval from the instructor). There are two acceptable project types:
- A comprehensive survey report: The survey should carefully examine and summarize existing literature on a topic covered in this course, and provide detailed and insightful discussions on the unresolved issues, challenges, and potential future opportunities within the chosen topic.
- A hands-on project: The project is not constrained to the course topics but must be centered around NLP. The project does not have to involve large language models either. For example, you may choose to train or analyze smaller-scale language models for specific tasks. You are eligible to receive extra credits if the final project reaches a publishable state.
The project grading breakdown (50%) is as follows:
Schedule
Useful Materials
- For NLP background: Speech and Language Processing
- For deep learning background: Deep Learning