Chevron Left
Back to Mathematics for Machine Learning: PCA

Learner Reviews & Feedback for Mathematics for Machine Learning: PCA by Imperial College London

4.0
stars
3,098 ratings

About the Course

This intermediate-level course introduces the mathematical foundations to derive Principal Component Analysis (PCA), a fundamental dimensionality reduction technique. We'll cover some basic statistics of data sets, such as mean values and variances, we'll compute distances and angles between vectors using inner products and derive orthogonal projections of data onto lower-dimensional subspaces. Using all these tools, we'll then derive PCA as a method that minimizes the average squared reconstruction error between data points and their reconstruction. At the end of this course, you'll be familiar with important mathematical concepts and you can implement PCA all by yourself. If you’re struggling, you'll find a set of jupyter notebooks that will allow you to explore properties of the techniques and walk you through what you need to do to get on track. If you are already an expert, this course may refresh some of your knowledge. The lectures, examples and exercises require: 1. Some ability of abstract thinking 2. Good background in linear algebra (e.g., matrix and vector algebra, linear independence, basis) 3. Basic background in multivariate calculus (e.g., partial derivatives, basic optimization) 4. Basic knowledge in python programming and numpy Disclaimer: This course is substantially more abstract and requires more programming than the other two courses of the specialization. However, this type of abstract thinking, algebraic manipulation and programming is necessary if you want to understand and develop machine learning algorithms....

Top reviews

WS

Jul 6, 2021

Now i feel confident about pursuing machine learning courses in the future as I have learned most of the mathematics which will be helpful in building the base for machine learning, data science.

JS

Jul 16, 2018

This is one hell of an inspiring course that demystified the difficult concepts and math behind PCA. Excellent instructors in imparting the these knowledge with easy-to-understand illustrations.

Filter by:

651 - 675 of 773 Reviews for Mathematics for Machine Learning: PCA

By Muhammad Z

•

Mar 23, 2023

it's harder then i tough

By Sean W

•

Nov 25, 2019

Notebook extremely buggy

By Felipe R

•

Aug 20, 2021

No clear explanations

By Felipe M

•

Jul 26, 2020

It is a shame that this course isn't taught in a favorable way, as the content it has is very interesting and valuable. I found that the instructor lacked the enthusiasm that David Dye and Sam Cooper had in the previous courses, which obviously doesn't change the content of the course but definitely makes the learning experience worse. The lectures were also quite fast-paced and not very clear, I feel that this course should have been longer as when it was time to do the graded assignments, I had very little intuitive understanding of the concepts learned. The programming assignments were also the worse of the three courses; this is a combination of what I believe to be an issue with Coursera's online programming environment and the assignments themselves. The assignments were poorly explained and usually involved skills that were not even presented in lectures, which meant that unfortunately I had to rely heavily on books from the internet and assistance from fellow peers in the forums. Apart from requiring skills that were not taught, the Jupyter Notebook was unorganized in the sense that I felt unclear about where I should edit, where I should not. The programming assignments with the previous courses in this specialization were done in a much better way, guiding us to the solution while still demanding creativity and insight into the concepts, while the ones in PCA were messy. This is really sad as this is the most programming-heavy course. Overall I am quite disappointed with this course, it is a frustrating way to end this specialization with the two amazing previous courses.

By Pedro L

•

Apr 25, 2020

Having taken the other two courses for this specialization, a certain standard was defined and expected. The other two courses had solid basis explained by the professors, and the assignments reflected well from the lessons showing a lineal progression to adequate difficulty.

In this course unfortunately it is not the case, the maths and basis are explained well enough, with extra lectures and side investigations needed from the user side in order to fully understand each lecture, and then the assignments. Don't expect immediate response form mentors nor teaching staff, and neither a well thought difficulty progression. The assignments done by hand and examples taught during lectures DO NOT reflect the difficulty level on programming assignments because it is expected you already have previous experience with python (which is rather frustrating as I took this course expecting to be entry level only on this language).

TL;DR: Take the first two courses if you wanna strengthen your basis, but the last course is not recommended

By Jim F

•

Apr 12, 2021

This course on PCA did not live up to my expectation from the previous two courses in the specialization. The first two courses were clearly designed to fit together, but this third course felt like it hadn't been designed to fit into this specialization. It covered material that had already been covered, and assumed other knowledge that hadn't been covered.

The teaching style was also very different: the teacher spent almost no time developing intuition with graphs or motivation with real-world problems, and instead nearly all the time was devoted to algebraic derivations. (Weirdly, the end of the final week did cover some of this; it should instead have been at the start!)

A full 25% of the course was on the abstract notion of "inner products", which was not even necessary to understand PCA. We just used the dot product.

IMO, PCA should not be its own course; it could be condensed to one or two weeks in the other courses. A much more useful third course for ML would be a Probability/Statistics primer.

By Abhishek J

•

Jul 30, 2020

Poor programming assignments, lots of error. Also, the teaching staff has to pull their socks up. No intuition behind anything, only throwing formulas one after the other. I must say if this is the stuff Coursera has to offer then it's not far that other online platforms will take over. No offense but I sincerely request the instructor to improve his teaching skills, as this kind will take him nowhere. It might sound harsh but it's the reality. Nevertheless, I learned something new which will hopefully help in my future, and for that, I will like to thanks the whole teaching staff. I hope you all continue this great initiative, provide quality content, and make learning as easy and affordable as possible. I Will be looking forward to more courses from your side but this time, please come up with new and exciting ways to explain mathematical stuff. Once again Kudos to the teachers and all the students who completed the course!!

By Tuan Q N

•

Feb 16, 2021

This was a very disappointing module compared to the first two modules; I've taken many online courses over the years but this is by far the worst one. The third instructor who leads this module was boring and would work through his examples without explaining how he gets from one step to another. Programming assignments came with very few instructions and would be very difficult for someone with little Python experience (luckily the solutions are out there). The forums are mostly full of months-old posts from people asking for help and getting absolutely no responses from the teachers or moderators. The most active thread was actually just a bunch of people complaining about this course and the instructor. I started a thread because I wanted to know how to solve a problem (I wasn't asking for the answer!) and it was deleted with no explanation.

By Erik P

•

Feb 12, 2020

The first two courses in this series are excellent. However, this third course is taught by a new teacher and this introduces a remarkable drop in quality.

There are of cause different styles of teaching. However, as a minimum a teacher should strive towards conveing to students the importance of the subject at hand and the intuition behind it. However, this teacher settles for monotonously writing out formulas and definitions that can simply be read in the course formula PDF. Thus, watching the videos becomes a waste of time. In turn, this makes it harder to complete quizzes and assignments since one first has to go searching the internet for web pages that actually explain rather than simply state formulas that one needs to combine and apply in order to solve the assignments.

By Jonathan M

•

Jan 23, 2021

I struggle to understand the thought process behind the course structure in this specialization. The first two courses are very surface level when it comes to the mathematics, which I do not think is a bad thing. However, it seems this last course tries to jam fundamental, and challenging, mathematics into the simplified format of the other two courses. From the comments section, I do not believe I am the only one who thinks this way. Wouldn't it be better to just extend the duration of this last course and make it a challenging, but thorough, introduction to the topics? The former without the latter is just painful.

By Nicholas T

•

Aug 31, 2020

I found this course to be rather lacking in what it lists as pre-requisites. I found the need to take a course on numpy while I took this course. Also, I'm just confused as to why this is part 3 of the specialization. Why not do a section on probability/stats to prepare for machine learning? I like all the professors, but there's only so much you're going to learn. I found I needed to constantly use the resources, and they are good, but the resources were better than the assignments and instruction, so... I would suggest saving your money.

By noel s

•

Jul 22, 2020

The intermediate level of this course is accurate, but mainly because of the course's structure. In my opinion this course should not be a part of the specialization as the PCA is already covered in the first two courses. Although this third class is more (and almost only) about the maths I found it confusing in relation with the previous course and their explanation of PCA. Programming assignments are difficult and help the student to think by itself, however they are buggy which may take away the struggling student motivation.

By Brian G

•

Mar 12, 2021

The weakest of the series of 3 in the Mathematics for Machine Learning Specialization. The course videos did not explain the material well enough and referenced significant amount of external reading sources. The videos are full of jargons without taking the time to properly explain them or help the learner develop intuitions. I walked away with a very muddled understanding of PCA even though I was able to complete all quiz and exercises. I recommend a revision to this course so this important topic can be taught better.

By Sagar L

•

Mar 21, 2020

Although the topics and lecturer's delivery were nice, but as compared to the two previous courses of the specialization, this one doesn't fare well. The content in the video lessons and that in the notebook were not really planned well in terms of scope. A participant who isn't already familiar with these concepts, would struggle a lot. Only if the reading material, video content and notebook assignments were designed keeping that in mind, it would have been better. Apart from that it was a good course.

By Vitali Z

•

Aug 22, 2020

Slow notebooks, bad explanations, unclear what to do in the notebooks.

I don't know why i spent so much time to finish the course- maybe because of my perfectionism didn't let me stop trying.

I guess the matter itself is good, but:

1. you probably got to re-record all the videos a little more bit by bit with more examples

2. fix the slow notebooks

3. more assertions for each function instead of for the whole thing in the notebooks

4. more detailed explanations what we are even doing there

By Toby T

•

Jul 14, 2019

If you like traditional lectures, which you go into a math class then feel puzzled, then go for it. Otherwise, the contents of this course are simply going through the mathematics equations and definitions, which can easily be found in textbooks. Ironically, the previous two courses in this specialization used lots of graphics and animations to help you understand the maths (either in terms of equation-wise or intuitively), this course completely lacks this element.

By Mark C

•

Jul 30, 2018

Only on week 1 but this is already a disappointment compared to the first two classes in the Math for ML series which were excellent. Some content is presented too fast. Quiz questions are ambiguous. I already paid for the class so I will finish the content but not worry about passing quizzes and assignments. Had I known it would be like this I wouldn't have paid for it. Check out the other reviews and forum discussions to see what others think.

By Max B

•

Aug 14, 2019

Pretty bad all around.

The teacher keeps throwing formulas without taking the time to explain why they are useful, and what they represent.

The first two courses were really good, and this one is a bummer.

Most of what I learned was learned elsewhere, the course acted as a detailed syllabus with some practice quiz (of relatively poor quality).

It's still worth taking if you completed the first two courses and want the specialization certification.

By Nouran G

•

Oct 11, 2018

Course is inconsiderate to new learners in that new concepts were very sloppily introduced. Like the first two courses of the specialization, this course is shallow, shouldn't be anyone's introduction to the subject and is a refresher at best. Unlike the other two courses, it assumes python knowledge, doesn't explain relevant syntax in the assignments; which made me take a lot of long unnecessary detours to get the python implementation right.

By Marvin P

•

Apr 24, 2018

After the other two awesome courses of the specialization this one stays far behind my expectations. Weakest course of the specialization. Instructor is obviously knowledgeable but does not provide much intuition. Programming assignments are really difficult and at many points frustrating. 2 more weeks and therefore comprehensive instructions would be desirable. Couldn't appreciate that course as much as I wanted to.

By Michael D

•

Jul 22, 2019

After having done the first two parts of the specialization, I am afraid this one didn't stand up to the high quality bar the previous two had set. The programming assignments are unnecessarily long and complex and the overall material is not as engaging, connected and concise. I might give it a good rating as a standalone but now I can't avoid comparing it to the other two parts of the specialization.

By Ricardo F

•

Mar 4, 2021

This course is a great departure from the premise of bringing Mathematics and ML together. The instructor basically throws dozens of calculations, Math for the sake of Math. No intuition is gained, either. The instructor is only preoccupied with writing down the calculations. You either "swallow" all the Algebra or not. I'd suggest the complete reformulation of the videos.

By Dan A

•

May 9, 2020

Compared to the first modules in this series, the instructor explains almost none of the intuitions behind the maths and will skip over large essential pieces required to complete assignments and quizzes. It assumes a wide knowledge of programming and broader maths that was handled significantly better in the earlier courses.

By Tran P N

•

Feb 11, 2021

The explanation of the course is hard to understand. Some misunderstanding. I have to study on youtube or somewhere to pass this course. The videos in the course are lack information. 2 stars because of the PCA assignment helping 1 plus star for the course. The two courses previous in this specialization are good.

By Muhammad F I

•

Mar 25, 2022

I think there's a big gap between the material in the video and the assignment even though the professor explains great details of the topic, but lack of explanation to strenghten the material he just covered. moreover, the assignments have no clear instruction and sometimes there're some mistakes