We consider the common setting where one observes a large number of opinionated text documents and related covariates, such as the text of online reviews along with the date of the review and the author demographic information. In this setting it can be of interest to understand how the covariates determine the text composition, as well as the prevalence, sentiment, and/or discourse of various discussion themes. Yet, most topic modeling methods in the machine learning literature are designed to summarize the text for the purpose of exploratory analysis and not to perform this type of formal statistical inference. Further, topic modeling methods generally do not try to estimate the sentiment or discourse of discussion along separate topics that can be critical in business applications (e.g., for summarizing service or product quality). We develop a topic model called the structural topic and sentiment-discourse (STS) model that introduces a new document-level latent variable that captures the sentiment and/or discourse (termed as “sentiment-discourse”) for each topic, which modulates the word frequency within a topic. These latent topic sentiment-discourse variables are controlled by document-level covariates to allow for experimental control and regression analysis. We also introduce new computational methods to resolve scalability issues that have forced previous models to restrict to a small number of categorical covariates. We benchmark the STS model on three real-world data sets from surveys, blogs, and Yelp restaurant reviews around the COVID-19 pandemic. Our model recovers meaningful results including rich insights about how COVID-19 affects online reviews, demonstrating that the STS model can be useful for regression analysis with text data in addition to topic modeling’s traditional use of descriptive analysis. This paper was accepted by Anindya Ghose, information systems. Supplemental Material: The online appendices and data files are available at https://doi.org/10.1287/mnsc.2022.00261 . An updated version of the R package implementing the STS model is available at https://CRAN.R-project.org/package=sts .
Read full abstract