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,045 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:

376 - 400 of 758 Reviews for Mathematics for Machine Learning: PCA

By Insyiraah O A

•

Mar 26, 2022

GREAT

By Mellania P S

•

Mar 23, 2021

great

By Indah D S

•

Mar 9, 2021

great

By Md. R Q S

•

Aug 21, 2020

great

By Data I M

•

May 11, 2023

nope

By Marsella D U

•

Mar 28, 2023

nice

By Fitrah S

•

Mar 20, 2023

cool

By Faisal A M

•

Apr 10, 2022

good

By Doni S

•

Mar 27, 2022

Good

By Suci A S

•

Jun 20, 2021

GOOD

By Agung W

•

Mar 28, 2021

nice

By Ahmad H N

•

Mar 20, 2021

Good

By GEETHA P

•

Jul 28, 2020

good

By RAGHUVEER S D

•

Jul 25, 2020

good

By Harsh D

•

Jun 28, 2018

good

By Amini D P S

•

Mar 27, 2022

wow

By mochammad g r

•

Mar 25, 2021

@.@

By Roberto

•

Mar 26, 2021

gg

By ahmed b

•

Apr 15, 2021

a

By Sherlock H (

•

Aug 23, 2020

I want to make this more of a guideline rather than a direct catch & read Review because of the nature of this course. But first, congratulations to all who have managed to pass this course. Now the big discussion. If you have taken the enrollment prior to the other courses under the specialization, then you have several decisions to make. First of all, this course requires HIGH PATIENCE & good HOMEWORK times. This course is also HIGH on programming. So, if you are not familiar with Numpy, then you have to put more PATIENCE than before. Thereby, if you are a newbie in Numpy & up for the challenge to learn the steps & then implement on the code, you should consider enrolling in this course. Those who lack in PATIENCE & code-correcting scenarios, should not enroll in this. I am not going to rate this course (although, without putting stars I cannot submit this writing). Why? This is a 5-star course if you judge the difficulty & advanced topics covered throughout. This is a 4-star course if you seem to find your linear algebra knowledge start to tumble sometimes & the coding assignments are up for the game with lack of clarity. This is a 3-star course because of the Instructor's approach to explaining the abstractness of the higher dimensions. If you go more abstract in already more abstract things, that is more like adding salt to the wound. This is a 2-star course if you all on a sudden realize that the entire knowledgebase around Linear Algebra is falling apart & (AND) the coding assignments are feeling like a living mystery, especially the instructions may sound more confusing. This course is not a 1-star & if anyone rates it a 1-star that is because he/she is a sore loser. Nothing goes without effort. The whole team definitely put effort to cover the complexity and balance in between. But they weren't quite successful. If you up for a challenge, you are welcome to get into it. If you are hesitant, have some ice-cream & try later. Thanks.

By ErtuÄŸrul G

•

Jun 7, 2020

The overall experience was very good. I have enjoyed all the math in videos and PCA derivation throughout the course. The course a bit harder than the previous ones in the specialization. However after some effort one can understand the points that is not taught thoroughly. Only downside of the course is the programming environment. I have attended different courses that are also using Jupyter notebooks on Coursera and they were flawless. Here we have, some cells do run forever, a grader behaving inconsistently and one week that has some steps completely against the general software engineering principles. By the way discussion forums are so helpful and make me understand some math concepts on the way. I recommend the course to people who want to improve their understanding of math before deep diving machine learning courses.

By Niju M N

•

Apr 9, 2020

This is the final course in the Specialization, that focuses on Principal component Analysis.This course is a bit hard compared to the other two courses in specialization. This builds on the topics explained in the other two courses.The Instructor tries to squeeze the concepts in the limited time.Not all materials are completely explained in the video, however, students can refer to other materials available in the web/ Refer the course forums and get the concepts and use them to solve the Quizzes. Some times the Assignments and quizzes are frustrating , however they do a good job of reinforcing the ideas taught in the video. Totally this is a good time spent .

By John C B

•

Jul 19, 2021

The lectures and readings are very good, but the programming assignments are buggy and frustrating. It's hard to suggest improvements, as I think some of this material is just quite hard to assess in a moocs format. You might get some value from the free textbook "Mathematics for Machine Learning" by Marc Deisenroth, who is also the instructor for this course. You can learn a lot from him, even if the assignments are less useful than hoped.

By the way, don't worry if you lack programming experience. There's not much in the way of actual Python programming, as numpy functions already exist for pretty much everything you need to do.

By Vassiliy T

•

Jul 10, 2018

it is good, challenging course. i've learned a lot, but feel that i came away with quite patchy knowledge. This course is a big step up in complexity and delivery form the previous two courses. perhaps my expectations were not right to start with - one cannot learn this level of complexity so quickly. Admittedly there are many gaps between the lectures and course materials and what is asked in programming assignments. i ended up reading a lot online to fill in the gaps (i've learned a lot of python during the course, which is great!).nevertheless, after this course i feel equipped to continue with machine learning.

By Matteo L

•

Apr 20, 2020

I think this course is slightly underrated at the moment. The topic is not an easy one and I thought the teacher did a great job of explaining it as clearly as possible using an appropriate amount of mathematical derivation.

I really thought the last week of the course was great, especially considering that everything we had seen so far in the specialization was used to develop the PCA algorithm. It's quite amazing how topics such as eigenvectors, projections and optimization all come together here.

I think the notebooks were quite challenging compared to the previous two courses with is definitely a plus!