ermongroup / cs228-notes

Course notes for CS228: Probabilistic Graphical Models.
MIT License
1.9k stars 471 forks source link

Clarifies notation regarding cliques #181

Closed mmosse19 closed 4 years ago

mmosse19 commented 5 years ago

The cliques are enumerated x_c^{(1)},...,x_c^{(n)}. This is confusing because (a) the number n is also used for the number of variables x_i, which suggests that the number of cliques is the same as the number of variables (which need not be the case, right?), (b) the text never says what the x_c^{(i)} stands for, so the reader could easily think that they were variables (but then the subscript c would be confusing), and (c) in the same sentence, the variable c is used for a clique, which will make the reader less inclined to understand that x_c^{(i)} is supposed to be a clique (if it's supposed to be a clique).

To fix this problem, I propose instead writing:

Crucially, we assume that the cliques have some path structure, meaning that they can be put into a path $$c_1, ..., c_m$$, such that if some variable $$x_i$$ appears in two cliques $$c_j$$ and $$c_k$$, then $$ci$$ is also in $$c\ell$$ for all $$c_\ell$$ on the path between $$c_j$$ and $$c_k$$.

If I have misunderstood the meaning of $$x_c^{(1)},...,x_c^{(n)}$$, I might suggest explaining what the variables stand for (variables, cliques, neighbors of cliques, etc.).

jiamings commented 4 years ago

The c notation is used later on as nodes for the junction trees, so I think the current notation could break consistency of notations later on. Moreover, the nodes for junction tree only needs to contain a clique, it does not have to be one. I think x_c^{(i)} are cliques, so might keep the notations for now, but will do a better job at explanation later.