I just came across a potentially useful R package called mallet, which interfaces with MALLET: a Java based software package for machine learning text analysis. It can fit a lot of topic models such as LDA and Heirarchical Dirichlet Processes (I think). Importantly, it can fit Pachinko Allocation topic models, which I have been meaning to look into as a potential model to look for structure in metagenomics datasets. Might be the next step after I give Latent Dirichlet Allocation models a try.