Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (1.4 / 5): ★☆☆☆☆
Lecture Rating (4.3 / 5): ★★★★☆
Difficulty (3.6 / 5):
Workload: 20 hours/week
Pros:
1. Covers a generous amount of linear algebra, basics and advanced
2. Material is well presented in the textbooks
3. Cements a great foundation for later courses in the program
Cons:
1. TAs will make or break your grade
2. Lectures often end with some form of "prove this to yourself without me explaining it"
3. Two midterms and a final can leave you playing constant catch-up if you work full time
Detailed Review:
First the good:
This will set you up for success with future classes that rely on LA for concepts and applications. The course itself is well designed, even with an index that references all of the terms and definitions covered in the course. Assignments are the honor system where you can easily click through them without doing them. The course itself is free on EdX so you could even do it on the side with another class before taking it for the credit.
I enjoyed this course at the beginning, when the TAs weren't required. The material was difficult at first, but quickly became easy to grok on second readings. If you have any issues with writing proofs this is a good spot to practice and receive feedback on how to improve.
This leads to the bad, and the bad quickly overwhelmed the course halfway through:
This feedback loop of course depends on your TA selection. I'm not sure if TAs are required to make sure a certain percentage of the class does poorly, but in this semester it seemed that way. I would actually describe the grading and feedback as hostile. How I mean is that either you would lose points for minuscule things, or lose points because you didn't meet some criteria. The criteria was often unknown until after grades came back, where the TA would leave a single half-sentence describing what you missed. One of the most notorious examples of this was for one homework asking you to investigate a certain criteria and compare different methods of convergence.
A large number of the class lost points because they didn't give the exact value required for optimal convergence, which was not mentioned anywhere in the homework.
The homeworks themselves are between 0 and 3 points for each question so missing a single point can be catastrophic. Usually you would expect at least a 1 for putting in effort on an assignment; the TAs in this course made sure you got a 0 instead, as if you didn't even turn in the work. Requests for regrades could then be redescribed as requests for being told you're just beating your head against a wall.
In a normal class, you could take the feedback on where you did poorly and improve on it in the next homework. Our class we had homeworks essentially all graded near the end of the semester, to where homeworks we've submitted could have been done differently had we had the feedback of previous homeworks by then.
Don't expect a curve either. Despite previous semesters all reporting generous curves, or at least enough to bump them up one category, our shortened semester had zero curves. Grade distribution as a result led to 25% of the course theoretically being placed on academic probation. Any requests for a curve were either ignored, or the requests deleted by the TAs. This was devastating as the curve could have been less than 1% to make a letter grade difference to a chunk of the class.
In summary, it is a good class to learn advanced linear algebra techniques. If however you have any doubts in your proof writing ability, or your theoretical math, take the course on EdX for free and save yourself the stress. A bad TA could be the final decision on if you pass with a credit, or you fail the program.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (2.9 / 5): ★★★☆☆
Lecture Rating (2.9 / 5): ★★★☆☆
Difficulty (3.9 / 5):
Workload: 15 hours/week
Pros:
1. Well-designed materials especially for the first four weeks.
2. If you thoroughly study all the materials, you'll certainly gain a wealth of knowledge.
3. You can drop the lowest grades for assignment and the questions on edx. For Spring 2023, both Exam 2 and the final exam are as take-home exams. All the TAs are responsitive and work hard to get the things done.
Cons:
1. The first four weeks are well-structured with smooth transitions between topics. However, students tend to get lost starting from weeks 7 and 8, as there is a significant gap between the initial weeks and the rest of the semester. The course seems to lack concrete examples and motivation for specific topics, which noticeably increases the learning curve.
2. The new course team appears to have underestimated the workload. We haven't received Exam 2 even though it's the end of the semester.
3. Exam instructions are not self-contained (e.g., there are no links directing you to relevant content), so you need to find some necessary components elsewhere, such as the course GitHub repository.
Detailed Review:
Once again, I highly recommend building a strong foundation before diving into the semester. The same course team has created an undergraduate Linear Algebra course that you can find on YouTube. It's an excellent resource to help you become familiar with the mathematical concepts and terminology you'll encounter.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (4.3 / 5): ★★★★☆
Lecture Rating (4.3 / 5): ★★★★☆
Difficulty (2.9 / 5):
Workload: 10 hours/week
Pros:
1. The material is interesting.
2. Lenient grading.
3. Open note tests.
Cons:
1. Tests are difficult.
2. Supplemental material may be required.
3. Proctored tests.
Detailed Review:
I took this class in my first semester along with Advanced Linear Algebra. I would have preferred to take this course after Linear Algebra since some of the material uses concepts from that course. It was also some time since I last took a probability course, so I had to brush up on some of those concepts as well.
The first half of the course covered a variety of machine learning algorithms like perceptron learning and regressions. I felt like the courses did a good job of describing these algorithms, but there were some parts that needed additional explanations for me to fully grasp them. I ended up using StatQuest on YouTube to supplement some of the material during this half of the course.
The second half of the course went into statistical learning, which was a lot more based on probability theory than the first half. Some concepts like K-Means and Neural Networks were also covered in this half. I felt like this half of the course was a lot easier to grasp than the first half, since there were more concrete examples.
The homework wasn't too bad, there was a mix of theoretical and programming problems. The programming problems were more toy examples than actual applications, but they did help with understanding the material. I felt like the first homework was the most difficult. The homework is peer-graded and most people were fairly lenient. In addition, the lowest scoring homework was also dropped.
The tests were open note, but closed book and closed internet. A recording of you taking the test using Panopto Video was required. I didn't have an issue with the proctoring personally, but I know that this was controversial for some of the other students.
Both tests were difficult for me though. I felt like both had at least one question that was way harder than was necessary.
Even though I struggled on the exams, I did do well in the course. The final grading scale was set up so that most of the class would get at least a B-.
I did feel like I did get a lot out of this course, which is all I can really ask for.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (3.6 / 5): ★★★★☆
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (2.9 / 5):
Workload: 8 hours/week
Pros:
1. Regular weekly homeworks and no exams
2. Assignments focus heavily on application of the concepts in lecture
3. Covers a broad area of topics
Cons:
1. Difficult to work ahead due to material release schedule and office hours
2. Expectations on homework are sometimes unclear, no rubric is provided for staff graded homework
3. Shift in teaching styles between first and second half of the course can be jarring
Detailed Review:
This course has a pretty simple structure of lectures released weekly accompanied by graded practice problems, peer graded, and staff graded homework assignments. 10% of the grade is for participation and peer grading properly. Honestly they should just remove the participation element, as its presence tended to decrease the quality of discussion on Piazza (the TA explicitly called out people making minor edits for "participation"). It appears that based on feedback from previous semesters, weeks 6 and 12 of the material were made optional so that the 10 weeks of the summer semester had 10 weeks of content which was greatly appreciated.
The first half of the course spends half the time on time series data and the other half on spatial data. The professor's lectures are easy to understand and supplemental materials are provided if needed (I found them to often be beyond the scope of the lectures). There are also separate lectures for coding demos, which make starting the homeworks much easier as they introduce you to working with the often niche packages necessary to complete the assignment. As a result, previous R knowledge is not necessarily required but recommended. The second half of the course focuses on modeling with matrices. The lectures overall were a pretty gentle introduction to the linear algebra concepts necessary for later on, but incomplete code snippets in the lectures or visuals with no code as context at all made starting the assignments more difficult. The second half of the course requires Python. It is expected that you have a grasp on the concepts of numpy such as indexing and vectorization, as these are necessary for the assignments to run in a timely manner (or at all), but not explicitly taught or even really mentioned anywhere in the course. Unlike the first half of the course, there are less supplemental materials provided. A pain point I personally encountered on the spectral clustering portion of the class is from differences in the implementation of this algorithm. The lectures are based on a specific paper, and if you don't use that implementation specifically, the hoemwork will not come out properly I found. There were code snippets at least provided for most of spectral clustering, so just know that using those for all the assignments regarding spectral clustering is best practice if you want your answers to come out matching the expected answers as best as possible.
Almost every week there is a peer-graded homework and a staff-graded homework. The rubric for peer grading is always the same on a 4 point scale with relatively subjective criteria determining the grade. What constitutes as "minor errors" is poorly defined, but luckily that means in most cases this rubric will work in your favor as people generally lean towards giving higher grades with this rubric (the average grades on all peer graded assignments were around 3.5 or higher). The staff-graded homework is always on a 20 point scale, but no rubric or answer key is provided and feedback from the grader tends to be vague, so attention to detail on these assignments is important to not lose a significant number of points.
This course is pretty well structured all around and covers a broad area of topics to the extent that those who wish to dive into them deeper will have the right toolset to get started. The lectures, practice, and other provided materials will set you up for success in this course.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (2.9 / 5): ★★★☆☆
Lecture Rating (2.1 / 5): ★★☆☆☆
Difficulty (3.6 / 5):
Workload: 10 hours/week
Pros:
1. Material is interesting (for the most part)
2. Exams are fair
3.
Cons:
1. Dry lectures
2. Ed discussion board is mostly student-driven
3.
Detailed Review:
For context, I don't have any prob/statistics background. I never took an undergrad class and the little that I do know were pieces I picked up from work or math classes.
I thought the material was really interesting. A lot of the results in the probability portion was counter-intuitive and learning about statistical methods was satisfying. That being said, I started having difficulty in the later portions of the probability section when the math started getting more involved. Definitely took me some time, re-watching the lecture or reading supplemental material to get a grasp on the more math-heavy sections.
The lecture itself is conceptually interesting, but very dry during the maths/proofs. I agree with the other reviews here that say skip through the proofs sections in Prof Muller's lectures. The proofs are there for your understanding (or confusion) and do not show up on the homework for the most part. The examples in the lectures are the most helpful portion, and the homework problems are generally an extension of the lecture examples. The statistics portion with Prof. Parker was more practical. Once you figure out the pattern for what to do for each type of problem, it becomes plug and play.
The ed discussion board was helpful, but mostly thanks to the students that stepped up. The TAs and Profs were not helpful.
The exams are pretty much homework problems. I reviewed the homework covered in each exam and I did just fine. I took this class with DSA, and I ended up spending more time in this class on average, unlike the general consensus. Other swe-type folks might agree.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (3.6 / 5): ★★★★☆
Lecture Rating (1.4 / 5): ★☆☆☆☆
Difficulty (2.1 / 5):
Workload: 10 hours/week
Pros:
1. Homework and flipped classroom assignments are not difficult to finish.
2. Quite lenient grading system
3. Tutors and professor are active on Piazza
Cons:
1. Basically, all the assignments are "fill-in-the-holes" type, instead of learning how to implement things from scratch.
2. Very confusing instructions
3. The intervals between assignments are very short. You really have to make sure that you carve out some time every week or plan ahead.
Detailed Review:
It is not an "academic" course. You don't have to follow the lectures to be able to complete the assignments. It is a quite easy course as long as you plan everything ahead.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (5 / 5): ★★★★★
Lecture Rating (5 / 5): ★★★★★
Difficulty (0.7 / 5):
Workload: 2 hours/week
Pros:
1. Professor Wilke is very knowledgeable in the subject. He's quite active in the R scene and maintains a few open-source libraries
2. Professor Wilke is active on Piazza to answer our questions
3. The course material is excellent
Cons:
1. Content easy for those with prior experience in data manipulation and data visualization
2. All work is peer-graded. The course could use more rigor and better feedback
Detailed Review:
The professor is very knowledgeable and the course material he created is excellent. I highly recommend this course as the 1st course to take for those new to MSDSO.
That said, the course content is a bit on the easy-side for those who have experience in both data manipulation tool/library (say SQL or Pandas) and graph plotting library (say MATLAB, Matplotlib, or Plotly). You're basically applying the same concepts you already know into a R tidyverse + ggplot2 workflow. If you're good with reading code examples and library documentation, you could probably do all the coursework without watching any of the lecture videos (you should though, as the lectures give you plenty of insights).
Nonetheless, I think the level of difficulty is suitable for those who are new to such concepts. Professor Wilkes explained the concepts really well and this is how I would like to be taught if I could go back in time and learn again.
The mandatory participation turned Piazza into quite a bit of a mess full of useless comments. We have 300+ students enrolled in the course, we should not need mandatory participation for a lively Piazza. I think forced participation is doing more bad than good. Perhaps this could be taken into account in the next iteration of the course.
All the coursework is peer-graded so the comments are hit-or-miss. I get this is a 1000USD course so I don't expect all my homework to be marked by TAs, but surely we could for just one or two homeworks? The feedback as of now is a bit lacking.
So overall for me it was an easy A (I ended with like 99+%) but if I had known and had a choice (the MSDSO program is still "pick 10 from 10" as of Spring 2022, 1.5 years into the program I find this very disappointing), I probably would not have paid 1000USD to learn concepts I already know only in a different language/library.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (3.6 / 5): ★★★★☆
Lecture Rating (2.9 / 5): ★★★☆☆
Difficulty (5 / 5):
Workload: 18 hours/week
Pros:
1. The lecture describe the course usefulness in daily life
2. Many techniques exposed to student
Cons:
1. Programming is hard
Detailed Review:
Basically this course is count as math heavy because we implement complex mathematical formulation into python code. As a software engineer who has decent knowledge in Django, I find this course is hard. Maybe because I don't take ALA and ML class first before taking this course. I suggest if you want to take this course, you must strengthen your mathematical knowledge. The code mostly implement the complex math equation from lecture. There is a reason why this course is count as "Intermediate" and not "Introductory" by edX MCSO Central.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (3.6 / 5): ★★★★☆
Lecture Rating (3.6 / 5): ★★★★☆
Difficulty (2.9 / 5):
Workload: 20 hours/week
Pros:
1. Good explanations for image processing
2. Get to learn PyTorch
3. Fundamentals of Deep Learning (computer vision) taught well
Cons:
1. Little support for technical difficulties
2. Final project wasn't much fun nor very helpful in learning
3.
Detailed Review:
I enjoyed this class a lot. Only the final project was annoying, stressful and not a good learning experience, in my opinion.
Overall Rating (3.6 / 5): ★★★★☆
Professor Rating (2.9 / 5): ★★★☆☆
Lecture Rating (2.9 / 5): ★★★☆☆
Difficulty (2.1 / 5):
Workload: 10 hours/week
Pros:
1. The probability part is well structured and explained
2.
3.
Cons:
1. The statistics part is somewhat not well-organized
2. The TAs have been absent from Piazza for the majority of the semester.
3.
Detailed Review:
While most homework problems are straightforward, some probability problems can be a bit tricky.
Quizzes are generally easier than homework, but mid-term and final exams can pose a time management challenge, although they are not particularly difficult.
Although the professor carefully explains all the details, the lecture slides and handouts for the statistics section could benefit from better organization. Having information spread out over 5 or 6 different PDFs each week can be overwhelming.
class grade for my semester
A,A- 47%
B+,B,B- 33%
C+,C,C- 6%
D+,D,D- 2%
F 12%