private RandomAccessSparseVector generateRandomDoc(int numWords, double sparsity) throws MathException {
RandomAccessSparseVector v = new RandomAccessSparseVector(numWords,(int)(numWords * sparsity));
PoissonDistribution dist = new PoissonDistributionImpl(sparsity);
for (int i = 0; i < numWords; i++) {
// random integer
v.set(i,dist.inverseCumulativeProbability(random.nextDouble()) + 1);
}
return v;
}
private LDAState generateRandomState(int numWords, int numTopics) {