# Topic model

In machine learning and natural language processing, a **topic model** is a type of statistical model for discovering the abstract "topics" that occur in a collection of documents. Topic modeling is a frequently used text-mining tool for discovery of hidden semantic structures in a text body. Intuitively, given that a document is about a particular topic, one would expect particular words to appear in the document more or less frequently: "dog" and "bone" will appear more often in documents about dogs, "cat" and "meow" will appear in documents about cats, and "the" and "is" will appear equally in both. A document typically concerns multiple topics in different proportions; thus, in a document that is 10% about cats and 90% about dogs, there would probably be about 9 times more dog words than cat words. The "topics" produced by topic modeling techniques are clusters of similar words. A topic model captures this intuition in a mathematical framework, which allows examining a set of documents and discovering, based on the statistics of the words in each, what the topics might be and what each document's balance of topics is.

Topic models are also referred to as probabilistic topic models, which refers to statistical algorithms for discovering the latent semantic structures of an extensive text body. In the age of information, the amount of the written material we encounter each day is simply beyond our processing capacity. Topic models can help to organize and offer insights for us to understand large collections of unstructured text bodies. Originally developed as a text-mining tool, topic models have been used to detect instructive structures in data such as genetic information, images, and networks. They also have applications in other fields such as bioinformatics.[1]

## History

An early topic model was described by Papadimitriou, Raghavan, Tamaki and Vempala in 1998.[2] Another one, called probabilistic latent semantic analysis (PLSA), was created by Thomas Hofmann in 1999.[3] Latent Dirichlet allocation (LDA), perhaps the most common topic model currently in use, is a generalization of PLSA. Developed by David Blei, Andrew Ng, and Michael I. Jordan in 2002, LDA introduces sparse Dirichlet prior distributions over document-topic and topic-word distributions, encoding the intuition that documents cover a small number of topics and that topics often use a small number of words.[4] Other topic models are generally extensions on LDA, such as Pachinko allocation, which improves on LDA by modeling correlations between topics in addition to the word correlations which constitute topics. Hierarchical latent tree analysis (HLTA) is an alternative to LDA, which models word co-occurrence using a tree of latent variables and the states of the latent variables, which correspond to soft clusters of documents, are interpreted as topics.

## Topic models for context information

Approaches for temporal information include Block and Newman's determination of the temporal dynamics of topics in the *Pennsylvania Gazette* during 1728–1800. Griffiths & Steyvers use topic modeling on abstracts from the journal *PNAS* to identify topics that rose or fell in popularity from 1991 to 2001. Nelson has been analyzing change in topics over time in the *Richmond Times-Dispatch* to understand social and political changes and continuities in Richmond during the American Civil War. Yang, Torget and Mihalcea applied topic modeling methods to newspapers from 1829–2008. Mimno used topic modelling with 24 journals on classical philology and archaeology spanning 150 years to look at how topics in the journals change over time and how the journals become more different or similar over time.

Yin et al.[6] introduced a topic model for geographically distributed documents, where document positions are explained by latent regions which are detected during inference.

Chang and Blei[7] included network information between linked documents in the relational topic model, which allows to model links between websites.

The author-topic model by Rosen-Zvi et al.[8] models the topics associated with authors of documents to improve the topic detection for documents with authorship information.

HLTA was applied to a collection of recent research papers published at major AI and Machine Learning venues. The resulting model is called The AI Tree. The resulting topics are used to index the papers at aipano.cse.ust.hk to help researchers track research trends and identify papers to read, and help conference organizers and journal editors identify reviewers for submissions.

## Algorithms

In practice researchers attempt to fit appropriate model parameters to the data corpus using one of several heuristics for maximum likelihood fit. A recent survey by Blei describes this suite of algorithms.[9] Several groups of researchers starting with Papadimitriou et al.[2] have attempted to design algorithms with probable guarantees. Assuming that the data were actually generated by the model in question, they try to design algorithms that probably find the model that was used to create the data. Techniques used here include singular value decomposition (SVD) and the method of moments. In 2012 an algorithm based upon non-negative matrix factorization (NMF) was introduced that also generalizes to topic models with correlations among topics.[10]

## See also

- Explicit semantic analysis
- Latent semantic analysis
- Latent Dirichlet allocation
- Hierarchical Dirichlet process
- Non-negative matrix factorization

### Software/libraries

- BigARTM (https://github.com/bigartm/bigartm)
- Mallet (software project) (http://mallet.cs.umass.edu/)
- Stanford Topic Modeling Toolkit (http://nlp.stanford.edu/software/tmt/tmt-0.4/)
- Gensim – Topic Modeling for Humans (http://radimrehurek.com/gensim/)
- topicmodels R package (https://cran.r-project.org/package=topicmodels)
- Lettier's LDA Topic Modeling - a PureScript, browser-based implementation of LDA topic modeling. (Tool: https://lettier.com/projects/lda-topic-modeling/ Source: https://github.com/lettier/lda-topic-modeling)
- jLDADMM A Java package for topic modeling on normal or short texts. jLDADMM includes implementations of the LDA topic model and the
*one-topic-per-document*Dirichlet Multinomial Mixture model. jLDADMM also provides an implementation for document clustering evaluation to compare topic models. - TopicModelsVB.jl Julia package (https://github.com/ericproffitt/TopicModelsVB.jl)
- STTM A Java package for short text topic modeling (https://github.com/qiang2100/STTM). STTM includes these following algorithms: Dirichlet Multinomial Mixture (DMM) in conference KDD2014, Biterm Topic Model (BTM) in journal TKDE2016, Word Network Topic Model (WNTM ) in journal KAIS2018, Pseudo-Document-Based Topic Model (PTM) in conference KDD2016, Self-Aggregation-Based Topic Model (SATM) in conference IJCAI2015, (ETM) in conference PAKDD2017, Generalized P´olya Urn (GPU) based Dirichlet Multinomial Mixturemodel (GPU-DMM) in conference SIGIR2016, Generalized P´olya Urn (GPU) based Poisson-based Dirichlet Multinomial Mixturemodel (GPU-PDMM) in journal TIS2017 and Latent Feature Model with DMM (LF-DMM) in journal TACL2015. STTM also includes six short text corpus for evaluation. STTM presents three aspects about how to evaluate the performance of the algorithms (i.e., topic coherence, clustering, and classification).
- A Java implement of HLTA: https://github.com/kmpoon/hlta

## References

- Blei, David (April 2012). "Probabilistic Topic Models".
*Communications of the ACM*.**55**(4): 77–84. doi:10.1145/2133806.2133826. - Papadimitriou, Christos; Raghavan, Prabhakar; Tamaki, Hisao; Vempala, Santosh (1998). "Latent Semantic Indexing: A probabilistic analysis" (Postscript).
*Proceedings of ACM PODS*: 159–168. doi:10.1145/275487.275505. ISBN 978-0897919968. - Hofmann, Thomas (1999). "Probabilistic Latent Semantic Indexing" (PDF).
*Proceedings of the Twenty-Second Annual International SIGIR Conference on Research and Development in Information Retrieval*. Archived from the original (PDF) on 2010-12-14. - Blei, David M.; Ng, Andrew Y.; Jordan, Michael I; Lafferty, John (January 2003). "Latent Dirichlet allocation".
*Journal of Machine Learning Research*.**3**: 993–1022. doi:10.1162/jmlr.2003.3.4-5.993. - http://topicmodels.west.uni-koblenz.de/ckling/tmt/svd_ap.html
- Yin, Zhijun (2011). "Geographical topic discovery and comparison".
*Proceedings of the 20th International Conference on World Wide Web*: 247–256. doi:10.1145/1963405.1963443. ISBN 9781450306324. - Chang, Jonathan (2009). "Relational Topic Models for Document Networks" (PDF).
*Aistats*.**9**: 81–88. - Rosen-Zvi, Michal (2004). "The author-topic model for authors and documents".
*Proceedings of the 20th Conference on Uncertainty in Artificial Intelligence*: 487–494. arXiv:1207.4169. - Blei, David M. (April 2012). "Introduction to Probabilistic Topic Models" (PDF).
*Comm. ACM*.**55**(4): 77–84. doi:10.1145/2133806.2133826. - Sanjeev Arora; Rong Ge; Ankur Moitra (April 2012). "Learning Topic Models—Going beyond SVD". arXiv:1204.1956 [cs.LG].

## Further reading

- Steyvers, Mark; Griffiths, Tom (2007). "Probabilistic Topic Models". In Landauer, T.; McNamara, D; Dennis, S.; et al. (eds.).
*Handbook of Latent Semantic Analysis*(PDF). Psychology Press. ISBN 978-0-8058-5418-3. Archived from the original (PDF) on 2013-06-24. - Blei, D.M.; Lafferty, J.D. (2009). "Topic Models" (PDF).
- Blei, D.; Lafferty, J. (2007). "A correlated topic model of
*Science*".*Annals of Applied Statistics*.**1**(1): 17–35. arXiv:0708.3601. doi:10.1214/07-AOAS114. - Mimno, D. (April 2012). "Computational Historiography: Data Mining in a Century of Classics Journals" (PDF).
*Journal on Computing and Cultural Heritage*.**5**(1): 1–19. doi:10.1145/2160165.2160168. - Marwick, Ben (2013). "Discovery of Emergent Issues and Controversies in Anthropology Using Text Mining, Topic Modeling, and Social Network Analysis of Microblog Content". In Yanchang, Zhao; Yonghua, Cen (eds.).
*Data Mining Applications with R*. Elsevier. pp. 63–93. - Jockers, M. 2010 Who's your DH Blog Mate: Match-Making the Day of DH Bloggers with Topic Modeling Matthew L. Jockers, posted 19 March 2010
- Drouin, J. 2011 Foray Into Topic Modeling Ecclesiastical Proust Archive. posted 17 March 2011
- Templeton, C. 2011 Topic Modeling in the Humanities: An Overview Maryland Institute for Technology in the Humanities Blog. posted 1 August 2011
- Griffiths, T.; Steyvers, M. (2004). "Finding scientific topics".
*Proceedings of the National Academy of Sciences*.**101**(Suppl 1): 5228–35. Bibcode:2004PNAS..101.5228G. doi:10.1073/pnas.0307752101. PMC 387300. PMID 14872004. - Yang, T., A Torget and R. Mihalcea (2011) Topic Modeling on Historical Newspapers. Proceedings of the 5th ACL-HLT Workshop on Language Technology for Cultural Heritage, Social Sciences, and Humanities. The Association for Computational Linguistics, Madison, WI. pages 96–104.
- Block, S. (January 2006). "Doing More with Digitization: An introduction to topic modeling of early American sources".
*Common-place the Interactive Journal of Early American Life*.**6**(2). - Newman, D.; Block, S. (March 2006). "Probabilistic Topic Decomposition of an Eighteenth-Century Newspaper" (PDF).
*Journal of the American Society for Information Science and Technology*.**57**(5): 753–767. doi:10.1002/asi.20342.

## External links

- Mimno, David. "Topic modeling bibliography".
- Brett, Megan R. "Topic Modeling: A Basic Introduction". Journal of Digital Humanities.
- Topic Models Applied to Online News and Reviews Video of a Google Tech Talk presentation by Alice Oh on topic modeling with LDA
- Modeling Science: Dynamic Topic Models of Scholarly Research Video of a Google Tech Talk presentation by David M. Blei
- Automated Topic Models in Political Science Video of a presentation by Brandon Stewart at the Tools for Text Workshop, 14 June 2010
- Shawn Graham, Ian Milligan, and Scott Weingart "Getting Started with Topic Modeling and MALLET". The Programming Historian. Archived from the original on 2014-08-28. Retrieved 2014-05-29.
- Blei, David M. "Introductory material and software"
- code, demo - example of using LDA for topic modelling