1. A method for a distributed system, including a first computing device and a second computing device communicatively connected via a network, running a distributed uncollapsed Gibbs sampler comprising: the first computing device running the uncollapsed Gibbs sampler over a Dirichlet distribution of a plurality of words in a set of documents to produce sampler result data, further comprising: receiving, from the second computing device, a first approximate counter value that corresponds to a particular counter of the distributed uncollapsed Gibbs sampler, using one or more probabilistic techniques to increment a second approximate counter value that also corresponds to the particular counter; adding the first approximate counter value to the second approximate counter value to produce an aggregate approximate counter value, and converting the aggregate approximate counter value to an expected value represented by the aggregate approximate counter value; and using the expected value generated from the aggregate approximate counter value as the value of the particular counter; and determining, from the sampler result data, one or more sets of correlated words.