Natural Language Processing

4.25 / 5 rating2.50 / 5 difficulty8.75 hrs / week

Quick Facts and Resources

Something missing or incorrect? Tell us more.

Name
Natural Language Processing
Listed As
CS-7650
Credit Hours
3
Available to
CS students
Description
Topics include lexical analysis, parsing, interpretation of sentences, semantic representation, organization of knowledge, inference mechanisms. Newer approaches combining statistical language processing and information retrieval techniques.
Syllabus
Syllabus not found.
Textbooks
No textbooks found.
  • DdWQS12tsZ78dqc1ajCb8g==2024-03-16T18:34:51Zfall 2023

    This is my 7th course and by far the best. It does a good balance of theory/lecture, programming assignments and paper overview. It doesn't beat you to death with sadistic assignments and provides a shell where you focus on the conncepts learned and see it working. I finally understood the intuition of a Transformer model and its variants. Prof. Riedl is stupendous and i wish he finished the entire modules.

    He should come up with advanced NLP since there is lot of interest on how to quantize and FineTune a LLM models using HITL RLHF or DPO. I think Finetuning itseld can be a course starting with multiple sub-word, PE and attention techniques that can be explored.

    Only thing that they can improve is better homework recitation by TA.

    Rating: 5 / 5Difficulty: 3 / 5Workload: 10 hours / week

  • UfLZ7HeMFhLz8He29deVEQ==2023-12-18T04:33:05Zfall 2023

    My 8th course in the program and one of my favorites so far. There are about 18 hours of lecture content. Reidl's lectures are very good, I actually went through all of his twice to try and fully absorb the content. A handful of the modules are done by guest lecturers from Meta and are much worse in comparison--some of them seem to be reading straight from teleprompter, most just do a terrible job at explaining things. Most of the content of the course focuses on neural networks, although there is some content on foundational math in the beginning. If you have a strong foundation of ML, I would expect this class to be not too hard. If you don't, you might have to do a little more work to catch up. There are 6 homework assignments that entail filling out various functions in a jupyter notebook, you are given a lot of supporting functionality, and they are graded based off included tests. I'd say they ramp up in complexity pretty steadily. The first 4 are a breeze, and can be done in an afternoon or two very easily. The 5th was somewhere in between. The 6th is a "project" that is still just a notebook with some instructions, but more open ended about the approach you can use and doesn't have any auto-grading. We had an extra half a week for the project, but I spent as much time on the project as I did every other assignment combined, so start early. Everything is done with Pytorch, and you actually build models that do stuff, which makes the learning feel well applied. I feel like I am walking away with a toolkit to do more projects using what I learned--a first for me in this program. There were two exams. They consisted of a series of short answer questions, with unlimited time and open notes/internet to complete. In order to make this somewhat challenging, they're structured to make you apply concepts from the course in more creative scenarios, not just regurgitate facts from the lectures (most of the time). I found it took me quite a bit of time to think through each question, but I learned in the process of completing the exam. It was challenging, but honestly, it's the most fair and effective exam structure I've ever encountered (and my philosophy is generally that exams are a waste of time). Besides the bad lectures from Meta, my criticism of the class, at least in this semester, is that the TAs are still figuring a lot of things out about how to best run the course. They were very slow on grading, and very inconsistent with responding to questions on Ed. Some of the instructions in the homeworks were very confusing, and at times I felt the challenge was in interpreting what was written, not in actually doing the task itself. I expect some of this will resolve as time goes on and they improve the logistics of the course. They also are very strict about not releasing anything early, including lecture content, which is released on a weekly basis and includes short quizzes which must be done in the week they are released. In this semester, we weren't allowed to download lecture videos or slides from the lectures. I don't really understand why, but these things were a big inconvenience to me when I had some international travel during the semester. My time estimate is an average across the semester. In the early part of the course, I would often spend 3-5 hours a week on the course. During exams and toward the end, it was closer to 15-20.

    Rating: 4 / 5Difficulty: 3 / 5Workload: 10 hours / week

  • ImzcgxSUGzJX34bAJBzljg==2023-11-29T22:36:17Zfall 2023

    I have liked this course so far. The first half or more of the course is going deeper into NLP concepts I had already seen in DL. The homework assignments are not too hard. The project is very interesting. NLP is a lot easier than ML and DL. I would recommend it for a summer class.

    Rating: 4 / 5Difficulty: 3 / 5Workload: 10 hours / week

  • G7mwFE9ZjXyQeoeJJF5M6g==2023-11-15T08:59:03Zfall 2023

    This course does a good job of explaining modern NLP topics, such as word embeddings, RNNs/LSTMs, attention, Transformers, and Key/Value stores. It also covers some info retrieval topics.

    The early lectures of the class are very detailed and cover the topics very well. The explanations are stellar.

    The homeworks are simple and basic. Can be done in a few hours. This class is so light it can easily be paired with others. The exams are open book and you are given ample time to do them without honor lock. The late policy is very flexible (5 free late days for the semester).

    The downsides of this course are vague lectures from Meta towards the end which just throw a lot of terminology in a survey fashion, rather than explain any concepts. The professor should re-record them with his explanations (since he does a great job in the other lectures). And the course could easily have 3x more homework and still be quite doable. I've sometimes ignored the class for weeks and done well.

    No topics on pretrained model refinement or Reinforcement from Human feedback.

    Overall a good class. I learned a lot. But I would have preferred some more projects that delve into more of the typical NLP tasks. Rather than just a couple of basic tasks.

    Rating: 4 / 5Difficulty: 1 / 5Workload: 5 hours / week