o = open(output_prefix+"nu.origin", 'w') for i in xrange(num_topic+1): o.writelines("\t".join([str(1.0) for j in xrange(num_topic)])); o.writelines("\n"); print "output seed nu..." o = open(output_prefix+"tau.origin", 'w') for i in xrange(num_topic): a = array([random.random() for j in xrange(num_voc)]); a = log(a/sum(a)); o.write("\t".join(map(str, a)) + "\n") # o.write("\t".join([str(log(1.0/num_voc)) for j in xrange(num_voc)]) + "\n"); print "output seed tau..." o = open(output_prefix+"beta.origin", 'w') uniform = True; if not uniform: beta_prime = random.beta(1.0, beta_param, num_topic); one_minus_beta_prime = 1-beta_prime; beta = beta_prime; for i in xrange(1, num_topic-1): beta[i] = beta[i] * one_minus_beta_prime[0:i].prod() beta[num_topic-1] = 1.0-beta[0:num_topic-1].sum() else: beta = ones(num_topic); beta = beta/sum(beta); print "beta is ", beta o.write("\t".join(map(str, beta)) + "\n") print "output seed beta..."
def sample(self): random.seed() samp = self.pmin + (self.pmax - self.min) * random.beta(self.alpha, self.beta) return 10 ** samp if self.isLog else samp