Back to Mathematics for Machine Learning: PCA

4.0

1,128 ratings

•

233 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 SUJITH V

•Sep 28, 2018

This is a great course. It covers the topic in good amount of detail. I have enjoyed this course a lot and it also made me think deeper at a lot of places. I am motivated to go and do more work on related topics now.

By Jiaqi W

•Aug 13, 2018

Coding assignment is hard for people who are not familiar with numpy. Would appreciate some material at least going over the basis.

By Nguyen D P

•Oct 17, 2018

That's a great online courses can help people have enough background to break into Machine Learning or Data science

By Manuel I

•Jul 07, 2018

Overall the hardest of the specialization, a though one but great to make sense of all the maths learned so far.

By Timo K

•Apr 10, 2018

Not quite as good as the other two courses of the same specialization. Even though the instructor seems immensely knowledgeable he could work on delivering the material (which is more abstract than before to his credit) in a clearer manner.

The programming assignments are great albeit a bit hard to troubleshoot at times. All in all still a great course.

By sairavikanth t

•Apr 29, 2018

Lot of Math. Couldn't get proper intuition regarding PCA, was lost in understanding math equations

By Ananthesh J S

•Jun 16, 2018

The PCA derivation part requires more elaborate explanation so that we can understand the concept more intuitively.

By Clara M L

•May 01, 2018

Not as good as the other two courses but still very intuitive

By Cheng T Y

•Jul 08, 2018

good thing is it's trying to give you a sense of practically how to do it.downside is it's not really bridging to from maths to that practical sense in python (and the online jupyter notebook is terrible).the teaching staff is actually more responsive than the other 2 in the specialization.a bit more sided on python than maths though.

By Liang S

•Jul 09, 2018

Teaching pacing is good, and clear in explanation. It will be good if there are some examples about how we should apply all these theories to some real problems.

By Mark S

•Jul 07, 2018

Loved the course, although I wish there was more ramp up to some of the complex scenarios (or anything simple but new). Very helpful forums/community. Requires a fair amount of external reading/referencing for some of the concepts which seem to be covered only at a high level in the lectures.I would love to see more courses on applied mathematics for machine learning.

By Вернер А И

•Mar 18, 2018

Very tough course because of the programming assignments. Material was sometimes taught in a non-clear and deceiving way, e.g. covariance matrix of a dataset. Nevertheless, the course is good and covers lots of important details.

By Evgeny ( C

•Jul 25, 2018

It was a harder course where I spent double the time I have initially anticipated.

It is much harder than the two predecessor courses in specialization, and amount of direction when it comes to doing exercises is significantly smaller. More Python knowledge is required.

That said, I feel like I have finally understood the PCA and math behind it, which made it all worth it

By Jerome M

•Jul 26, 2018

The best of the 3 courses. This is a refresh course of course. A solid background in linear algebra is required in order to fully understand everything. I personnaly recommen the MIT course from Gilbert Strang before you try this one. The python exercises are very well designed and I can only be thankful to having shared this knowledge. Thank you Imperial College.

By kerryliu

•Jul 30, 2018

still have room for improvement since lots of stuffs can be discussed more in detail.

By Nelson F A

•Apr 25, 2019

This course brings together many of the concepts from the first two courses of the specialization. If you worked through them already, then this course is a must. There are some issues with the programming assignments and the lectures could do with some more practical examples. Be sure to check the discussions forums for help. For me they were essential to passing the course.

By Kwak T h

•Jul 27, 2019

Good but slightly less deeper than the other two

By Nikolay B

•Aug 03, 2019

Instructor gives the very dry but useful essence of the "philosophical" concepts of dot and generalized inner product, etc., - personally, liked that. Unfortunately, the offered problems are so far away from the delivered videos but the web search helps on getting the hints. This course makes you think - I learned a lot just by asking myself "what do they mean under this statement?", what they want in this task? Though I will appreciate if providers elaborate the material further and so instead of googling we spend our time watching - a single point access.

By Jessica P

•Aug 06, 2019

I agree with the others. Course didn't merge well with the 1st two which were perfect!

By Andrew D

•Jun 02, 2019

Very difficult course, make sure to do the prereq courses first and understand everything from those courses.

By Eddery L

•May 24, 2019

The instructor is great. HW setup sucks though.

By Giri G

•Jun 07, 2019

This was a very hard course for me. But I think the instructor has done the best possible he can with presenting and explaining the course

By Berkay E

•Aug 09, 2019

-Some of the contents are not clear.

+It gets great intuition for new learners in machine learning.

By João M G

•Aug 14, 2019

The course was great till the final week. The lectures did not explain very well the concepts and the assignment was poorly designed. It's a shame because I've loved the more rigorous way of this final course.

By Jordan V

•Aug 23, 2019

Course addresses important subject, but I worth like to have more in-depth explanation of the mathematics by the instructors and more examples.

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