adding
[mlfp.git] / matlab / max_likelihood_clusters.m
blobc3c131802962bbf32b86808ad6e4065573edc790
1 function max_likelihood_clusters = get_max_clusters(X, model)\r
2 \r
3 % Compute the max likelihood clusters for each observation\r
4 for i=1:size(X.obs, 2)\r
5     best_likelihood = 0;\r
6     best_chain = -1;\r
7     probs = zeros(1, model.num_mcs);\r
8     obs = X.obs(i).obs;\r
9     for j=1:model.num_mcs\r
10         chain_prob = chain_likelihood(obs, model.chain(j));\r
11         probs(j) = chain_prob;\r
12         if (best_chain == -1 | best_likelihood < chain_prob)\r
13             best_likelihood = chain_prob;\r
14             best_chain = j;\r
15         end\r
16     end\r
17     max_likelihood_clusters(i).best_cluster = best_chain;\r
18     max_likelihood_clusters(i).best_probs = best_likelihood;\r
19     max_likelihood_clusters(i).probs = probs; \r
20 end