Back to Mathematics for Machine Learning: PCA

4.0

stars

2,216 ratings

•

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

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.

NS

Jun 18, 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 Abhishek J

•Jul 30, 2020

Poor programming assignments, lots of error. Also, the teaching staff has to pull their socks up. No intuition behind anything, only throwing formulas one after the other. I must say if this is the stuff Coursera has to offer then it's not far that other online platforms will take over. No offense but I sincerely request the instructor to improve his teaching skills, as this kind will take him nowhere. It might sound harsh but it's the reality. Nevertheless, I learned something new which will hopefully help in my future, and for that, I will like to thanks the whole teaching staff. I hope you all continue this great initiative, provide quality content, and make learning as easy and affordable as possible. I Will be looking forward to more courses from your side but this time, please come up with new and exciting ways to explain mathematical stuff. Once again Kudos to the teachers and all the students who completed the course!!

By Erik P

•Feb 12, 2020

The first two courses in this series are excellent. However, this third course is taught by a new teacher and this introduces a remarkable drop in quality.

There are of cause different styles of teaching. However, as a minimum a teacher should strive towards conveing to students the importance of the subject at hand and the intuition behind it. However, this teacher settles for monotonously writing out formulas and definitions that can simply be read in the course formula PDF. Thus, watching the videos becomes a waste of time. In turn, this makes it harder to complete quizzes and assignments since one first has to go searching the internet for web pages that actually explain rather than simply state formulas that one needs to combine and apply in order to solve the assignments.

By Nicholas T

•Aug 31, 2020

I found this course to be rather lacking in what it lists as pre-requisites. I found the need to take a course on numpy while I took this course. Also, I'm just confused as to why this is part 3 of the specialization. Why not do a section on probability/stats to prepare for machine learning? I like all the professors, but there's only so much you're going to learn. I found I needed to constantly use the resources, and they are good, but the resources were better than the assignments and instruction, so... I would suggest saving your money.

By noel s

•Jul 22, 2020

The intermediate level of this course is accurate, but mainly because of the course's structure. In my opinion this course should not be a part of the specialization as the PCA is already covered in the first two courses. Although this third class is more (and almost only) about the maths I found it confusing in relation with the previous course and their explanation of PCA. Programming assignments are difficult and help the student to think by itself, however they are buggy which may take away the struggling student motivation.

By Mohammad O B S

•Aug 22, 2020

Relative to the first two courses, this one unforutanately focused a lot less on building the intuition and more on proofs and theorems. The instructor did not offer insight into the "why" and "how" of projections and it was left on us to figure out how to connect eigenvectors and projections to derive PCA. The instructor also offered zero insight into the inner products properties. Big thanks to Susan Huang for explaining so many challenging and theoretical concepts on discussion forums in such beautiful detail.

By Sagar L

•Mar 21, 2020

Although the topics and lecturer's delivery were nice, but as compared to the two previous courses of the specialization, this one doesn't fare well. The content in the video lessons and that in the notebook were not really planned well in terms of scope. A participant who isn't already familiar with these concepts, would struggle a lot. Only if the reading material, video content and notebook assignments were designed keeping that in mind, it would have been better. Apart from that it was a good course.

By Vitali Z

•Aug 22, 2020

Slow notebooks, bad explanations, unclear what to do in the notebooks.

I don't know why i spent so much time to finish the course- maybe because of my perfectionism didn't let me stop trying.

I guess the matter itself is good, but:

1. you probably got to re-record all the videos a little more bit by bit with more examples

2. fix the slow notebooks

3. more assertions for each function instead of for the whole thing in the notebooks

4. more detailed explanations what we are even doing there

By Tobias T

•Jul 14, 2019

If you like traditional lectures, which you go into a math class then feel puzzled, then go for it. Otherwise, the contents of this course are simply going through the mathematics equations and definitions, which can easily be found in textbooks. Ironically, the previous two courses in this specialization used lots of graphics and animations to help you understand the maths (either in terms of equation-wise or intuitively), this course completely lacks this element.

By Mark C

•Jul 30, 2018

Only on week 1 but this is already a disappointment compared to the first two classes in the Math for ML series which were excellent. Some content is presented too fast. Quiz questions are ambiguous. I already paid for the class so I will finish the content but not worry about passing quizzes and assignments. Had I known it would be like this I wouldn't have paid for it. Check out the other reviews and forum discussions to see what others think.

By Max B

•Aug 14, 2019

Pretty bad all around.

The teacher keeps throwing formulas without taking the time to explain why they are useful, and what they represent.

The first two courses were really good, and this one is a bummer.

Most of what I learned was learned elsewhere, the course acted as a detailed syllabus with some practice quiz (of relatively poor quality).

It's still worth taking if you completed the first two courses and want the specialization certification.

By Nouran G

•Oct 11, 2018

Course is inconsiderate to new learners in that new concepts were very sloppily introduced. Like the first two courses of the specialization, this course is shallow, shouldn't be anyone's introduction to the subject and is a refresher at best. Unlike the other two courses, it assumes python knowledge, doesn't explain relevant syntax in the assignments; which made me take a lot of long unnecessary detours to get the python implementation right.

By Marvin P

•Apr 24, 2018

After the other two awesome courses of the specialization this one stays far behind my expectations. Weakest course of the specialization. Instructor is obviously knowledgeable but does not provide much intuition. Programming assignments are really difficult and at many points frustrating. 2 more weeks and therefore comprehensive instructions would be desirable. Couldn't appreciate that course as much as I wanted to.

By Michalis D

•Jul 22, 2019

After having done the first two parts of the specialization, I am afraid this one didn't stand up to the high quality bar the previous two had set. The programming assignments are unnecessarily long and complex and the overall material is not as engaging, connected and concise. I might give it a good rating as a standalone but now I can't avoid comparing it to the other two parts of the specialization.

By Colin H

•Oct 2, 2020

Course material good but programming exercises are poorly designed and cause a lot of problems - even when you have understood the material very well. So unfortunately part of the assessment is your ability to sort out the problems from a poorly designed exercise rather than reinforce what you have been learning.

Fix the programming exercises and the course could be very good.

By Daniel A

•May 9, 2020

Compared to the first modules in this series, the instructor explains almost none of the intuitions behind the maths and will skip over large essential pieces required to complete assignments and quizzes. It assumes a wide knowledge of programming and broader maths that was handled significantly better in the earlier courses.

By Daniel U

•Sep 27, 2018

Programming assignments seemed to be written from a completely different direction, and instructions are vague and misleading. (The math assignments were not so bad.) There was no staff or mrntor engagement in the forums during the period of the course.

By amit s

•Feb 8, 2019

Unlike the prior courses in the series, topics not clearly explained and brought too sudden. Also none of calculations shown completely, instructor just wrote results in the end. Due to all these reason I was not able to finish the course.

By Kevin L

•Sep 11, 2018

The course assignments could be improved dramatically, though the course itself has very good content if you want to have a taste of how linear algebra (predominantly) can be implemented to solve machine learning problems.

By shashank s

•Feb 17, 2020

First two courses in this series are great but not this one. Lectures and exercises are not related. I do not feel like I have totally understood PCA. Was able to complete the final assignment thanks to the internet.

By Bohdan K V

•Aug 13, 2020

The course is awful, it's nothing compare to previous 2 courses. It has a lot of errors in assignments objectives and quizzes! The explanation is complete crap! I'm wondering how was it even allowed on Coursera?!

By Ivo R

•Nov 16, 2019

The theory is well explained and the level of complexity is very similar to a University course, but the assignment environment is buggy and the assignments are poorly designed and very frustrating.

By raghu c b

•Apr 4, 2020

Needs to demo a little bit of code owing to the complexity of the course content.Lectures gives just a high level understanding only. Assignments are taking far more complicated than expected.

By Paulo H S G

•Nov 27, 2020

Even though the videos and quizzes are well produced and informative, the assignments are so poorly designed that they can only bring about some frustration with the learning process.

By Anjali s

•Aug 23, 2020

Faced a lot of problems in exercises. Don't feel that i have completely understood the concepts. This course can be made more learner friendly with better explanations.

By Vignesh N M

•Sep 12, 2018

Explaination of many things are skipped, assumption was made by the instructor that lot of things were already known by the learner. It could have been much better.

- Finding Purpose & Meaning in Life
- Understanding Medical Research
- Japanese for Beginners
- Introduction to Cloud Computing
- Foundations of Mindfulness
- Fundamentals of Finance
- Machine Learning
- Machine Learning Using Sas Viya
- The Science of Well Being
- Covid-19 Contact Tracing
- AI for Everyone
- Financial Markets
- Introduction to Psychology
- Getting Started with AWS
- International Marketing
- C++
- Predictive Analytics & Data Mining
- UCSD Learning How to Learn
- Michigan Programming for Everybody
- JHU R Programming
- Google CBRS CPI Training

- Natural Language Processing (NLP)
- AI for Medicine
- Good with Words: Writing & Editing
- Infections Disease Modeling
- The Pronounciation of American English
- Software Testing Automation
- Deep Learning
- Python for Everybody
- Data Science
- Business Foundations
- Excel Skills for Business
- Data Science with Python
- Finance for Everyone
- Communication Skills for Engineers
- Sales Training
- Career Brand Management
- Wharton Business Analytics
- Penn Positive Psychology
- Washington Machine Learning
- CalArts Graphic Design

- Professional Certificates
- MasterTrack Certificates
- Google IT Support
- IBM Data Science
- Google Cloud Data Engineering
- IBM Applied AI
- Google Cloud Architecture
- IBM Cybersecurity Analyst
- Google IT Automation with Python
- IBM z/OS Mainframe Practitioner
- UCI Applied Project Management
- Instructional Design Certificate
- Construction Engineering and Management Certificate
- Big Data Certificate
- Machine Learning for Analytics Certificate
- Innovation Management & Entrepreneurship Certificate
- Sustainabaility and Development Certificate
- Social Work Certificate
- AI and Machine Learning Certificate
- Spatial Data Analysis and Visualization Certificate

- Computer Science Degrees
- Business Degrees
- Public Health Degrees
- Data Science Degrees
- Bachelor's Degrees
- Bachelor of Computer Science
- MS Electrical Engineering
- Bachelor Completion Degree
- MS Management
- MS Computer Science
- MPH
- Accounting Master's Degree
- MCIT
- MBA Online
- Master of Applied Data Science
- Global MBA
- Master's of Innovation & Entrepreneurship
- MCS Data Science
- Master's in Computer Science
- Master's in Public Health