Back to Mathematics for Machine Learning: PCA

4.0

stars

1,936 ratings

•

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

Jun 19, 2020

Relatively tougher than previous two courses in the specialization. I'd suggest giving more time and being patient in pursuit of completing this course and understanding the concepts involved.

Filter by:

By Loc N

•Jan 14, 2020

This course feels like a spin-off from the previous two courses in the series. The materials are repeated and feels conflicting with the foundations set by the previous courses. A lot of the times, the assignment are not difficult in execution, but are unclear in requirements, making the process confusing instead of intellectually fulfilling - even after having solved the assignments.

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 Rhea G

•Jun 28, 2020

The mathematics were very well explained and I could understand almost all of it by just watching the videos and completing quizzes. However, I think the programming assignments require more experience with using Python and just coding in general, because I had to put in far more effort to figure out what I needed to do, compared to the other two courses in this specialisation.

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 Prashant D

•Feb 17, 2019

The lecturer is good and probably has a very good understanding of the mathematics. However if you are looking for a light and easy course, then this one is not for you. The mathematics is sometimes difficult to follow and although the lecturer patiently explains the derivation of the results, I had to go back and forth a number of times to understand what was happening.

By francesc b

•Jun 02, 2018

I found hard to follow the mathematical proofs, and without a clear step by step formula sheet the last assignment was very hard. All in all I found the course very useful, although I would have liked more intuitive comprehension rather than deep mathematical comprehension. The previous two courses I think matched the balance. Potentially this was not possible for PCA?

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 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 Dyachkov D

•May 04, 2020

Very bad course. The content of any video don't correspond to tasks, assignments. Questions are formulated badly, I could not understand anything. Estimated time is wrong, it takes much longer to understand at least something. Programming assignments are crazy.Worst course in this specialization. No offence to teacher, but this tasks are

By LOS

•Nov 07, 2019

Classers are good. However, the exercise platform is full of bugs. Notebook keeps disconnecting, making it unable to save the latest changes. The automatic grader requires a very specific implementation in the last notebook, which is not mentioned anywhere and can you make lose hours debugging an implementation that is otherwise correct.

By Jim A

•Apr 15, 2020

The course should be longer and build a stronger foundation in order for the assignments to not feel disconnected from the instruction. There was a large amount of redundancy from previous courses. The PCA instruction from week 4 needs more development/insight. Great specialization overall. Part 3 needs more work though.

By Toan T L

•Oct 03, 2018

Thank you to all the professors and staffs for such a wonderful program. I did learn a lot.

This last course is indeed a fun and challenging one. But it fells short compared to the other two due to some aspects which can be improved in the future.

Nevertheless, I'm glad that I can learn about PCA.

By Ankit C

•Apr 19, 2020

The course contents were good, but I felt the explanation was not so clear. Since PCA is a very important topic in Machine Learning, after explaining some new concept, the instructor could've solved a couple of examples with it, so that the newly registered concepts would be crystal clear.

By Gautam K

•Jun 24, 2020

Course content is very awesome. The instructor also teaches in a very splendid manner which makes it very easily understandable. But the evaluation method for practice exercise is very worse. Code get stuck for hours. It's been very frustrating waiting for code to get compiled.

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 Philipp A R

•Mar 06, 2020

A lot of input in relatively short time, main points could be pointed out better in the videos. Assignments were tough but manageable, the instructions could be clearer and more detailed. However, being pushed to figure out things by yourself is also a learning opportunity.

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.

By Manju S

•Jan 29, 2019

Good stuff:

Instructor has good knowledge of the subject. The course content structure is designed well.

Bad stuff:

Concepts could have been presented with more clarity. Programming assignments need more instructions and less assumption on what the students already know.

By Gabriel C

•Apr 24, 2020

Quality of the course is great, but I would question whether it belongs in this specialization given the huge jump in expected knowledge from the first two courses to this one. Relied alot on the forums and YouTube to gain sufficient knowledge to complete this course.

By Hong L

•Apr 27, 2020

The content is decent but there are some bugs in the programming assignments. Particularly the last two programming assignments. The auto-grader for the second to the last assignment passes in some input that is not of the correct form.

By V K

•Jul 23, 2020

The course content was very good,but the assignments were harder as knowledge of python libraries was required. It would be very helpful if you change the assignments as I feel the course should rather be about math than python

By Pierre

•Apr 10, 2020

Positive points: At the end of the module, you get a good understanding on how PCA works. It fulfill its objective.

Negative points: The assignements are poorly directed, the material is not always clearly explained.

By Alexander Z

•Sep 14, 2018

Good Course, but

Too less examples to do the quizes on the first run.

Programming assignments are not clearly stated, so you need unnecessary much time to succeed.

I liked the Linear Algebra & Multivariate Modul more!

By devansh v

•Apr 03, 2020

The course is Satisfactory.The content is Good,no doubt about it,but many topics(both mathematical and computational) were unknown and coding assignments of Jupyter notebooks of this course(PCA) are very Buggy

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.

- AI for Everyone
- Introduction to TensorFlow
- Neural Networks and Deep Learning
- Algorithms, Part 1
- Algorithms, Part 2
- Machine Learning
- Machine Learning with Python
- Machine Learning Using Sas Viya
- R Programming
- Intro to Programming with Matlab
- Data Analysis with Python
- AWS Fundamentals: Going Cloud Native
- Google Cloud Platform Fundamentals
- Site Reliability Engineering
- Speak English Professionally
- The Science of Well Being
- Learning How to Learn
- Financial Markets
- Hypothesis Testing in Public Health
- Foundations of Everyday Leadership

- Deep Learning
- Python for Everybody
- Data Science
- Applied Data Science with Python
- Business Foundations
- Architecting with Google Cloud Platform
- Data Engineering on Google Cloud Platform
- Excel to MySQL
- Advanced Machine Learning
- Mathematics for Machine Learning
- Self-Driving Cars
- Blockchain Revolution for the Enterprise
- Business Analytics
- Excel Skills for Business
- Digital Marketing
- Statistical Analysis with R for Public Health
- Fundamentals of Immunology
- Anatomy
- Managing Innovation and Design Thinking
- Foundations of Positive Psychology