返回到 Mathematics for Machine Learning: PCA

4.0

星

2,096 個評分

•

514 條評論

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

NS

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.

篩選依據：

創建者 Artur

•Feb 29, 2020

good course

創建者 miguel s

•Sep 21, 2020

very well

創建者 Mohamed H

•Aug 10, 2019

fantastic

創建者 Karthik

•May 03, 2018

RRhis cl

創建者 Akash G

•Mar 20, 2019

awesome

創建者 Bálint - H F

•Mar 20, 2019

Great !

創建者 Md. R Q S

•Aug 21, 2020

great

創建者 GEETHA P

•Jul 28, 2020

good

創建者 RAGHUVEER S D

•Jul 25, 2020

good

創建者 Harsh D

•Jun 28, 2018

good

創建者 Wasif S

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

創建者 Ertuğrul G

•Jun 07, 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.

創建者 Henry N

•Aug 27, 2020

Overall this was a pretty good course - some other reviews comment on how some things are glossed over in the videos but you'll get the most out of it if the other courses in the specialisation are fresh in your mind (e.g. you'll have to know about eigenvectors/eigenvalues, Gaussian elimination, derivatives and the chain rule etc. as these are referred to and used but not explained in detail - but these are covered in the first 2 courses). The main problem is with the assignments - for some weeks there's not enough guidance about what the functions should be returning, so these should be better documented; the other issue is that some of the code that we are not required to edit doesn't actually work - for instance, my implementation of PCA passed the grader but the visualisations in the week 4 notebook didn't work.

創建者 Niju M N

•Apr 09, 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 .

創建者 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.

創建者 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!

創建者 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.

創建者 Luke L

•Jun 11, 2020

This course was a very interesting end to the specialization. The first two courses teach you the tools necessary, while this course teaches practical (although highly theoretical) application of those tools. The reason for the non-five star rating is the python exercises take one on quite a journey, which often times goes through some dark and murky tunnels which are tough to escape. Also, there are few worked examples during lectures.

創建者 Antonio C P

•Jan 24, 2020

It was a real tour de force on the mathematics, and I had some hard time following the ideas of the instructor many times. However, the topic was completely covered in a very systematic way, which is excellent in my opinion. My only suggestion is to focus more on what really matters: do we really have to spend such a long time discussing about different metrics for an inner product if in the end we only use the euclidean metric?

創建者 Rob O

•Aug 03, 2020

An in-depth exploration of the PCA algorithm and the math behind it. Python programming exercises helped me to solidify the theory and derivations. Numpy is used extensively in the exercises and I liked the experience that I gained in applying it. I found that the connection between the exercises and theory were not always clearly drawn and needed to refer to the discussion to fill in the gaps.

創建者 Barnaby D

•Jan 03, 2020

Would give this course 5 stars if it was properly described so that expectation could match reality:

Give yourself plenty of time for this course - it will take quite a bit longer than described.

Make sure you are comfortable with Python and NumPy before you start (particularly the linear algebra functions).

It is very different (much less hand-holding) than the other courses in the specialization.

創建者 Jorge G

•Sep 15, 2020

its a good course, some exercices are not for beginner programers. I think on the PCA chapter the projection matrix is described wrong, I used the formula from previous weeks and it worked. I think the relation between kmeans and pca is not explained only on a programming task is breafly discussed but its described out of nowhere so you have to read the code to understand whats going on.

創建者 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.

創建者 Visveswara K M

•Jun 18, 2020

This was a bit more challenging than the previous two courses. I didn't enjoy it as much as the previous courses, however, I learnt more than the previous two. The discussion forums were helpful and the instructors contributed regularly. The assignments were a bit frustrating at times but still manageable. However, the assignments could have had a bit more of explanations.

創建者 greg m

•May 24, 2020

Very good course, interesting material. However the amount of programming knowledge required is way beyond a beginner like myself and I struggled with that , consuming much time. Those with programming knowledge have a tremendous advantage on this course.

There should be a week or a separate brief course on python/numpy.

A follow up more advanced course would be good too.

- Finding Purpose & Meaning in Life
- Understanding Medical Research
- Japanese for Beginners
- Introduction to Cloud Computing
- Foundations of Mindfulness
- Fundamentals of Finance
- 機器學習
- 使用 SAS Viya 進行機器學習
- 幸福科學
- Covid-19 Contact Tracing
- 適用於所有人的人工智能課程
- 金融市場
- 心理學導論
- 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
- 深度學習
- 零基礎 Python 入門
- 數據科學
- 商務基礎
- Excel 辦公技能
- Data Science with Python
- Finance for Everyone
- Communication Skills for Engineers
- Sales Training
- 職業品牌管理職業生涯品牌管理
- Wharton Business Analytics
- Penn Positive Psychology
- Washington Machine Learning
- CalArts Graphic Design

- 專業證書
- MasterTrack 證書
- Google IT 支持
- IBM 數據科學
- 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
- 公共衛生學位
- Data Science Degrees
- 學士學位
- 計算機科學學士
- MS Electrical Engineering
- Bachelor Completion Degree
- MS Management
- MS Computer Science
- MPH
- Accounting Master's Degree
- MCIT
- MBA Online
- 數據科學應用碩士
- Global MBA
- Master's of Innovation & Entrepreneurship
- MCS Data Science
- Master's in Computer Science
- 公共健康碩士