Large self-supervised (pre-trained) models (such as LLMs) have transformed various data-driven fields, such as natural language processing (NLP). Its objective is to provide a comprehensive overview of the industry standards for training and deploying language models. The course is designed to equip you with a diverse set of skills essential for future success either in academia or industry. PyTorch will be the primary programming language used in the class. The course will include instructor-led lectures, multiple in-class quizzes, and a final project.
Note: The course is different from 601.771 (typically offered in fall semesters) which is focused on advanced topics in recent papers and is geared toward grad students that want to specialize in the latest developments.
Prerequisites:
Suggestive prerequisites: Not a hard prerequisites but it is highly useful to have background in "Natural Language Processing" and "Machine Learning". You may gain such background by taking the following courses: "Machine Learning" (CS 475/675), OR "Machine Learning: Deep Learning" (CS 482/682), OR "Natural Language Processing" (CS 465/665), OR "Machine Translation" (CS 468/668).
Relevant Courses at Hopkins: This course has some overlap with "Natural Language Processing" (EN.601/665), and "Artificial Agents" (EN.601.470/670), though the courses have different focuses.
We don't have any homework assignments that we would grade. You should, however, read and undersand the lectures and the assigned reading ("Additional Reading" column in the schedule below).
The objective of the final project is to make use of what you have learned during this course to solve a hard problem.
The final project milestones include: (1) A project proposal, (2) A project midway report, (3) a final report, (4) a final project poster summarizing the technical aspects of the project. See the course calendar for the due dates.
The current class schedule is below (subject to change):
| Date | Topic | Content | Additional Reading | Events | |
|---|---|---|---|---|---|
| #1 - Tue Sept 1 |
Course introduction:
|
PPTX, PDF | |||
| #2 - Thu Sept 3 |
Language modeling:
|
PPTX, PDF | |||
| #3 - Tue Sept 8 |
Neural Nets:
|
PPTX, PDF | 📝 QUIZ #1 - Topics: everything discussed up to this point. | ||
| #4 - Thu Sept 10 |
Neural Nets:
|
PPTX, PDF | |||
| #5 - Tue Sept 15 |
Neural Nets:
|
PPTX, PDF | |||
| #6 - Thu Sept 17 |
Neural Nets:
|
PPTX, PDF | 📝 QUIZ #2 - Topics: everything discussed up to this point. | ||
| #7 - Tue Sept 22 |
Simple neural language models:
|
PPTX, PDF | |||
| #8 - Thu Sept 24 |
Recurrent Neural LMs:
|
PPTX, PDF | |||
| #9 - Tue Sept 29 | Sampling from LMs | PPTX, PDF | 📝 QUIZ #3 - Topics: everything discussed up to this point. | ||
| #10 - Thu Oct 1 |
Transformer architecture:
|
PPTX, PDF | |||
| #11 - Tue Oct 6 |
Transformer architecture:
|
PPTX, PDF | |||
| #12 - Thu Oct 8 |
Transformer architecture:
|
PPTX, PDF | 📝 QUIZ #4 - Topics: everything discussed up to this point. | ||
| #13 - Tue Oct 13 |
Transformer-based language models:
|
PPTX, PDF | |||
| #14 - Thu Oct 15 |
Transformer-based language models:
|
PPTX, PDF | |||
| #15 - Tue Oct 20 |
Transformer-based language models:
|
PPTX, PDF | 📝 QUIZ #5 - Topics: everything discussed up to this point. | ||
| Thu Oct 22 | No Class - Fall Break | ||||
| #16 - Tue Oct 27 |
Transformer-based language models:
Adapting LMs:
|
PPTX, PDF | |||
| #17 - Thu Oct 29 |
Adapting LMs:
|
PPTX, PDF | |||
| #18 - Tue Nov 3 | tbd | 📝 QUIZ #6 - Topics: everything discussed up to this point. | |||
| #19 - Thu Nov 5 |
Introducing final projects:
|
PPTX, PDF
PPTX, PDF |
|||
| #20 - Tue Nov 10 |
Alignment of LMs:
|
PPTX, PDF | |||
| Apr 4 | Project proposals deadline | ||||
| #21 - Thu Nov 12 |
Alignment of LMs:
|
PPTX, PDF
|
📝 QUIZ #7 - Topics: everything discussed up to this point. | ||
| #22 - Tue Nov 17 |
Alignment of LMs:
Inference-scaling:
|
PPTX, PDF
PPTX, PDF |
|||
| #23 - Thu Nov 19 |
Efficiency considerations:
|
PPTX, PDF | |||
| Tue Nov 24 | No Class - Fall Recess | ||||
| Thu Nov 26 | No Class - Fall Recess / University Holiday | ||||
| #24 - Tue Dec 1 |
Efficiency considerations:
|
PPTX, PDF | 📝 QUIZ #8 - Topics: everything discussed up to this point. | ||
| #25 - Thu Dec 3 |
Efficiency considerations:
|
PPTX, PDF | |||
| #26 - Tue Dec 8 | tbd | ||||
| #27 - Thu Dec 10 | Final quiz | 📝 QUIZ #9 - Final quiz — last day of class. | |||
| TBD | Final project reports | ||||
| Thu May 8 | Final project poster session (Time: 2pm-5pm) | ||||
Here are several resources available for free:
Besides these resources, we will try our best to satisfy individual needs through discussion.
The strength of the university depends on academic and personal integrity. In this course, you must be honest and truthful, abiding by the Computer Science Academic Integrity Policy:
Cheating is wrong. Cheating hurts our community by undermining academic integrity, creating mistrust, and fostering unfair competition. The university will punish cheaters with failure on an assignment, failure in a course, permanent transcript notation, suspension, and/or expulsion. Offenses may be reported to medical, law or other professional or graduate schools when a cheater applies. Violations can include cheating on exams, plagiarism, reuse of assignments without permission, improper use of the Internet and electronic devices, unauthorized collaboration, alteration of graded assignments, forgery and falsification, lying, facilitating academic dishonesty, and unfair competition. Ignorance of these rules is not an excuse.
Academic honesty is required in all work you submit to be graded. Except where the instructor specifies group work, you must solve all homework and programming assignments without the help of others. For example, you must not look at anyone else’s solutions (including program code) to your homework problems. However, you may discuss assignment specifications (not solutions) with others to be sure you understand what is required by the assignment. If your instructor permits using fragments of source code from outside sources, such as your textbook or on-line resources, you must properly cite the source. Not citing it constitutes plagiarism. Similarly, your group projects must list everyone who participated.
In the above paragraph "outside sources" also include content that was produced by an AI assistant like ChatGPT. This follows either by treating the AI assistant as a person for the purposes of this policy (controversial) or acknowledging that the AI assistant was trained directly on people's original work. Thus, while you are not forbidden from using these tools, you should consider the above policy carefully and quote where appropriate. Assignments that are in large part quoted from an AI assistant are very unlikely to be evaluated positively. In addition, if a student's work is substantially identical to another student's work, that will be grounds for an investigation of plagiarism regardless of whether the prose was produced by an AI assistant.
Falsifying program output or results is prohibited. Your instructor is free to override parts of this policy for particular assignments. To protect yourself: (1) Ask the instructor if you are not sure what is permissible. (2) Seek help from the instructor, TA or CAs, as you are always encouraged to do, rather than from other students. (3) Cite any questionable sources of help you may have received.
Report any violations you witness to the instructor. You can find more information about university misconduct policies on the web for undergraduates and graduates students.
Johns Hopkins University is committed to equal opportunity for its faculty, staff, and students. To that end, the university does not discriminate on the basis of sex, gender, marital status, pregnancy, race, color, ethnicity, national origin, age, disability, religion, sexual orientation, gender identity or expression, veteran status, military status, immigration status or other legally protected characteristic. The University's Discrimination and Harassment Policy and Procedures provides information on how to report or file a complaint of discrimination or harassment based on any of the protected statuses listed in the earlier sentence, and the University’s prompt and equitable response to such complaints.