pure-gazelle-2969
Edited
• 3 Credit Hours
Key adjectives used by students — color intensity reflects sentiment
pure-gazelle-2969
Edited
daring-beaver-9692
Edited
fierce-rabbit-2672
Edited
grand-heron-4440
Edited
bright-fox-6351
Wish I could enroll for only half the semester.
Edited
eager-turtle-8021
Edited
calm-marten-1198
Edited
vibrant-heron-7830
Edited
calm-vulture-0173
An excellent course. Lectures are very informative and well structured and I learned a lot from the projects.
Easily one of the best courses I've taken so far (7 courses in).
Edited
loyal-pulsar-1017
This class is substantially harder than is indicated by omscentral, unless you you ML/AI experience. The professor is great, but they replaced the easy paper midterm into a miserable proctor exam this semester to try to combat AI usage. I took the course to have a nice summer break between spring and fall where I am taking 2 classes each semester, and I don't feel like it was a break.
Edited
Lectures: Lectures from Prof Riedl are mostly good. Meta lectures are mostly terrible - presenters just reading dense slides at the camera. Lecture errata are in a separate Word document instead of just being added below the actual lectures. Also, lectures can only be viewed through Canvas instead of Ed Lessons for some reason.
Quizzes: Weekly quizzes proctored with Honorlock (closed everything). Quiz weighting is 10% as of spring 2026. Sometimes the questions are worded quite poorly.
Exams: 20% midterm, 20% final, closed everything and proctored with Honorlock as of spring 2026. I’ve only taken the midterm so far. The midterm exam was a mix of multiple choice single answer, multiple choice multi-answer (sometimes with MANY options), and free response. Not many questions - make a mistake on one question and your overall grade will take a substantial hit. A practice midterm was given, but much easier than the actual midterm. Instead of curving the midterm, a "midterm retake quiz" was offered so students could try to improve their scores on a few select questions that were poorly written.
Homework: Assignments 1-4 are too simple and the tests are not rigorous. You can get 100% without really understanding. The professor has admitted this is the reason for reducing the weight of homework assignments in the final grade. Between 2 to 8 hours to complete each one. Most of the time is trying to understand the misleading instructions or figuring out the bugs in the code that is provided (and you aren’t supposed to modify).
Course staff: TAs are mostly slow to respond if they respond at all. The head IA (initials FPG) is actively unhelpful and refuses to respond to any questions regarding course policy interpretation.
Time commitment: Mostly low outside of exams.
tl;dr: No longer the easy A that it was in previous semesters. Take CS7643 (deep learning) instead, which covers a lot of the modern NLP architectures in more depth and has amazing TAs.
Hmm, I am feeling rather ambivalent about this course as a whole so far. The lectures by Dr Riedl were fantastic, and they have helped me gain a much better understanding of tricky NLP models like transformers, seq2seq, LSTMs etc and the lecture content was presented superbly by the professor. The same cannot be said for the Meta lectures unfortunately.
The saddest part about this course is mainly in relation to the rather vague and questionable option choices given as part of the quizzes and exams. Some of the questions had typos which led to a complete mismatch in expectations of the required answers between students and the grading rubric, while quite a few of the quizzes tested definitional questions using vague options which defeated the purpose of assessing a student's knowledge for the content.
I would say that the course would be in a much better shape if the quizzes and exam questions were more polished in terms of precision. I understand the intent behind the vagueness (defeat the use of LLMs) but given the closed book nature of the exams, perhaps having questions that were more directly worded can make the test taking experience and assessment of knowledge more pleasant and accurate.
Whoever is leaving the 1/5 reviews is just mad because they did poorly on the exam because they didn’t prepare enough. Part of taking a graduate course is acting like an adult and taking personal responsibility for success and failures. This person flamed out in the ED forums, was disrespectful, and acted like a child. Do not pay attention to their reviews — Dr Reidl is great, the TAs were helpful and accommodating. More importantly, the material was very interesting and well explained. pS grow up Anonymous Duck.
The exam design is atrocious. Between the irresponsible TAs and the word games posing as questions, this course has become a complete train wreck. The TAs are obsessed with multiple-select questions—one even had eight options! I honestly suspect these were AI-generated. The TAs should really try taking their own exams before subjecting us to them.The exam design is atrocious. Between the irresponsible TAs and the word games posing as questions, this course has become a complete train wreck. The TAs are obsessed with multiple-select questions—one even had eight options! I honestly suspect these were AI-generated. The TAs should really try taking their own exams before subjecting us to them.
Taken in Fall 2025, not Summer
I enjoyed this class a lot, and would definitely recommend it!
Lectures: Professor Riedl does a great job explaining topics in the NLP space. Of all the classes I've taken in OMSCS, this class has far and away the best lectures. I'm only talking about the first half of the class, because the Meta AI ones that don't come from the professor are not good for the most part (they mostly just read from the slides). The task-oriented dialogue and question-answering modules in particular were brutal. I would replay some of the Meta AI videos several times and still not understand what was being said. Professor Riedl informed us that he plans to record those lectures in the future when he has the time/resources which will make the class that much better.
Textbook: The class uses "Natural Language Processing" by Jacob Eisenstein (2018). I would guess most people ignore the readings, because they are not really required (like for exams and stuff). I did do the readings, but will admit that certain sections were harder to understand compared to Riedl's lectures. Still, there's some interesting material in the textbook. It goes a bit further on some of the concepts if you're interested in the domain.
Quizzes: I agree with the post below. They are not too hard. Generally, most weeks there will be a 2-4 question quiz on the module. You have to go through the honorlock system each time which is a bit annoying but not the worst thing in the world. Like in other OMSCS classes, my main tip is for the multiple selection questions do not choose options that you are not relatively confident about because your score for the question gets subtracted for incorrectly chosen options.
Assignments: The assignments are all in Python notebooks, so you can run it in Jupyter or Colab. You should not have to spend a ton of time to get full points on the majority of the assignments. There are small asks like implementing a neural network via PyTorch's nn.module (the constructor and forward functions) and tuning the model by playing around with the batch and embedding sizes. Due to Gradescope, all cells for each assignment should run within 30 minutes or so. They also provide the test cases so you can compare your output versus what is expected to determine what part of your code is off. I will note for assignment 3B (at least for this semester) you have to implement an attention-based architecture that will only work if you follow the steps outlined in the Attention lecture. It felt rewarding after I figured that out. Occasionally, I ran into issues importing/installing packages but often a restart resolved those problems.
Final/Mini Project: The final homework (HW5) is a more open-ended mini project. You get three weeks for it, as opposed to two for most of the other assignments. It's a cool concept in that you really get to decide how you want to do the preprocessing (i.e. glove embeddings, tokenization) to improve model accuracy. You also get to implement the training/test loops unlike the previous assignments (I honestly think this should be done for the earlier assignments too, but in those everything is done for you). The recitation video for the assignment posted on Ed Discussion helps point you in the correct direction (they have a video for each assignment), although the pseudocode is not 100% correct and you have to tweak things. It is important to point out that you are not graded on model accuracy, but rather your ability to articulate your decision-making processes and why you implemented your architecture a certain way. My main issue with the final project was that I was running in Colab and kept getting kicked off the GPU towards the end after a couple hours and would not regain access for another day. It is impossible to finish this assignment using CPU alone. Hopefully, the class provides Colab Pro licenses for students at the beginning in the future to avoid issues like this. I ultimately had to switch to Jupyter otherwise I wouldn't have finished. On the plus side, they grade the assignment fairly leniently.
Exams: The exams are a bit tricky, partly due to the fact that they aren't out of a ton of points. I would say the midterm is more based off the lectures, but the final was a bit different and open-ended. The exams mostly have short answer questions. I think most can be answered in a couple sentences. For the final, we were asked things like how we would develop a dataset for various scenarios, and how we would design the architecture of the actual model. Don't stress too much about the formulas. There will be a question or two on calculating tf-idf, rouge, and bleu scores but as long as it's in your notes you'll be fine. I ended up needing the entire time for both the midterm and final, but I also probably wrote a lot more for each response than what was required.
Other thoughts: Due to the fact that the final project and final exam had to be manually graded, the TAs unsurprisingly did not have enough time to go through them with a close eye for each of the 750 students taking the class this semester. I would not be surprised if they change things next semester to make things more manageable. Since grades were due shortly after the final exam, students could not request regrades and I'm sure that angered some that were borderline between letter grades.
Overall: If you get 100s on most of the assignments (not hard to do) and do well on the quizzes, you don't have to stress as much about the exam grades and should get an A. There was not really a curve at the end of the class, but the professor added 0.61% to each student (he added 0.5% to each student's grade, and we were also given half a point back on quiz 4 because honorlock wasn't configured properly at the beginning when the quiz was released). That should be more than enough to get you to an A. Like the student below, I was like a few hundredths of a percent under the 90% before the rounding and finished with an A.
*FALL 2025
Me: I had an undergrad in CS. I started in Fall '24. This was my 4th semester. I've taken:
I'm a full-time student. I took this alongside DL.
NLP grade: A (89.67%).
It's a good course. You learn alot. The lectures by the professor were great. The Meta lectures were hard to sit through. Some weren't that bad, some were really bad.
The assignments are informative. They are very easy. It's pretty easy to get 100% on every single assignment and even the mini project. Most of the class did.
There are quizzes almost weekly for each module. They are easy. Do well on them cuz you don't want them to be the reason you miss out on the A. I missed one and kinda YOLOd others and that almost cost me my A oops.
There are 2 exams, midterm and final. They each cover the first half and then the second half of the course. I.e. The final isn't comprehensive. The exams are interesting. Study well and you should be fine honestly. They are also open notes. So you can just put any notes you find online in a pdf and upload that and ctrl F throughout the exam. But even though the time given is long, it runs out fast. The notes help, but it's not like a cheat code. Still study. The grading seemed lenient, though that may depend on the grader. But yea, not too hard over all. Averages in the semester were like 80% or higher for both.
TL;DR: Assignments are easy. Quizzes are easy and almost weekly, don't skip them and do well. Exams are kinda easy too, just study the material well and have good notes.
Courses I've taken in order of difficulty: AIES (1/5) < CN (1.5/5) < HCI (2/5) < RAIT (2.5/5) < KBAI (3/5), NLP (3/5) < DL (3.5/5).
I got more out of this course than most GT classes. The lectures were interesting and engaging, although several lectures were from partners with strong accents that significantly reduced my comprehension and learning. The course has a pretty light workload, with two tests, five homework assignments, and weekly reading quizzes. I only have two real complaints. The homework instructions are fairly poor and unmaintained. Every assignment had several points of confusion because the assignment had very strict implementation requirements, but vague, unhelpful, incorrect, or actively misleading instructions. Many common points of confusion persist across multiple semesters without updates from the staff. My other complaint is that the 2 point weekly reading quizzes are proctored with a room scan, which always feels like an unnecessarily silly hassle.