Back to Probabilistic Graphical Models 1: Representation

4.7

stars

1,193 ratings

•

259 reviews

Probabilistic graphical models (PGMs) are a rich framework for encoding probability distributions over complex domains: joint (multivariate) distributions over large numbers of random variables that interact with each other. These representations sit at the intersection of statistics and computer science, relying on concepts from probability theory, graph algorithms, machine learning, and more. They are the basis for the state-of-the-art methods in a wide variety of applications, such as medical diagnosis, image understanding, speech recognition, natural language processing, and many, many more. They are also a foundational tool in formulating many machine learning problems.
This course is the first in a sequence of three. It describes the two basic PGM representations: Bayesian Networks, which rely on a directed graph; and Markov networks, which use an undirected graph. The course discusses both the theoretical properties of these representations as well as their use in practice. The (highly recommended) honors track contains several hands-on assignments on how to represent some real-world problems. The course also presents some important extensions beyond the basic PGM representation, which allow more complex models to be encoded compactly....

Jul 13, 2017

Prof. Koller did a great job communicating difficult material in an accessible manner. Thanks to her for starting Coursera and offering this advanced course so that we can all learn...Kudos!!

Oct 23, 2017

The course was deep, and well-taught. This is not a spoon-feeding course like some others. The only downside were some "mechanical" problems (e.g. code submission didn't work for me).

Filter by:

By Sandeep M

•Sep 23, 2018

The content of the course is good but the assignments are in matlab which isn't as widely used as python and has the additional headache of licensing. it is the assignments where you really learn things so this is a serious negative point.

By Ben L

•Jan 13, 2019

Would be better if there are people monitoring the discussion board and actually answer student's questions.

By Amine M

•Apr 30, 2019

The material is really important and helpful for many concepts of Machine Learning. Daphne Koller is very good at explaining complicated ideas in an intuitive way. The programming assignments are very relevant and cover many real-world application scenarios in medical diagnosis and testing. Unfortunately, programming assignments have many flaws. First, some scripts do not work and therefore it is necessary to manually adjust these in order to submit your assignment part by part. Second, the forum is almost dead, which means that is is difficult to get help once you are stuck at a problem. Most of the helpful posts are almost two years old. Third, often times questions in the quiz are very vague and not clearly formed which makes it difficult to answer the instructor's question. All in all, I think, that the course is worthwhile but nonetheless the course definitely needs some refurbishing and bugs in scripts need to be fixed.

By M

•Jan 06, 2018

Good course, with actual university level content and depth (albeit in a multiple choice format). The explanations of the material were clear, however if you don't have at least a surface level familiarity with Bayesian probability and first year university level math, you'll find yourself spending a lot of time looking up random jargon on Wikipedia.

If you lack the necessary background, I suggest reviewing the content of Stanford CS109 (the content is publically available).

The assignments were a bit opaque / wordy; instead if an essay, provide clear bullet point tasks with a detailed appendix for clarity. Also, please use Python instead of Matlab. It's free, there's a more support available for it, it has much clearner syntax, much more comprehensive libraries and it's at least tollerably performant (in comparison to Matlab / Octave).

By Alexander P

•Apr 02, 2019

I really enjoyed the content of this course. Having been inspired by reading The Book of Why, I was looking for some formal language around Bayesian Networks and this course really fit the bill. My biggest piece of feedback is on the programming assignments. These really should be in Python. Octave is an okay choice, and I suspect might have to do with Andrew Ng original choice to use it for his own machine learning course. However, the data science community writ large uses Python and R, which is why Andrew switched to Python for his deep learning courses. I would recommend the programming assignment be updated so that they are more accessible to the data science community.

By Michael S E

•Feb 14, 2017

This course was solid overall but not excellent. I learned the basics of different classes of probabilistic models including Bayesian networks and Markov networks and how to represent them. Prof. Koller is knowledgeable and presented the materially logically. With that said, this course could have been a lot better than it was.

The honors programming assignments could have been excellent The material was interesting and dovetailed well with the course content. But the assessment process was very frustrating and led to a lot of wasted time debugging that was geared more to quirks of the grader than to course concepts. Both test cases and feedback on failed submissions were woefully inadequate. Some of the quizzes were also frustrating, featuring what I consider to be "gotcha" questions geared more to creating a grading curve than to measuring understanding of the material.

Advice to course staff: (1) Please provide more test cases on coding assignments (2) Please provide better feedback in submission reports (3) Please monitor the discussion boards more actively for unanswered questions (4) If you want to provide an externally linked executable you intend students to run from Matlab, it's not reasonable to give a 32 bit file in 2017 and send us down a rabbit hole where you suggest we build the executable from source, which in turn requires us to build the boost library from source.

By Deleted A

•Nov 18, 2018

This course seems to have been abandoned by Coursera. Mentors never reply to discussion forum posts (if there is any active mentor at all). Many assignments and tests are confusing and misleading. There are numerous materials you can find online to learn about Graphical Models than spending time & money on this.

By YUXUN L

•Dec 07, 2016

This course is really amazing. The lecture is well-organised and lecture material is good. This course covers basic knowledge about representation in Probabilistic Graphical Model. It includes Markov Network, Bayesian Network, Template Model and some other knowledge. The assignments, oh, I have to say, although some quiz in it seems like having bug, are still impressive. I strongly recommend finishing all the programming assignments of this course. Some trick parts of the knowledge taught in the course are covered by the assignments (like template model part, trust me you have to think about the template model part really, really carefully to figure out what it exactly means). Anyway, it worth my payment :-).

If you wanna take this course, buying a textbook is a good choice because there are some extra knowledge which is not covered by this course in the textbook. However, without a textbook you can still continue. I really appreciate Professor Koller for offering such a great, amazing course!

By Alex L

•Apr 09, 2018

This is not an easy course, so beware. The instruction is solid but you still need to reason through a lot on your own, and especially if you choose to complete the Honors programming section (which I highly recommend to prove to yourself that you really understand what you have learned and can apply it), you really need to plan on allocating sufficient number of hours to work through the programming assignments. You'll likely need to re-watch several of the video segments several times for it to really sink in, as well as referencing the Discussion Forum when you are stuck and need inspiration. Once you do complete this course (after many hours of work and thought) you will enjoy a deep sense of accomplishment, will look and think about decision-making in a fresh new way, and have learned many very useful skills.

By StudyExchange

•Mar 13, 2018

In the video, a lot of knowledge point do not explain very clearly, we do not konw how to resolve the quizzes. Moreover, if buy the textbook, may acquire more detail about PGM, but the textbook do not explain very clear neither. Textbook is hard to read. Even so, this course is worthwile to learn. Because PGM is one of the basic theory of machine learning and widespread use. In the end, thank Koller and coursera! Thank you very much!

By Santosh K S

•Jul 28, 2018

Dear Madam thanks a lot for the course.

This course - in addition to Machine Learning, by Andrew Ng Sir, are perhaps most comprehensive courses.

This course covers a lot over a period of 5 weeks. It demands higher level of focus. So, the learning still continues..

Regards,

Santosh Kumar Singh

Bangalore, India

By Dhruv P

•Jun 18, 2017

I have Actually Earned Three Years of my life (at least) and one possible patent because of this course.

Thank You Daphne Mam. God Bless Everybody Associated with it.

By Shi Y

•Nov 13, 2018

总体上很棒的课程，除了第四周的荣誉编程的体验有待提升。课程难度适中，不容易，但认真思考和理解后是没有问题的。很期待专项课程中剩余的课程。

By Tomasz L

•May 12, 2019

Great course! Lectures are clear and comprehensive. Quizzes really check knowledge and are challenging. In the programming assignments the main focus is put on implementation of PGM algorithms and not on technical aspects of Octave/Matlab. Some changes could be made in Programing Assignment 4 to make description and provided code easier to understand.

By Phillip W

•Apr 08, 2019

Sometimes the questions weren't clear. But in general, I really like the course and the things I've learnt I am sure they are useful.

By Lorenzo B

•Jan 19, 2019

The course contents are presented very clearly. Difficult ideas are conveyed in a precise and convincing way. Despite this, the global structure is not presented very clearly, and the quality of some course material is not excellent. In particular, I didn't find the optional programming assignments particularly interesting, and the code/questions contained more than one bug. Also, the quality of video/sound is quite poor, and varies a lot from course to course.

By Sergey V

•Oct 28, 2016

Done! The #PGM class is probably one of the most challenging ones in Coursera both in terms of workload and theoretical depth. I used to spend 10+ hours per week and I doubt anyone could complete it successfully without Matlab knowledge and strong background in #probability #machinelearning and #programming. Comprehensive programming assignment with honour content and quizzes help to make yourself very familar with the topics: #bayesiannetwork #gibbssampling #intercasualreasoning #markovproccess #markovchain #OCR Daphne Koller @DaphneKoller , as Coursera co-funder, made her best to show the capabilities of the platform. To sum up, prospective students should take into account that the course is quite advanced and several background in probability, statistics, machine learning and algorithms required if you going to sign up for the PGM class =) Lectures and videos available for free but graded assignments and verified certifcate is paid option. Cheers, @RiddleRus #stanford #math #probability #probabilisticmodels P.S. I had spent at least five attempts before I passed a final assignment!

By sergei s

•Jan 23, 2020

Wow! It was an amazing journey. Daphne Koller is an outstanding lecturer and I was very impressed with the quality of provided material. This course is the MUST TO HAVE if you study modern communication theory, where the probability-based approaches are widely used (receivers, estimation, TurboCodes, LDPC).The assignments are tough due to many unclear moments, that appear quite often. You need to analyse them regularly and I watched some lectures again few times. Since you need to extend a provided Matlab code, it is often required to debug and check how it works in details. And it forces you to learn implementation details and suplied libraries. Personally, I discovered libDAI, which is definitely an amazing tool.

By Sumod K M

•May 06, 2019

The course contents and presentation is of very high quality. The assignments and quizzes are both challenging and very rewarding. The only minor qualm is that the programming assignment grader seems to have few issues. For one, MATLAB indexing is really hard to work with. Secondly, it doesn't test the answers fully in some cases. Like the case of OptimizeWithJointUtility, OptimizeLinearExpectations. My codes passed the grader but I was splitting to hair to figure out why my answers to quiz questions corresponding to programming assignment were wrong. Turned out that my code was incorrect for the two programming assignments and that was causing issues. Otherwise, really nice course. Thank you :).

By Ka L K

•Mar 27, 2017

A five stars course. Prof. Koller is an outstanding scientists in this field. The first part just introduce you two basic frames of graphical models. So go further into second part is necessary if you want to have a bigger picture. The whole course is an introduction to the book - Probabilistic Graphical Models of Prof. Koller, so buying her book is also highly recommended. This course is supposed to be hard, so you should expect a steep learning curve. But all the efforts you made are worthy. I suggest coursera will consider put more challenging exercises in order to extent the concentration. Finally, a highly respect to Prof. Koller who provide the course in such a theoretical depth.

By Sha L

•Apr 20, 2017

it's really hard course for me but after completing and see the certificate I feel so good about it. Yesterday someone asked a question regarding conditional independence. I remember before I took the course I've spent quite some time understanding it, just like him. But yesterday I didn't event think about it and gave him the right answer using "active trail" and "D-separation" concept. That's how powerful this course can be.

I didn't work on the honor track though because I'm currently short of time. But I think I will come back and taking the other 2 courses in this series.

By Blake B

•May 21, 2017

Awesome intro to graphical models, and the exercises really emphasize understanding and proceed at what seems like the appropriate pace. Challenging for sure, you need to want to learn this stuff. Only downside is I'm not a fan of using octave/matlab--really wish this could be rebuilt using python for all the exercises. I've probably spent 60% of my time devoted to this course on getting that setup working and wrestling with telling the computer to do what I want in an unpopular language--at least, unpopular out in the world outside of academia.

By Chan-Se-Yeun

•Jan 07, 2018

This course is quite interesting not that easy. It helps me understand Markov network. The questions within the video are very helpful. It helps me check out some essential concepts and details. What's more, I'm fascinated by the teacher's voice and her teaching style, though detailed reading is required off class to gain comprehensive understanding. This is the first time I take online course in courser, and it's fun. I think I'll keep on learning the rest 2 courses of this series.

By Haowen C

•Sep 01, 2017

Excellent course for picking out just the critical portions of the Koller & Friedman book (which is over 1000 pages long, forget about reading it cover to cover for self study). Don't skip the programming assignments, they're very important for solidifying your understanding. You'll spend at least 75% of the time fussing over the somewhat arbitrary and baroque data structures used to represent factors and CPDs in this course, but at the end it's worth the frustration.

By Dawood A C

•Oct 25, 2016

The course was very fruitful. It is was not that easy of course, I think it is one of the most difficult courses on Coursera but it deserves to try it once, twice and as many as you can until you understand the idea behind the course. The exams and the honor assignments were so tricky and not that easy to solve. If you don't have a probabilistic background, I think first better for you to take a course in data analysis and probability.

- 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