Back to Mathematics for Machine Learning: PCA

4.0

739 ratings

•

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

By JS

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

By JV

•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:

145 Reviews

By Lia Lagona

•May 22, 2019

This was really difficoult, but I'm so proud for the completion of the course.

By Vibhutesh Kumar Singh

•May 18, 2019

This course is really bad and extremely hard to follow. Previous two courses were executed very well, teaching quality in this is poor.

By Gergo Gomori

•May 15, 2019

This course is really challenging. A strong mathematical background is necessary or it needs to be developed during the lectures and self-study. The professor's explanations are clear, and still lead to complex ideas which is great. Programming assignments are also difficult, however they serve as a superb opportunity to develop your skills in Python.

By Jafed Encinas

•May 14, 2019

Able to concentrate and stay focused for periods of several hours, even when tasks are relatively mundane, and doesn't make mistakes. He has a high boredom threshold. Always assured and confident in demeanour and presentation of ideas without being aggressively over-confident. No absences without valid reason in 6 months. Reaches a decision rapidly after taking account of all likely outcomes and estimating the route most likely to bring success. The decisions almost always turn out to be good ones.

This Course always completes any assignment on time and to a high standard. This Course has outstanding artistic or craft skills, bringing creativity and originality to the task. Aiming for a top job in the organization. He sets very high standards, aware that this will bring attention and promotion. This Course pays great attention to detail. He always presented work properly checked and completely free of error.

By 任杰文

•May 13, 2019

It's great, interesting and helpful.

By João Carlos Lima Selva

•May 02, 2019

It is a good course but some problems must be reported. Despite the previous courses from the specialization, I missed the conceptual explanations, the development of intuitive understanding. The support is almost inexistent: questions on forums are not answered by lecturers or mentors, some programming exercises requires knowledge not even mentioned on classes and I feel it is a non necessary knowledge at all to the purpose of the course. Some tutorials would help. Only other students make things clearer at some points. Some lectures have "magic passes" not explained, specially on PCA subject itself, week 4. Maybe the courser could have a additional week to teach things in a better way.

By Maximilian Warner

•Apr 29, 2019

The first two courses in the Mathematics for Machine Learning specialisation are excellent - even amongst the best online or traditional maths courses I have taken. This course was seriously lacking. Not in content, or even the ability of the lecturer, but rather in how the information is conveyed. There are some excellent reviews which elaborate further in to the problems with this course, so I will not labour over them all. In essence, if you are learning in your own free time, the poorer information transfer is not appreciated.

However, this course is important, but if you are unsure of whether or not to invest your time into starting this course (now) , I think the following questions are good to ask. Are you:

1) fairly competent in maths, at least significantly beyond the first two courses. This is not because the underlying maths is hard, but the way the information is conveyed, will require more firm knowledge, or, are you:

2) willing to be frustrated, and grab additional resources. You need to be patient to get the most out of this course. The previous courses were great at guiding, and in large part spoon feeding. This course is different, and you have to be happy with that.

3) proficient at numpy and python. I would invest time before the course working on basic numpy skills, as this will make the assignments much easier, and allow you to focus on implementation of learning rather than debugging, and pulling out of hair.

The two star review is because this course didn't provide the high quality expected from the first courses, however the content and end learning result can not be questioned as poor.

By Chris Mad

•Apr 27, 2019

Unfortunately this course does is of much lower quality than the previous courses of the specialization. There is no progression towards the assignments which basically ask you to implement something without any context. There was even a technical issue with the grader for the first assignment.

If you want to complete it to finish the specialization, you need to seek help in the forums as there are a lot of helpful answers.

By Eric Plue

•Apr 26, 2019

There is little reason to take this course except for gaining the satisfaction of completing the three courses in the series. There are briefer, more satisfying introductions to PCA elsewhere. This course has too little of what made the other courses in the series so good and shares too much of their shortcomings. Where the other two courses excelled in demonstrating an intuitive understanding of both the maths and their applications, this course really avoids all effort at intuition or examples and instead just throws formula after formula at you. You are then given programming assignments where at least half the effort is to try to understand what is being asked before you start to work to implement it. This leaves you more with a feeling of only having completed assignments and less a sense that you’ve developed a capability in either the maths or their applications. In the end, I am left with a strong desire to learn more about the maths of PCA and their application only because I am eager to hear the subject matter explained by someone else.

The other two courses demonstrated the potential of how good e-learning can be. This course is just another example of its shortcomings.

By Nelson Fleig Aponte

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

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