perform LDA