Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (5 / 5): ★★★★★
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (3.6 / 5):
Workload: 10 hours/week
Pros:
1. Learn a ton of foundational programming skills really quickly
2. Programming assignments are fun
3. Instructors are helpful
Cons:
1. Piazza is a nightmare.
2.
3.
Detailed Review:
I write this the day after Dr. Lin posted on piazza saying there were a number of students who plagiarized the first assignment. The first assignment was designed to "ease you into Python" (the Syllabus). The spring offering has about 350 students. The grades weren't great and its become clear a swath of students have no programming experience. Piazza has lost its mind and the instructors are now letting students complete assignments in groups of 2-3 (beginning on assignment 3). I find this concession pretty crazy and here I will explain myself.
First, I admit I took two programming courses in college, one in java and one in R. I also did some free coding practice on udemy prior to starting the masters, and I have finished stats, ML, regression and casual inference. With that out of the way, before you take this class please remember its graduate school. Data Science graduate school. The programming is going to be hard and walking into a the curriculum with zero experience is a bad way to start. Second, we are online students paying $1000 a course. Thats crazy cheap compared to students on campus and there are 350 of us. I say this to help people realize that instructors are not going to bend over back wards for you if struggling. We are only getting $1000 of help back.
All that aside, if you stick to and do a little coding each day on the assignments they are manageable and office hours have been helpful.
Lectures are very big picture and you will be frustrated when its time to code. You're going to do a lot of searching on the internet for nuggets to learn from. Luckily there are an extreme amount of sources. RealPython has been my best friend.
Quizzes are reasonable. I you can find 80% of the answers word for word in lectures and the other 20% requires some extrapolation.
Please don't mob professor/TAs on piazza. your posts aren't actually anonymous even though it says so. When grades are low the forum turns into twitter real quick.
Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (3.6 / 5): ★★★★☆
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (4.3 / 5):
Workload: 20 hours/week
Pros:
1. Lectures in the first part are of high quality and combine a bit of introduction into key cocepts plus deep dive.
2. Scores for the class were quite high overall.
Cons:
1. If you aren't familiar with Latex or have forgotten how to do formal proof, the first couple of homeworks take 20+ hours. This drastically gets better later on.
2. It's completely theory (no programming) so if that isn't your cup of tea, it can be quite monotoneous.
3. The second part is "very theoretical"
Detailed Review:
Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (4.3 / 5): ★★★★☆
Lecture Rating (5 / 5): ★★★★★
Difficulty (3.6 / 5):
Workload: 22 hours/week
Pros:
1. Classes are interesting, well paced.
2. Teacher Assistants are really approachable and eager to help you.
3. You can learn Python if you have not used it before
4. There is testing help for the assignments.
Cons:
1. Challenging for non-coders.
2. Some questions in the quizzes have more than one correct answer and you may not get the points.
3.
Detailed Review:
I did like the way the professor taught using the chalkboard (old school), with one assistant also helping with the class to be dynamic.
Projects were challenging for new coders. I spent more hours than expected to get a working code.
Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (5 / 5): ★★★★★
Lecture Rating (5 / 5): ★★★★★
Difficulty (4.3 / 5):
Workload: 25 hours/week
Pros:
1. Lots of office hours and TA support
2. Beginner-friendly programming assignments
3. Curved so most students pass
Cons:
1. Monotonically decreasing difficulty. Do HW0 --> HW1 Programming --> HW1 Theory
2. Dr. Klivan's supplemental readings were too time-consuming for the value-added
3. The First exam was not completely representative of past examples
Detailed Review:
I am a career changer into tech and took this in my first semester. When I started the class, I had only taken an intro programming course and discrete math on Coursera. I found the first part of the course to be challenging as my linear algebra was lacking, but the course did get easier after the first two homework assignments. The first theory homework, in particular, was very difficult to comprehend and I spent 10+ hours in TA office hours to finally figure it out. If you have the time to review key concepts on StatQuest and 3Blue1Brown on YouTube, you will be able to understand the lectures and assignments even if you don't have a CS background. Those coming from Data Science may have taken other classes like Probability and Linear Regression that would have been good to know. The supplemental readings (textbook) and Piazza often have the answers you are looking for, so be sure to check those when doing the assignments. I highly recommend going to as many TA sessions as you can. Overall, it was a good course that was challenging but not impossible for a newcomer.
Misc. Notes:
Exams are punishing if you can't don't know where to start. The questions are largely different from HW and application-based.
It's easy to get lost in Piazza as people repeat questions, but it will help you to stay on top of it.
Peer grading was fine, and the rubrics were adjusted to be much more lenient in the last 4 homework assignments
Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (4.3 / 5): ★★★★☆
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (4.3 / 5):
Workload: 13 hours/week
Pros:
1. You are learning a lot of theory and practice in probability and statistics.
2. The part with Statkey is very manageable, though tricky.
3. The lecturers are interesting, all the tasks are being fairly managed, on a good and reasonable timeline, there is always OH, and ed discussions.
Cons:
1. It's a heavy course with a lot of calculus. I needed to shake the dust from my 20-year-old calculus knowledge. It started to make sense at some point, but it was a little tricky as I was rusty on those.
2. Basically, every week has HW that takes a few hours. Sometimes it took me 8ish hours. Statkey HW took me less, but the Quizzes on Statkey were too quick for me.
Detailed Review:
Decent but time-consuming course, be sure you have time to deal with it. You need time for lectures, HW, and maybe a calc refresher.
Join a study group on Discord.
All HW have solutions, you can learn from evaluating those after they are published.
The course is mandatory, so if you have time, you can't just swing by; join a study group.
Generally feels interesting and fundamental.
2 worst HW and Quizees are dropped so that helps.
Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (5 / 5): ★★★★★
Lecture Rating (4.3 / 5): ★★★★☆
Difficulty (2.9 / 5):
Workload: 12 hours/week
This course provides a good, in-depth exploration of regression and predictive modeling. The professor is good at making complex statistical theories accessible. The course load and progress are well paced—challenging enough to be engaging without feeling overwhelming. There's a strong emphasis on applying theoretical knowledge to practical, real-world data problems.
Pros:
1) Practical Application: The course does an excellent job of bridging the gap between theory and practice. You will constantly be applying the models you learn to actual datasets, which is crucial for building a real-world skillset.
2) Balanced Homework: The homework assignments effectively switch back and forth between coding and multiple-choice questions. This structure provides a nice break between different modes of thinking and helps reinforce the concepts well.
3) Clear Lectures: The lectures are well-structured and build upon each other logically, starting with foundational concepts and moving into more advanced techniques.
Cons:
1) Challenging Math: The mathematical component can be demanding. The course moves quickly through the theoretical derivations and proofs behind the models. Having already taken a course like Probability & Inference is a huge advantage. It will make the theoretical aspects of this course much easier.
2) Coding Prerequisite: There is a coding component, primarily in R or Python. If you don't have a solid coding background, the learning curve can be steep. If you do not have a strong background in R, taking Principles of Data Science first is highly recommended. It will provide you with the necessary coding foundation to keep up with the assignments without feeling overwhelmed.
Overall, this is a great course for any data science student. It's challenging but fair, and you'll leave with a solid, practical understanding of predictive modeling.
Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (3.6 / 5): ★★★★☆
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (4.3 / 5):
Workload: 20 hours/week
I concur with the review entitled "Algos Spring 2022". But I had no previous experience in a course that required writing proofs and submitting problem sets typeset in LaTeX, so I had to work a little bit harder than others. That said, I found the course extremely worthwhile, and was definitely satisfied when I completed it.
Also, because attrition in the course was quite high, I recommend that you do not take another course with this one if you work full time. But if you think you can give 20 hours per week (or a few less if you've taken a serious undergraduate algorithms course previously), I think that the course experience will be worthwhile and rewarding.
Finally, I used the course text (CLRS, "Algorithms") a great deal and found it to be much more useful than recommended texts for other courses.
Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (4.3 / 5): ★★★★☆
Lecture Rating (4.3 / 5): ★★★★☆
Difficulty (3.6 / 5):
Workload: 10 hours/week
Pros
1. Comprehensive coverage of probability and statistical inference, ideal for newcomers and as a refresher.
2. No specific software or coding expertise was required for the Statistical Simulation segment.
3. The lowest two quiz and homework scores are dropped (2 Quiz, 2 HW).
Cons
1. Probability lectures are fast-paced and theory-intensive, challenging for those without a solid math foundation.
2. The course doesn't focus on coding skills development, which may be a drawback for some.
3. High precision required in answers, necessitating careful attention to methodologies and rounding off details.
4. Extensive handouts and documents to manage, potentially overwhelming.
Detailed Review
As my introductory course in the program, I found the probability section quite rigorous, particularly since I needed a calculus refresher. The initial complexity of lecture and textbook examples was daunting. However, the statistical inference portion was more approachable. The course effectively deepened my understanding of various statistical concepts like hypothesis testing, chi-square tests, ANOVA, and the Central Limit Theorem. The probability textbook was less helpful, leading me to rely on alternative resources and YouTube.
Coding knowledge isn't required to pass this class. While the lack of coding focus helps concentrate on theoretical aspects, it limits practical application. However, for those with prior coding experience, implementing the course concepts in R or Python is feasible and not overly complex, especially with available statistical packages like "infer" for R. Personally, I wrote my own Python scripts for several probability calculations.
Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (4.3 / 5): ★★★★☆
Lecture Rating (4.3 / 5): ★★★★☆
Difficulty (2.9 / 5):
Workload: 12 hours/week
Pros:
1. Fun projects using relevant technologies (Python, PyTorch, Colab)
2. Broad coverage of topics meant a lot was covered without too much prerequisite knowledge required (math = basic probability, matrix multiplication, and taking a derivative is all you need. programming = basic python, see note about pytorch below)
3. (Most) of the TAs were very helpful
Cons:
1. Parts of homeworks end up as time-consuming trial-and-error hyperparameter tuning that can take hours to finish. Not too difficult to get a high grade though.
2. Final project much more time-consuming (at least 2-3x, probably more) than the rest of the homeworks
Detailed Review:
Highly recommend this course, it was a well put together and interesting hands-on exploration of Deep Learning. I would also recommend taking the time to go through the basic tutorials provided by PyTorch, with a couple hours of investment will make the HWs a lot easier. Anything outside the basics is covered well enough in the lectures.
Overall Rating (4.3 / 5): ★★★★☆
Professor Rating (5 / 5): ★★★★★
Lecture Rating (5 / 5): ★★★★★
Difficulty (3.6 / 5):
Workload: 20 hours/week
Pros:
1. Fun but challenging homeworks
2. Awesome lecture content
3. Learned a lot of practical stuff
Cons:
1. High bar to get an A
2. Not enough time for final project
3. Final is a group project.
Detailed Review:
Overall this was a good course. I was challenged, learned a lot, and got inspired by the content. It is definitely possible to get a very high score on the homeworks if you put in the hours.
The final project is very open ended and challenging. The lack of guidance and time constraint sucked a lot of the fun out of it, and made it stressful.
The team aspect can be hit or miss. In our case, one teammate did absolutely nothing which was frustrating, but is what it is.
This is a great intro to deep learning, and you will gain some practical skills, but I feel like it is just scratching the surface. To get a really deep understanding of many of the topics covered I think will require a lot more time.