Вернуться к Mathematics for Machine Learning: PCA

звезд

Оценки: 2,668

•

Рецензии: 671

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

6 июля 2021 г.

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

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.

Фильтр по:

автор: David S

•3 апр. 2021 г.

Of the ten or so courses that I have completed on coursera and other platforms, this one has been the most poorly taught. Usually I give four or five stars. This course gets two, which I feel is charitable.

A few examples of why I rated this course so poorly come to mind

· Instead of video lectures students are repeatedly sent to Wikipedia or similar

· The lecturer’s 417-page text was available, but without worked examples and no reference between lecture material and text

· Examples on the videos often skipped steps

· Often the videos did not have enough information to do the quizzes

· The instructor has not been on the discussion forum for 16 months

· Uninspiring assignments (and laughably low estimated times to complete)

· Intermediate level Python is required, but not mentioned as a prerequisite

I know that ‘style’ is subjective, but the institution (Imperial College London) and Coursera really should have given the lecturer some training on how to appear to enjoy teaching. Personally I would not want to attend this school for fear of being stuck with this lecturer for a semester.

The negativity of this review is unfortunate since Principal Component Analysis is an important and popular concept in statistics, math and machine learning. I hope this course is replaced in the near future. In the meantime solid on-line resources teaching the same material are available. Unfortunately I needed those resources – and an outside tutor – to pass this course.

автор: Kenny C

•22 июля 2020 г.

This course was very frustrating. I would say that I'm quite competent in math, but I still struggled, not necessarily because the content is challenging, but because the instructions are unclear. I like that the lectures go through derivations in detail, but the instructor often skips steps. Sometimes he would reference a property of matrices that were not talked about, and I would have to spend half an hour researching what that property was to follow what was happening. The quizzes were minimally helpful, as they were merely the same computation question repeated throughout the quiz, which does not help to build intuitive understanding. The programming assignments are unclear on instructions and had many bugs, even in the pre-written parts. A lot of time was spent on reading the NumPy documentation, as the assignments gave little indication of what functions should be used and how they should be used. Overall, despite having a mathematical derivation of PCA, the course is very confusing and frustrating, perhaps even to those competent in this area of study.

автор: Lawrence C W

•10 мая 2021 г.

Aggravating. Poor "examples" in the lectures and followed by weak exercises. I understand that they're probably trying to change them from time-to-time to minimize the ability to copy or cheat from pervious cohorts, but when you do that we should certainly ensure to fix all text within the assignment as to prevent confusion. Such as only asking to normalize by centering on the mean, not dividing by the standard deviation. However, further down the exercise it mentions mean and standard deviation.... Okay was I supposed to do that from the beginning or did you forget to edit this section? Additionally errors within the notebook. Functions not running (eig). Causing a never ending stream of 20% grading. Is it my code or this thing failing to execute correct? Very aggravating.

The combination: Poor "examples" during lecture - assuming that everyone is more familiar i guess (maybe I'm alone in this), and sub-par exercises as they pertain to the lecture. I'm disappointed.

автор: Osaama S

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

автор: Astankov D A

•26 мая 2020 г.

Although the lecturer admits that the course is quite challenging at times, it is a poor justification for the terrible assignments with close to zero explanations, errors in functions and lots of misfunctioning code in general where the notebook keeps spinning in an infinite loop. I was very hesitant while rating this course - sometimes I wanted to give it 4 stars and sometimes just a single one. I ended up with just two due to the really bad final programming assignment.

автор: Karl

•30 мая 2020 г.

Pretty bad in comparison to the previous 2 courses. Not sure if the topic was just harder or it was presented less clearly. Assignments were confusing and I spent a lot of time trying to work out what I was supposed to be doing. More relevant practice questions might have been better. Also course felt slightly detached and maybe collaboration between the tutors which seemed to be there in the previous course should have happened here.

автор: Colin H

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

автор: Yana K

•18 апр. 2019 г.

Not really well structured. Too much in-depth details, too little intuition given. Didn't help to understand PCA. Had to constantly look for other resources online. Pity, because first 2 courses in the specialisation were really good.

автор: Ali K

•3 июня 2020 г.

the instructor is knowledgeable but he has no teaching skills what so ever. He makes things very confusing. An example at the end would be very useful. No step-wise algorithm is provided.

автор: Christian M

•29 сент. 2020 г.

Very enlightening but the course assignments are full of bugs and make it really hard to work with. The first two courses of the specialization were way better.

автор: Patrick F

•1 февр. 2019 г.

The programming tasks are very bad documented and have errors.

автор: Andrei

•1 нояб. 2018 г.

terrible assignments

автор: ABHI G

•21 авг. 2018 г.

not so good

:(

автор: Pradeep K

•30 апр. 2020 г.

Very Poor course on PCA, My recommendation. Don't watch it, Please don't waste your money on it.

Reasons:

1) The course on algebra and calculus was intuitive geometrically and well taught. Here the instructor bothered only doing derivations. No intuition based thinking, no analogy to real world. Just plain hard notations.

2) I don't think even the instructor would understand what was taught in the course. The excercises were completely unrelated to what was taught. Not much given examples. The examples choosen uses values like 0,1,2. Why can't you pick some odd numbers to make it bit more non confusion and clear.

3) At the end there was a review / Survey for every course. The review for this course is disabled. Clearly everyone knows how bad this is. Remove this course or make it better that is what the recommendation. There is no provision for zero stars, Had there one I would not given that also.

Really frustrated with the PCA course. Please don't waste your time and money . Get Gilbert Strang's book. That will do justice for every penny. I was able to complete the course, All thanks to Gilbert's book on Linear Algebra. Thanks

автор: Ivan F G

•1 июля 2020 г.

The technical issues with Jupyter Notebooks really made me waste too many days, a lot of my time not learning but just fighting a poorly implemented exercise. And the technical issues did not help the teacher, the notebooks had a role to give us a place to learn new concepts that he mentioned in the fly, but there were no small sets of data to test the functions. I wasn't very patient with the way he will say things like "this is the formula from the previous video", and show a different formula from what he had on the previous video. Really? Why making things obscure on purpose? You can just have said, we had our previous formula and them used properties of the transpose of a product to get this other formula. Please make an effort to redo the notebooks. Even better, do some of the examples in Phyton during class for what you do in paper, and then let us take those examples and make a general function on the notebooks. Give smaller databases, something easy to plot and test, without waiting 20+minutes to have a result.

автор: Anurag G

•13 сент. 2020 г.

I started this course with lots of enthusiasm since the previous two courses were exceptionally well structured and helpful, but I can not compare this course with those two.

The biggest problem for me was that Programming assignments are not well written and most of the time beyond the course material shared. It challenges your previous skills and may hit your self-confidence.

There are also few mistakes or/and skipped steps in the video, and they make progress little tricky.

My classmates were very helpful, and I would suggest relying more on the forums than video lectures when you need help. I would not recommend this course at all to anyone, but if you have done the first two, may complete the last one to complete the specialization.

Also, the first two courses are a few of the best certificates that I did on Machine Learning, and I have done six other mathematics for machine learning, currently enrolled for a degree course in Data Science.

All the best!

автор: Diego M E

•2 апр. 2021 г.

This course by no means retains the quality of its two predecessors. The difficulty of the programming assignments simply does not match that of what you watch in the videos and have to face in the practice quizzes. You need to have at the very least an intermediate understanding of both python and numpy. It should be stated somewhere that, if you really want to try and complete the assignments with a passing grade you'd need to invest **a lot** of your time. The course does not even remotely give you the tools necessary to complete these assignments; you'll need to research on your own and consult forums, videos, manuals, etc. My advice would be to learn python to an intermediate level first, then really practice with numpy, and just after that take this course. Otherwise you'll probably get very frustrated and quit.

автор: Alistair K

•16 мая 2020 г.

The instructor is extremely dry and monosyllabic and does a very poor job of explaining topics, he frequently introduces topics by jumping straight into formulas without bothering to explain the topic or the use of the subject he is supposed to be explaining.

The majority of lectures are no more that the lecturer reading our a formula parrot-fashion onto the screen, he makes no effort to make the subject informative or explain what is going on. In many cases, he doesn't even bother creating a lecture, he simply posts a link to Wikipedia.

Lectures, quizzes and assignments are littered with bugs and omissions.

A negative mark on an otherwise excellent specialisation. This lecturer has no place teaching, he made the whole subject unapproachable.

автор: Nuria C

•3 нояб. 2020 г.

I did the other two courses of the specialization, which I found great. They clearly explain concepts and give examples. In this course, the professor basically writes down definitions as you can find in any maths book, with no explanation and barely no examples. So, I found myself lost on the quiz and programming assignments. I am quitting the course even if I paid for it, since I feel is it not being a good use of my time. It is true that it is indicated as intermediate level, while the other two courses were for beginners, so I guess I am just in a course which is not for my level. I just don't know then why they included all three in the same package? :/

автор: Aniket D B

•2 окт. 2020 г.

Do not take this course. This course is just a waste of time, money, and effort. The instructions in this course are vague and useless. You have to learn everything from the internet in order to answer the quiz. The programming assignments are so poorly designed that there is no difference between a blank notebook and programming assignments in this course. The grader will grade everything wrong even when your code is correct. You have to do extra maneuvers in order to get your assignment graded correctly. IF I HAD AN OPTION OF GIVING A NEGATIVE RATING I WOULD HAVE GIVEN THIS COURSE A MAXIMUM NEGATIVE RATING. EVEN 1 STAR RATING IS TOO MUCH FOR THIS COURSE.

автор: Pavel S

•12 дек. 2019 г.

The course has two problems:

complete lack of participation of staff in maintaining it. This leads to students giving each other incorrect advice and sharing incorrect code which passes the grader function check ( the grades are assigned automatically). The advice students give each other are frankly so wrong it is shocking.

the teacher focuses on formalised proof rather than concepts. Hence the lectures turn into lecturer applying mathematical transfomations which end in a formal argument without any intuitive understanding of the underlying subject. This course is the worst of the module with linear algebra and multivariate calculus being much better

автор: Indira P

•26 мар. 2021 г.

I'm sorry but it is hard to understand. My expectation before starting this course is I'll be able to understand mathematic in an easier and better way but this is too complex to understand. I think you need to simplify this or make the course in a more fun way. Other than that, the course give me so much knowledge and it was so fun to learn all of these even though it require most of my time

автор: Raghav G

•13 июля 2020 г.

The course is very monotonic and boring and it is quite difficult to understand much of what the extremely mathematical terms that the instructor does. I am an M.Sc. Mathematics student and even I could not understand nor enjoy more than half of the course. I would strongly advise against taking this course, however the other two courses from this specialization are good and interesting.

автор: Deleted A

•31 июля 2019 г.

Feedback for the assignments sucks! The discussion forums don't help. I have to submit the last assignment last 6 times until it work, and I still don't know why my previous versions didn't pass. Other than that, the lectures are actually very good, but the only one worth the time is the fourth one, the other three are just the first course (Linear Algebra) all over again.

автор: Galina F

•8 янв. 2020 г.

Mathematical concepts are clear, but no explanation how to apply them to python to solve machine learning ussies. But you need this for python assignments.

Scripts checking assignments work uncorrectly such a way that one can submit the same piece of working(!) code and get 0/10 and then submit the same code and get 10/10.

All in all, it's very annoying and disappointing.

- Аналитик данных Google
- Управление проектами от Google
- UX-дизайн от Google
- ИТ-поддержка Google
- Наука о данных IBM
- Аналитик данных от IBM
- Анализ данных с помощью Excel и R от IBM
- Аналитик по кибербезопасности от IBM
- Маркетинг в социальных сетях от Facebook
- Разработчик комплексных облачных приложений IBM
- Представитель по развитию продаж от Salesforce
- Сбытовые операции Salesforce
- Soporte de Tecnologías de la Información de Google
- Certificado profesional de Suporte em TI do Google
- ИТ-автоматизация с помощью Python от Google
- Tensorflow от DeepLearning.AI
- Популярные сертификаты по кибербезопасности
- Популярные сертификаты по SQL
- Популярные сертификаты по ИТ
- Посмотреть все сертификаты

- бесплатные курсы
- Изучите иностранный язык
- Python
- Java
- веб-дизайн
- SQL
- Cursos Gratis
- Microsoft Excel
- Управление проектами
- Безопасность в киберпространстве
- Людские ресурсы
- Бесплатные курсы в области науки о данных
- говорить на английском
- Написание контента
- Веб-разработка: полный спектр технологий
- Искусственный интеллект
- Программирование на языке C
- Навыки общения
- Блокчейн
- Просмотреть все курсы

- Навыки для команд по науке о данных
- Принятие решений на основе данных
- Навыки в области программной инженерии
- Навыки межличностного общения для проектных групп
- Управленческие навыки
- Навыки в области маркетинга
- Навыки для отделов продаж
- Навыки менеджера по продукту
- Навыки в области финансов
- Проекты по разработке для Android
- Проекты по TensorFlow и Keras
- Python для всех
- Глубокое обучение
- Навыки Excel для бизнеса
- Основы бизнеса
- Машинное обучение
- Основы AWS
- Основы инженерии данных
- Навыки для аналитика данных
- Навыки для UX-дизайнеров

- Сертификаты MasterTrack®
- Профессиональные сертификаты
- Сертификаты университетов
- MBA и другие дипломы в области бизнеса
- Степени в области науки о данных
- Степени в области компьютерных наук
- Дипломные программы по анализу данных
- Степени в области общественного здравоохранения
- Степени в области социальных наук
- Дипломные программы в области управления
- Дипломы ведущих европейских университетов
- Дипломы магистра
- Степени бакалавра
- Дипломы с карьерными путями, ориентированными на результат
- Бакалаврские курсы
- Что такое диплом бакалавра?
- Сколько времени нужно для получения диплома магистра?
- Стоит ли получать диплом MBA онлайн?
- 7 способов оплатить магистратуру
- Просмотреть все степени