Back to Mathematics for Machine Learning: PCA

4.0

1,188 ratings

•

253 reviews

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....

Jul 17, 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.

May 01, 2018

This course was definitely a bit more complex, not so much in assignments but in the core concepts handled, than the others in the specialisation. Overall, it was fun to do this course!

Filter by:

By Iurii S

•Mar 26, 2018

Decent explanations of PCA idea, but assignments do not provide a clear feedback of what is wrong with the implementation util you get it right.

By Nicholas K

•Apr 28, 2018

It's a shame. There's lots of good material and I learned a lot. But a staggering amount of time was wasted figuring out gaps in the instructions - portions felt more like hazing than teaching.

By Arnaud J

•Jun 12, 2018

This course is way more brutal than the two previous courses in the specializationIt is also very mathematically oriented, it lacks the graphics / animation / intuition that was given in the first two courses.However, if you make it, you indeed have a good understanding of PCA.

By Nigel H

•Apr 18, 2018

I want to give this course a higher rating but I was disappointed; the production standards are as high as ever but the assignments are a bit heavy on the Python. If you are inexperienced in coding Python you may be in trouble. This is not the case for the first two courses of this specialisation. If it is the maths that concerns you .. you are in safe hands. very well taught. Thanks

By Piotr G

•Apr 23, 2018

This course is overall good in terms of the accuracy and obvious deep knowledge of the tutor. However, after the first two modules of this course I expected a completely different approach with way more conceptual thinking than writing proofs and long derivations which can be found on Wikipedia and other websites. It seems to me that there is a clear mismatch between the styles of the first 2 modules and the 3rd course. I'm giving it only three stars because this is not what I expected, I signed up for this track to gain additional conceptual overview of how maths in many machine learning applications works on high level. On the other side though, the assignments and quizzes were harder in this course which is a big plus.

By Meraldo A

•May 08, 2018

The course content was good; however, it was not well explained at times.

By Philippe R

•May 16, 2018

Very mixed feelings about this course. First three weeks are OK, but going from week 3 to week 4 is like a HUGE step in difficulty if you really want to follow it all. Which is a pity because week 4 is the whole purpose for the course!

I learned "some" about the subject, but not to the level that I can say I understand it fully.

The assignments are OK, but the instructions are not always all that clear, leaving you at times wondering what is expected from you. And not that it is specific to this course, but the grader feedback is not all that helpful. If that is the only information you rely on to figure out where you may have gone wrong in a programming assignment, fixing your mistakes is likely to take quite some time.

All in all, an "OK" course, but not one that I would take again. I will most likely resort to other sources to get a better understanding of the subject.

By Chi W

•May 19, 2018

Really hard to be a fan of this course. The lectures are simply lists of formulas and theorems without few examples. And the quizzes must be made out by a Chinese, as its purpose is not testing how much you have understood the course but how careful you are instead and even if you have a powerful calculator. Hope the stuff can give us more examples and quizzes not so tricky.

By Jyh1003040

•Jul 09, 2018

Honestly this course is the one worthing attempting. However, last week's content is really messy and challenging.

By Ronny A

•Oct 15, 2018

The content is good. But there were Jupyter Notebook/Server problems. (i) Submit button on notebooks did not work. Posted about this and staff did not respond or help. Then I found a workaround and shared with others. (ii) The graded assignments could be run ok, but the optional ones could not run at all owing to server timeout/bandwidth problems.

By NEHAL J

•Apr 21, 2019

The course was highly challenging. I wish some of the explanations were detailed and the assignments had better instructions.

By Omoloro O

•Aug 07, 2019

Compared to the first two courses in this specialisation, this course was not very engaging. Additionally it was often hard to see what the end-goal was and the instructor seemed to be going deep into details without making the practical reasoning behind it clear. Furthermore, a lot of the exercises involved repetitions of tasks that can easily be done by computers.

By Ben H

•Aug 20, 2019

This course had a lot of potential, but unfortunately the pacing, structure, and teaching was not up to the standard of the other two courses in the specialisation. The teacher is clearly very knowledgable about his subject, and seems like a really nice person, but delivers the material in a very direct, formal mathematical style. This makes it much more difficult to gain intuitive insight into the subject matter.

Given the level of the past two courses, this felt like way too big a leap. Don't get me wrong — this course is still worthwhile, but could use some refining.

By Jean D D S

•Aug 31, 2019

I would ask the lecturer to go on more detail on the explanations and do (more) examples.

The lecturer tends to skip a few steps during calculations and demonstrations.

By Marina P

•Sep 06, 2019

The course is interesting, but some of the quizzes were not done very well. After the first 2 parts of this course, which were just amazing, this one seems kind of worse, although by itself its not that bad.

By Gurudu S R

•Sep 16, 2019

Tutor is not clear and concise on the concepts. Need more examples for Week 2 and Week 3.

By Hsueh-han W

•Sep 20, 2019

many steps are not clear enough that I have to spend a lot of additional time to figure out the details.

By Rafael C

•Sep 24, 2019

The Classes didn't give the knowledge to solve the assignments.

By Nont N

•Sep 25, 2019

I am a bit disappointed by this course. The professor didn't do much to help learner understand what's the meaning of the math we are looking at. Much of the quiz is just math grinding. The programming assignment require a lot of my effort in programming, but not much on math.

I'm not saying that this course is very bad, but Compare to the previous 2 course in the Math for ML specialization, provided by the same university, this one is obviously inferior.

By Rafael C

•Dec 07, 2019

definitely one of the most catastrophic courses I've ever taken on Coursera...

By Sean W

•Nov 25, 2019

Notebook extremely buggy

By Cécile L

•Apr 14, 2019

Amazing topic, great teachers and nice videos, but assignments can be slightly frustrating and some aspects (matrix calculus, derivatives, etc.) are really expedited... Still worth your time!!!

By Shuyu Z

•Oct 18, 2019

The videos and instructions for the assignment are not clear.

By Matan A

•Oct 20, 2019

The is a lot of gap from what the lecturer learn and what the assignments requires.

By Xin W

•Nov 12, 2019

To me, the first 3 weeks in this course is good. But the 4th week is quite confusing. And I don't understand the applicable meaning for the materials in the 4th week. I may need to review what I learned in the 4th week and then decide whether I understand it completely.

Coursera provides universal access to the world’s best education,
partnering with top universities and organizations to offer courses online.