Some embodiments are directed to a system for identifying clusters from a plurality of users using cloud services. A behavior collection module is configured to obtain user preferences for the plurality of users, and an EM module to configured estimate at least one parameter of a distance-based model by the Expectation-Maximization (EM) algorithm for various values of G (number of clusters). A selection module is configured to compute Bayesian Information Criteria (BIC) with the at least one estimated parameter obtained from the EM module for various values of G, compare BICs obtained for various values of G, select the model with the highest BIC as the best model (best model including the plurality of clusters) and use estimated latent variables of the best model to build a classifier. A characterization module is configured to classify each user into a cluster of the best model using the classifier, and to determine ranking preference of each cluster.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method for identifying a plurality of clusters from a plurality of users using at least one cloud service, each cluster including at least one of the plurality of users, the method comprising: (a) obtaining user preferences for the plurality of users; (b) estimating at least one parameter of a distance-based model by the Expectation-Maximization (EM) algorithm for a specific number of clusters (G); (c) computing Bayesian Information Criteria (BIC) with the at least one estimated parameter for the specific number of clusters (G); (d) iterating steps (b-c) using an incremented value of G; (e) comparing BICs obtained for various values of G; (f) selecting the model with highest BIC as the best model, wherein the best model includes the plurality of clusters; (g) using estimated latent variables of the best model to build a classifier; and (h) classifying each user into a cluster of the best model using the classifier. 2. The method of claim 1, wherein the user preferences for the plurality of users are obtained by performing at least one of monitoring user behavior of the plurality of users when they use the cloud services, using user surveys and using a third party recommendation-as-a-service platform. 3. The method of claim 1, wherein the user preferences include ratings for at least one performance parameter related to a cloud service, wherein the ratings constitute one of a numeric rating and a non-numeric rating. 4. The method of claim 1, wherein the estimating of the at least one parameter by the EM algorithm includes iterating an expectation (E) step and a maximization (M) step of the EM algorithm until convergence is determined, wherein the EM algorithm finds maximum likelihood estimates of the at least one parameter. 5. The method of claim 4, wherein the at least one parameter includes a probability that an observation comes from a cluster g (πg), a central ranking of the distance-based model (Rg) and a precision (λg), wherein the observation is a set of user preferences. 6. The method of claim 5, wherein the EM algorithm employs at least one constraint on the precision parameters of the clusters in the plurality of clusters, wherein the at least one constraint includes the following: all clusters have unrestricted precision parameters; all clusters, except one, have unrestricted precision parameters and one cluster has precision equal to zero; all clusters have identical precision parameters; and all clusters, except one, have identical precision parameters and one cluster has precision equal to zero. 7. The method of claim 5, wherein estimating at least one parameter by the EM algorithm includes iterating alternatively between performing the E step, which creates a function for the expectation of the log-likelihood evaluated using the current estimate for the parameters, and an M step, which computes parameters maximizing the expected log-likelihood found on the E step; wherein these parameter-estimates are then used to determine the distribution of the latent variables in the next E step. 8. The method of claim 1, wherein computing BIC with at least one estimated parameter for a specific value of G includes subtracting a penalty term from a maximized log-likelihood obtained from the EM algorithm. 9. The method of claim 1, further comprising determining ranking preference of each cluster. 10. The method of claim 9, further comprising providing targeted cloud services offers to users based on the ranking preference. 11. The method of claim 9, further comprising obtaining user preferences of a new user, predicting the cluster of the new user using the classifier and providing targeted cloud services offers to the new user based on the ranking preference of the cluster. 12. The method of claim 1, further comprising executing the method periodically based on updated user preferences. 13. A method for identifying a plurality of clusters from a plurality of users using at least one cloud service, each cluster including at least one of the plurality of users, the method comprising: (a) obtaining user preferences for the plurality of users; (b) estimating at least one parameter of a distance-based model by the Expectation-Maximization (EM) algorithm for a specific number of clusters (G); (c) computing Bayesian Information Criteria (BIC) with the at least one estimated parameter for the specific number of clusters (G); (d) iterating steps (b-c) using an incremented value of G; (e) comparing BICs obtained for various values of G; (f) selecting the model with highest BIC as the best model, wherein the best model includes the plurality of clusters; (g) using estimated latent variables of the best model to build a classifier; (h) classifying each user into a cluster of the best model using the classifier; (i) determining ranking preference of each cluster in the best model; (j) obtaining user preferences of a new user; (k) predicting the cluster of the new user using the classifier and characterizing the new user based on the predicted cluster; and repeating the steps (a-k) periodically based on updated user preferences. 14. The method of claim 13, wherein the user preferences for the plurality of users are obtained by performing at least one of monitoring user behavior of the plurality of users when they use the cloud services, using user surveys and using a third party recommendation-as-a-service platform. 15. The method of claim 13, wherein the user preferences include ratings for at least one performance parameter related to a cloud service, wherein the ratings is one of a numeric rating and a non-numeric rating. 16. The method of claim 13, wherein the estimating of the at least one parameter by the EM algorithm includes iterating an expectation (E) step and a maximization (M) step of the EM algorithm until convergence is determined, wherein the EM algorithm finds maximum likelihood estimates of the at least one parameter. 17. The method of claim 16, wherein the at least one parameter includes a probability that an observation comes from a cluster g (πg), a central ranking of the distance-based model (Rg) and a precision (λg), wherein the observation is a set of user preferences. 18. The method of claim 16, wherein the EM algorithm employs at least one constraint on the precision parameters of the clusters in the plurality of clusters, wherein the at least one constraint includes the following: all clusters have unrestricted precision parameters; all clusters, except one, have unrestricted precision parameters and one cluster has precision equal to zero; all clusters have identical precision parameters; and all clusters, except one, have identical precision parameters and one cluster has precision equal to zero. 19. The method of claim 16, wherein estimating at least one parameter by the EM algorithm includes iterating alternatively between performing the E step, which creates a function for the expectation of the log-likelihood evaluated using the current estimate for the parameters, and an M step, which computes parameters maximizing the expected log-likelihood found on the E step; wherein these parameter-estimates are then used to determine the distribution of the latent variables in the next E step. 20. The method of claim 13, wherein computing BIC with at least one estimated parameter for a specific value of G comprises subtracting a penalty term from a maximized log-likelihood obtained from the EM algorithm. 21. The method of claim 13, further comprising providing targeted cloud services offers to the users based on the ranking preference. 22. A method for identifying a plurality of clusters from a plurality of users using at least one cloud service, each cluster including at least one of the plurality of users, the method comprising: (a) obtaining user preferences for the plurality of users; (b) estimating at least one parameter for each distance-based model in a plurality of distance-based models, wherein each distance-based model includes a different number of clusters (G); (c) selecting a best model from the plurality of distance-based models based on estimated value of the at least one parameter; and (d) classifying each user into a cluster of the best model. 23. The method of claim 22, wherein the user preferences for the plurality of users are obtained by performing at least one of monitoring user behavior of the plurality of users when they use the cloud services, using user surveys and using a third party recommendation-as-a-service platform. 24. The method of claim 22, wherein the user preferences include ratings for at least one performance parameter related to a cloud service, wherein the ratings is one of a numeric rating and a non-numeric rating. 25. The method of claim 22, wherein the estimating the at least one parameter includes using the Expectation-Maximization (EM) algorithm to estimate the at least one parameter. 26. The method of claim 25, wherein the estimating the at least one parameter includes iteratively performing E-step and M-step of the EM algorithm until convergence is determined, wherein the EM algorithm finds maximum likelihood estimates of the at least one parameter. 27. The method of claim 26, wherein the at least one parameter includes a probability that an observation comes from a cluster g (πg), a central ranking of the distance-based model (Rg) and a precision (λg), wherein the observation is a set of user preferences. 28. The method of claim 26, wherein the EM algorithm employs at least one constraint on the precision parameters of the clusters in the plurality of clusters, the at least one constraint including the following: all clusters have unrestricted precision parameters; all clusters, except one, have unrestricted precision parameters and one cluster has precision equal to zero; all clusters have identical precision parameters; and all clusters, except one, have identical precision parameters and one cluster has precision equal to zero. 29. The method of claim 26, wherein estimating at least one parameter by the EM algorithm includes iterating alternatively between performing the E step, which creates a function for the expectation of the log-likelihood evaluated using the current estimate for the parameters, and an M step, which computes parameters maximizing the expected log-likelihood found on the E step; wherein these parameter-estimates are then used to determine the distribution of the latent variables in the next E step. 30. The method of claim 22, wherein selecting the best model includes: computing Bayesian Information Criteria (BIC) for the plurality of distance-based models; comparing BICs obtained for various values of G; and choosing the model with highest BIC as the best model. 31. The method of claim 30, wherein computing BIC with at least one estimated parameter for a specific value of G includes subtracting a penalty term from a maximized log-likelihood obtained from the EM algorithm. 32. The method of claim 30, further comprising determining ranking preference of each cluster. 33. The method of claim 32, further comprising providing targeted cloud services offers to users based on the ranking preference. 34. The method of claim 32, further comprising obtaining user preferences of a new user, predicting the cluster of the new user based on the best model and providing targeted cloud services offers to the new user based on the ranking preference of the cluster. 35. The method of claim 22, further comprising executing the method periodically based on updated user preferences.