Given a corpus, we developed several supervised machine learning models such as Multinomial Naive-Bayes, Multi-layer Perceptron and Convolution Neural Networks that were trained on a subset of the corpus data, and then tasked with doing topic classification on unseen data.