Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (3.6 / 5): ★★★★☆
Lecture Rating (2.1 / 5): ★★☆☆☆
Difficulty (1.4 / 5):
Workload: 12 hours/week
Pros:
1. Demo code provided is well-commented and compliments lectures nicely
2. Project-based, no exams
Cons:
1. Socratic piazza format with lots of over-ambitious students providing incorrect answers
2. Lectures are not very helpful if you are already an experienced programmer demo code is sufficient
Detailed Review:
Project-based course that anyone who his written and delivered production-level application code will find fairly easy. Weekly "flipped classrooms" that take ~1-3 hours to complete and bi-weekly homework assignments that take varying amounts of time (each homework gets progressively more involved) but for anyone with the programming experience I mentioned above, should take no longer than ~15 hours.
Without solid programming experience, I would HIGHLY recommend taking some MOOCs to prepare, as you will find this course work-intensive.
My biggest gripe with this course was Piazza, though the issue may be only specific to this semester. There were plenty of threads that would be answered by students only, with incorrect or incomplete responses, that the instructors would not answer (presumably because Piazza marked the question as "student-answered"). Programming tends to fester egos, so I think this was just the result of several experienced programmers thinking they could answer every Piazza thread by themselves. Questions regrading some unclear corner cases in homework assignments would often take awhile to answer because of this, significantly delaying development/completion efforts.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (2.9 / 5): ★★★☆☆
Lecture Rating (2.9 / 5): ★★★☆☆
Difficulty (3.6 / 5):
Workload: 6 hours/week
Pros:
1. Very broad coverage of RL fundamentals
2. Programming assignment/homework are generally not too crazy
3. Piazza support is decent
Cons:
1. More recent RL techniques (like policy gradient, deep RL) are less/not covered
2. Hands-on component is not that challenging, hard to utilise learned things in a practical manner
3. Final exam grading can be brutal
Detailed Review:
This course covers almost all the chapters in the 2nd Edition of Reinforcement Learning textbook. For anyone new to RL, I think the topics are fairly easy to pick up without requiring very advanced math/stats, and also can be interesting to learn. The textbook itself is very well-written, in fact one could take this course without even attending the lectures. However, modern RL in recent years have seen many interesting topics like deep RL and methods from policy gradient. If you're looking to learn more into these topics, unfortunately they're not really there in the course. Overall I do think packing all the chapters in the book into one semester already means there's little time for anything else, especially when there are also homework and programming assignments along the way.
The homework are mostly multiple choice questions, usually with very few attempts, or sometimes even single attempt, so be careful if you want to score well for this course. My advice is to score PERFECT score for the homework and assignments, since most people do very well in these and only don't do well in the final. Perhaps even 1 mark can put you in a different grade. The programming assignments are OK in my opinion. Compared to the Coursera course on RL, it's definitely harder, but IMO not that challenging. Most of the time you're really just asked to implement the pseudocode mentioned in the textbook. Also, at least in this semester, the deadline for programming assignments and homework pushed back so as to allow people to juggle their own time. There were actually students who frowned upon this, blaming upon the lack of time enforcement.
There's also a graded component called "reading response". This is fairly easy to score - just make sure you read up a new chapter every week and submit your summary in EDX in time. The grading is pretty lenient for this.
The final exam receives quite a bit of negative feedback in Piazza, and while to me it's not that bad, I can understand where the complaints come from. For one, the instructors rely on EDX to carry out the final exam, and somehow it's a binary thing in terms of correctness (you either get full or zero mark for a question). This can be frustrating (even for me) because it means the system does not differentiate people who have put in effort to understand a concept but got the answer slightly wrong (and thus get zero mark) vs people who don't understand the concept at all.
Overall support in Pizza is pretty good IMO. The TAs have the most presence (both Sai and Tyler were very active), and to my best memory the professor was not active. But if you need help generally there's enough support from Piazza (whether from students or TAs).
Similar to other previous feedbacks, I really do hope there could be more meaningful projects in the course. Perhaps the intention of the course was to give a solid theoretical foundation, but I do question if all the chapters are necessary to achieve so. Or perhaps, it could have been possible to compress some chapters into one, and leave some time to do a mini-project to exercise what we have learned.
Also note that Professor Scott Niekum is no longer with UT Austin, so he's not teaching this course anymore although the lecture videos were probably recorded when he was still around.
edit: in case anyone wonders the size of class, for Fall 2022 it was about 160 students. So considering this, I've to say the TAs did a pretty solid job keeping Piazza alive. The final grading was quite generous due to the issues mentioned above - if you get full marks in the non-exams but get only 70 out of 100 in the final exam I think that still results in an A.
I also want to comment that there will be a lot of negative feedback coming in soon for this semester, since in Piazza you can see quite a bunch of people very mad about certain handling of final exam by the TA. The overall story is that yes, the TA probably can do better, but the TA team is really small and I think some of the students really vented too much. Still a highly recommended course unlike some of the incoming bad reviews that come from a small group of students who are probably still mad while writing the review. Note that I’m writing this as unbiased as I can be, even if I disagree with some of the ways that TA handled it, I think they did their best and let’s be more forgiving. Quite disappointed with how some students set out to destroy the course in the review despite so much that we have gained from the course.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (4.3 / 5): ★★★★☆
Lecture Rating (4.3 / 5): ★★★★☆
Difficulty (3.9 / 5):
Workload: 14 hours/week
Pros:
1. Heavily focused on fundamentals of ML that often go neglected in other courses.
2. Notes and Lectures are quite detailed, often didn't need to seek outside resources to understand the material.
3. TAs and Office Hours were very helpful and among the best in the program.
Cons:
1. Peer Grading is annoying
2. Exam format is quite restrictive
3. First half of course can be difficult to understand at points, second half goes by very quickly.
Detailed Review:
I can overall say I'm glad I took this course, it was challenging but not too overwhelming (outside of the first 2 HW assignments). There's definitively more math required than other ML courses in the program (particularly calculus, linear algebra, and statistics) but that allows for a deeper understanding of the material than I got from the other classes on this topic. I'd say the first half of the course is generally more difficult from a conceptual point of view, while the second half requires more math but is overall more straightforward. The Office Hours and support on edx are also quite helpful, especially when compared to some of the other courses in this program.
That being said, there are definitely a few features of this course that prevent it from being perfect. The required peer grading is annoying as many of the other students will randomly take off points from your assignment without comment even if it is virtually identical to the solution. There is an option for a regrade but, it can often take a while and it would just be easier overall either there was no peer grading or stricter guidelines were set for the peer graders. The exam format is also quite annoying: it's open book/notes, but only if they are printed out. For a program that is completely digital, it seems a bit backwards to force students to print the online material out, especially when we already have to share our screen for the exam anyway.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (2.9 / 5): ★★★☆☆
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (2.9 / 5):
Workload: 7 hours/week
Pros:
1. Great TAs
2. Overall useful material
Cons:
1. Two midterms (with some annoying policies)
2. No professor presence on Piazza
3. Compressed schedule (12 weeks vs 14)
Detailed Review:
TAs - Overall TAs did a great job. They were very active on Piazza, held lots of office hours with good times for working professionals, and were very prompt in grading both of the midterms (both graded and returned ~ a week)
Homeworks - As others point out, homeworks get progressively easier as semester progresses. Overall they didn't take up too much time to complete on aggregate.
Midterms - I didn't think the midterms were as difficult as mentioned in some other reviews and were fair in the material you were expected to know. TAs provided some practice exam materials which were around the same level of difficulty as the actual exam, so you weren't too surprised going into it. They also gave a pretty generous timeframe to take the exams. However you had to record yourself and can only bring in printed notes (no electronic notes). I found it super annoying to print out all the lectures notes for the exam, and you definitely want to print them out because you will almost certainly need to reference them extensively.
Professors - They were completely absent from the course. This is the first course I've taken in the program where there was zero professor engagement. Dr. Klivans' recorded lecture were just ok in my opinion, however I did really enjoy Dr. Liu's teaching style and clarity.
Schedule - The course was cut two weeks shorter than normal, making it run at around the same pace as a summer semester. At first this was pretty rough, especially during the first few weeks trying to balance the tougher assignments of this course along with work from the other course I was taking. However by the end of the semester it wasn't too bad to manage due to the easier assignments. In hindsight ended up being a good thing as I could focus all my attention on the final assignment in my other course.
Prerequisites - This is a theory course, so honestly the more math taken beforehand the better in terms of preparedness. I took probability, regression, and LAFF prior to taking this course. Knowing probability and linear algebra is really critical to understanding the material in this course. Taking regression prior is also a major plus as there is a lot of overlap in the topics, and regression is definitely the easier of the two due to the lack of exams.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (3.6 / 5): ★★★★☆
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (3.6 / 5):
Workload: 14 hours/week
Pros:
1. The simulation based approach to statistics was very interesting and practical
2. The midterms and quizzes were fair and the homework problems and lectures prepared me well for the tests
3. The course materials were relatively organized and my questions were answered quickly on Piazza
Cons:
1. The probability portion of the class has a lot of room for improvement
2. The probability lectures often didn't prepare me to solve the probability problems on the homework assignments
3. There were more proof problems than I would have liked
Detailed Review:
This course was divided into a probability section taught by Professor Mueller and a statistics section taught by Professor Parker. Overall, I thought the statistics portion of the course was excellent but the probability section needs to be improved. I loved the simulation-based approach to statistics and the decision to teach this material with Statkey. I have reviewed this fundamental statistics material several times over the last few years but this simulation-based approach helped me see the "big picture" and I am now much more confident about using these methods in my work. In contrast, while the fundamental topics of the probability section were very interesting and useful, there were many other topics that were only briefly mentioned in the lectures (or appeared in the homework with no appearance in the lectures) and were neither explained well enough to fully understand nor motivated well enough to appreciate why they might be useful. I would have liked the probability section to have focused on a subset of the most fundamental material and spent more time on the applications of that material, rather than on theoretical proofs and auxiliary topics which I will likely never revisit.
The quality of the instruction in the statistics section was significantly higher than in the probability section. There were many typos in the lecture slides for the probability section which negatively impacted my ability to understand the material, especially since some of the typos were not acknowledged by Professor Mueller in the video lectures. Also, the lectures for the probability section frequently failed to prepare me to solve the problems on the corresponding homework assignments. Both professors were very likeable and I believe they both want their students to succeed, but Professor Parker was a much more effective instructor. Her video lectures did a great job of explaining the material and I always felt prepared to complete the corresponding homework assignments with little to no external references. There were a few typos in her course materials as well but much less than in the probability section. Professor Parker was also very active on Piazza and made sure to answer student questions in a timely manner. I am very pleased with Professor Parker's instruction but I believe the probability section should be improved.
I did not interact with the TAs but I saw that they were active on Piazza and regularly answered student questions, which was helpful for me as well.
To help put my review in perspective, I received an A in the course.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (2.1 / 5): ★★☆☆☆
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (2.9 / 5):
Workload: 16 hours/week
Pros:
1. Well structured course
2.
3.
Cons:
1. Horrible staff support.
2. Cutthroat grading scale.
3.
Detailed Review:
This class is great for creating a strong foundation in linear algebra. The course is very well laid out, but I would not recommend taking it in the summer as it seems like it was definitely structured to benefit from the longer fall/spring semesters. I don't think the course has changed much in the past few years - there are a total of 9 (weekly in the summer) homework assignments (2 lowest dropped), 1 proctored proof-heavy midterm, 1 take-home coding midterm, and 1 take-home coding final.
You can expect a flipped-classroom-like setting for most of the course - the lectures can sometimes be short and instead guide you to proof a lot of the content to yourself through "homeworks" from the text. Overall, I think this works well for understanding a lot of the content.
The bad: the staff support was horrible for this class. Questions on Ed discussion were completely ignored by the staff, even if they were asked weeks in advance. Not completely unheard of, but the grading can be very cutthroat - you either get 100% for a perfect answer, 50% for a small to semi-large mistake, or 0% for a completely wrong answer. It seemed that sometimes the "perfect" answer meant you had to proof things the exact same way as the key the TAs were given - no alternative proofs. These things combined made for a horrible experience with grading, as you could easily lose points off of your overall grade by small mistakes. Overall, this class can really benefit from revising its grading structure and staff support.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (2.9 / 5): ★★★☆☆
Lecture Rating (0.7 / 5): ★☆☆☆☆
Difficulty (1.4 / 5):
Workload: 15 hours/week
Pros:
1. Ample amount of time to 'ACTUALLY READ' the papers given, and experiment on your own.
2. Seung Jun Choi and the rest of the TAs reply almost immediately and the overall availability of staff is there.
3. You get hands-on experience in writing a paper using latex and thinking about building a case for your final paper using academic papers and publications.
Cons:
1. More context on the why rather than the concepts would have added more value to the content. I felt that we covered mechanics and less details on comparative assessments to gain deeper insights. maybe it would be too much, but I would have appreciated the attempt.
2. I think for the lectures, it would be better to give deeper insights, not just covering the slides. for a graduate course, having lectures almost read is not much of a value add.
3. On the research problem, you are almost on your own; Its very hard to get a TA involved in a problem you are facing esp if its core to your model. Its not their fault but its a concern if you are looking for more hand holding.
Detailed Review:
I do agree with some of the feedback regarding the lectures. However, not taking this course is a MISTAKE for those who : 1- Do not have experience in Latex or academic paper writing, 2- Machine learning newbs (Tensorflow, Pytorch) 3- Never read research papers or used them to build a case for their own ideas 3- work full time and or have kids but they need to stay fresh with ML research papers and get a grade for it.
Some reviews state that the workload is 2 hours a week. I think if you watch the lectures on 1.5x and labs on 1.5x you'd have 20 minutes to go over the papers. This is without counting the quiz time if you want to have a full mark. Not sure how 2 hours would work.
If you want to push the limit, you read the papers, and experimented building LSTMs, CNNs and other models on your own then pass over this or take the easy A knowing that you are probably not gaining much.
My experience is different. I read the papers for the first time, experimented with the labs, tried different architectures and optimizations. I never worked on a paper with latex.
If learning on your own, with a guard rail, is what you seek, then this course is the right choice to get into Machine learning and into writing academic papers.
Learned about neural networks and computer vision, but extremely stressful and frustrating at the end.
Fall 2021CS 394D · Deep Learning
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (2.1 / 5): ★★☆☆☆
Lecture Rating (2.1 / 5): ★★☆☆☆
Difficulty (4.3 / 5):
Workload: 15 hours/week
Pros:
1. Lots of coding in Pytorch/Python
2. Applications course where you learn by doing.
3. Helpful TA's (most of the time)
Cons:
1. Projects can be very complex and unguided.
2. Final project is an absolute nightmare.
3. Models can take a long time to train.
Detailed Review:
I took linear algebra and machine learning before this course. Mainly, that background was helpful for the theory quizzes that we had to take, ~10% of grade. 60% of your grade comes from 5 homework assignments, which range in levels of complexity. They are focused on applying deep learning architectures to play a mariokart-esque video game called SuperTuxKart. The first two are easy to knock out in a reasonable time frame because the prof gives you hints on how to do them in the lectures. However, the 3rd & 4th homeworks were significantly more challenging as they are very complex and have concepts not introduced by the lectures. The 5th homework returns back into to "managable" territory. Luckily, you can drop your lowest score and there's also an extra credit homework.
Then comes the final project, the last 30% of your grade. Everyone is given some skeleton code and asked to split into teams to come up with the best model to play the video game in hockey mode, where the object is to score goals against an opponent instead of drive on a track. This was probably the biggest cluster of a project I've ever seen. My team tried everything we could think of for 4 weeks. Before work, after work, & on the weekends. But had very limited success with our model. Eventually we were able to scrape together some points, but overall what we came up with was a flop, despite how much time we sunk into it. Very frustrating and exhausting. Luckily, the code itself was only worth ~30% of our grade for the project. The other 70% was based on a 1 page write up explaining our approach and all of the things we tried - basically designed to prevent people like me from failing. However, I do know other teams were able to score higher than us and get good grades on the code portion. It's a mystery to me how they did it, though. Maybe you'll be one of those. Or, maybe you'll be one of me. It's a crap-shoot.
Overall, when I look back on this course I'd say that I learned a lot. But, it was very painful. Time investment can vary week to week. I had weeks where I was dumping a ton of time into the class trying to get the projects done. But I also had weeks where I wasn't doing anything for it.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (3.6 / 5): ★★★★☆
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (2.9 / 5):
Workload: 16 hours/week
Pros:
1. Topics are highly relevant to Optimization, ML and many other areas
2. Course authors structured the contents very neatly
3. Head TA was very helpful
Cons:
1. Lack of ownership from current staff
2. Some of the topics covered are very esoteric and useful only in scientific computing
3. High pace in the first few weeks
Detailed Review:
This course should be taken as first course in the program by those who are not familiar with LA beyond vectors and matrices. Without understanding norms, semidefinite matrices and eigenvalues, you cannot learn much of machine learning theory. However new staff were not fully into the materials yet, that was my experience.
However towards second midterm and finals they realized this somehow and graded more leniently. I somehow felt that I did not need to put that much effort into painfully solving the last questions in finals, because they were freely awarded due to lack of time for staff to evaluate 300+ submissions.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (4.3 / 5): ★★★★☆
Lecture Rating (4.3 / 5): ★★★★☆
Difficulty (2.1 / 5):
Workload: 5 hours/week
Pros:
1. Can make it as easy or hard as you want to
2. Good lectures
3. Well organized
Cons:
1. Very easy to take shortcuts if not disciplined
2.
3.
Detailed Review:
This class was fun and is a well run class. It is very low stress, but you can go as in depth as you want with the homeworks. The class is setup to be four homeworks and many quizzes that can be completed on your own schedule (all quizzes due last day of class). Homeworks are spread out over the semester. Lectures are well done. Material is useful and seems practical. The homeworks are very good at applying the material from lecture. The homeworks they give you a local grader to run, so you know when you are on the right track or not. Overall I would recommend taking this class, it gives a good overview of deep learning without adding too much stress to your life.