Mathematics for Machine Learning: PCA(으)로 돌아가기

별점

2,810개의 평가

•

698개의 리뷰

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

WS

2021년 7월 6일

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

2018년 7월 16일

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.

필터링 기준:

교육 기관: Hashaam S

•2018년 12월 30일

This course does not include real-world examples as compared with other 2 courses in the series. The other lecturers energy was quite obvious and the lecturer in this course does nothing extra. This is the traditional teaching method where we should keep on grasping theory without understanding applications.

While I have learned many new concepts, I am 100% unsure I have not understood the course in general.

The assignments in the course was poorly constructed and the lectures did not explain anything more about numpy methods.

I will not recommend this course to anyone.

교육 기관: Maximilian W

•2019년 4월 29일

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.

교육 기관: Eric P

•2019년 4월 26일

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.

교육 기관: Christos M

•2019년 4월 27일

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.

교육 기관: Ткаченко В Е

•2019년 3월 24일

Algebra course is excellent. Calculus course is good. PCA is so bad that I am still upset that I spent my time on it.

교육 기관: Avirup G

•2019년 2월 18일

Very poorly written/performed material with inadequate coding help. The engagement level is quite low. Will not recommend if you have novice programming background or new to math concepts.

교육 기관: Alexandra S

•2018년 9월 26일

Worth auditing because the video lessons are good but unless you have solid Python programming experience, the assignments and some quiz questions will take you days instead of hours. The course info states that you would need 'Basic knowledge in python programming and numpy'. This is to be understood as 'solid practice, at least intermediate level'. 'Basic knowledge' simply does not make it possible to finish these exercises within the given timeframe (1-2 or even 3-4 hours).

As many others, despite having no problem with the maths, I gave up during week 1 because of this issue and of not having this amount of free time while already working full time. This should be emphasised in the course description, apart from the extra mathematical creativity that already appears there. And it should also appear in the description of the whole specialisation, which states that programming experience 'comes in handy but is not necessary'. Many people who start doing the courses are determined to finish the whole specialisation.

교육 기관: Bryan S

•2019년 2월 19일

This course needs a lot of work to get to the level of quality of its two predecessors.

교육 기관: sreekar

•2018년 10월 23일

The instruction is absolutely bad and not worth it. However, if you have patience to re-watch, refer to other supporting materials, learn on your own a lot and then have patience to deal with programming asssignments ,...then you might find the final result useful.

교육 기관: Harshit D

•2018년 7월 30일

Loved the first two courses but felt like killing myself in this course. One of the worst professors i have ever encountered.

교육 기관: Brock I

•2018년 11월 21일

Way too hard compared to the other courses in the specialization. I feel like I wasted my money on this.

교육 기관: Guillermo A

•2020년 6월 15일

I agree with most other reviewers that this course is more difficult than the previous two in the specialization. However, I disagree with some of the very negative reviews. I believe the instructor does generally a good job (and is clearly extremely knowledgeable and competent) except:

(1) Sometimes, in the derivations, he glosses over steps which are probably trivial to him, but that are not so trivial to many in the audience (in my case, I had to replay some of these derivation steps a few times until I could understand them)

(2) As some reviewers have said, a few more detailed examples here and there (as opposed to quickly flashing some sample data plots) would be helpful

(3) The instructor could use a little bit more of charisma to try to show that he is excited about the subject he is teaching, and thus make his audience more excited about it (but granted, that is a personality trait that doesn't come easy to most professors and instructors).

As for the programming exercises, which have been amply criticized in other reviews, I agree there's little guidance on how to approach them, but for anybody with who has understood the lectures fairly well, and with enough programming experience, they should not be that hard. It's only a few lines of code that need to be written in all of the programming assignments.

교육 기관: Roy A

•2020년 9월 23일

First 2 courses in this specialization was really good, so I'm very dissappointed here. My main issues are the following:

The lectures are not clear enough, for about 75% of the assignments, I had to look up alternative lectures on youtube to get the point, if I have to find the majority of the information outside of Coursera, then what is the point of the course?

Sometimes there are no examples in the lectures, other times, the examples are too basic. So once I got a more advanced question , I was clueless how to solve it. Sometimes the first question on a quiz is much more complex than the example in the lecture.

The lectures requires you to be very comfortable with math notation, which I'm not. As mentioned earlier, some more examples would have solved this for me, but as the examples are lacking, I was simply unable to understand what was being written on the lecture, and had to look elsewhere. Note that the math itself wasn't hard(once I found someone else to explain it), just understanding what the lecturer meant.

Some steps in lectures are missing, I guess they are obvious if you have the correct prerequisites, but to me it was just a black box. "We have x,y,x. So then we get x+z,y!", why? no idea, I still don't know why we get x+z.

Programming assignments are hard for the wrong reasons, the math is not that hard, the python and numpy is basic, but the explanations of what the function is supposed to do is not clear. When I got stuck, it was usually because I didn't understand what the output of a function was supposed to be. As this is a math course, I would expect the challenge to be the math, not something else.

To sum up the above points, I think the course lacks a good understanding of the base skills needed to complete the course. Since I had no problems with part 1 and 2, and then ran into a wall at part 3(PCA), I think these parts should be better synced, if they are to be part of the same specialization.

교육 기관: Rahul M

•2019년 6월 29일

The instruction content was superb, though the tests were unrelated to content. I realize that there is a lot of criticism of the course here, but if you understand and code in Python, they are not hard. I wish the course staff had made the Jupyter notebooks more clear, giving us an understanding of what was required, if that was done this is a good, though very hard (in terms of mathematics) course.

교육 기관: Nimesh S

•2020년 6월 19일

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.

교육 기관: João S

•2019년 5월 2일

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.

교육 기관: Jong H S

•2018년 7월 17일

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.

교육 기관: Martin B

•2018년 10월 22일

Overall: worthwhile content, but poor execution. Especially assignments need improvement.

Good points:

-The contents tend to be worthwhile.

-The instructor is thorough and clear.

Bad Points :

-To those who are not as familiar with mathematical terminology the instructor is a tough act to follow sometimes.

-The great disappointment of this course lies in the assignments. They don't really add to my understanding of the mathematics involved, and are quite often a distraction because the assignments are quite inflexible in terms of coding: you'll have to stick quite close to what the instructor envisions, or you will fail. This is especially frustrating because you will have a hard time figuring out whether you failed because your code was faulty or because your conceptual understanding was faulty.

교육 기관: Oliverio J S J

•2020년 5월 29일

This course is awful. The videos have no useful explanations, the speaker seems to be reading some slides. The provided material is really bad; there are even links to wikipedia! The difficulty level of the assignments is beyond the one proposed by the lessons. The programming tasks consist only on reproducing formulas; most of the time you are struggling with numpy implementation issues. In summary: stay away from this course.

교육 기관: Christian R

•2018년 7월 24일

Frustrating. Videos and material does not cover what it is asked for in the quizzes and assignments.

교육 기관: JICHEN W

•2018년 10월 27일

Explanation of course material is not clear

교육 기관: José D

•2018년 10월 31일

This course is harder that the the two first ones. You have to do a lot more by yourself. There will be some frustrations with assignments that are not always easy or clear, with confusing python/numpy notations not really introduced during the course. Also, most assignment didn't work online, so I had to install python3 and jupyter to work on them locally and submit them manually. You should expect to spend more time than announced. All in all, I've learned new things and that's the most important. I believe there are room for improvement for this course.

교육 기관: Jayant V

•2018년 5월 1일

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!

교육 기관: SUSAN H M

•2019년 10월 21일

Some people complained about this course or specialization such that there was not enough help or the instructors were so lazy that a lot of the time, they just rushed through and ignored the details. But I LIKE this course and this specialization. All those complaints expressed by some people worked to my advantages. I do not need someone to monitor me at every step, so I do not mind the instructors stay out of discussion forum most of the time. Indeed, the most recent reply from an instructor I saw was a year old (or 2-year old, don't remember exactly). I would have genuinely hated this course or specialization if the instructors intervened at every step.

Throughout this specialization, I was able to discuss course contents and algorithm codes freely on the discussion forum. That really enhanced the learning experiences. I did not feel that my learning journey was micromanaged and I truly valued that freedom to develop my own understanding and insights.

I gave all three courses in the specialization a five-star review (would give six stars if that is available). I would definitely take another course by the instructors on Coursera.

교육 기관: Tobias L

•2020년 9월 10일

PCA is derived using the mathematical approach. I liked this, it was systematically done by the lecturer without leaving me puzzled on how he did it. If you do not like maths, sums, the delta operator and so forth this might not be the right course for you.

However, the course is quite buggy and needs a mayor overhaul. Quizzes in the videos have no answers, the practial assignments have quite some bugs - outside the code, we are supposed to edit.

Fixes for these bugs can found in the forums or - given enough Python and NumPy knowledge - be fixed by one self. Yet the instructors do not fix these once and for all. To me this seems lazy and I expect more from a course that is paid for and has an audience that is mostly doing this during afterhours and wants to learn something about PCA and not on how to find workarounds to please the AutoGrader. Without these issues and I would have given the course a 5-star rating.

- Google 데이터 분석가
- Google 프로젝트 관리
- Google UX 디자인
- Google IT 지원
- IBM 데이터 과학
- IBM 데이터 분석가
- Excel & R을 사용한 IBM 데이터 분석
- IBM 사이버 보안 분석가
- IBM 데이터 엔지니어링
- IBM 풀스택 클라우드 개발자
- Facebook 소셜 미디어 마케팅
- Facebook 마케팅 분석
- Salesforce 영업 개발 담당자
- Salesforce 영업 운영
- Intuit 부기
- Google 클라우드 자격증: 클라우드 아키텍트 취득 준비
- Google 클라우드 자격증: 클라우드 데이터 엔지니어 취득 준비
- 경력 시작
- 수료증 취득 준비
- 경력 쌓기