§13.5
Topic Models and Text Dashboards
A team has twenty thousand customer reviews and no time to read them. Sentiment scoring tells them whether the corpus is broadly positive or negative. Classification tells them how to route what's already labelled. Neither answers the question that usually arrives first: "what are people talking about?" Topic modelling is the unsupervised method that returns an answer — themes that recur across the corpus, each described by a distribution of words a manager can interpret.
The teaching arc of this article is short. What a topic model is (an LDA-style mixture). How to read what it returns. Why the names come from people, not the algorithm. And how to turn the result into a dashboard that supports an operating cadence.
The Executive Question
What recurring themes show up across our reviews, support tickets, or social posts — and which ones are growing fast enough to act on?
The honest version: a topic model proposes themes; the analyst confirms them; the manager decides which ones merit action. Each of those three steps is essential. Skipping the middle one is the most common topic-modelling failure.
What a Topic Model Returns
The dominant classical method is Latent Dirichlet Allocation (LDA). The intuition without the math:
- Decide on a number of topics, K (the analyst's choice).
- The algorithm models each document as a mixture of those K topics.
- Each topic is modelled as a distribution over words.
- Fitting the model finds the topic-word and document-topic distributions that best explain the observed word counts.
The output is two tables:
- Topic-word distribution. For each topic, the words and their probabilities under that topic. This is what the analyst reads to name the topic.
- Document-topic distribution. For each document, the share of its words attributable to each topic. This is what gets aggregated into dashboards and time series.
A standard inspection view:
Top words per topic — LDA on 20,000 Bean & Basket reviews
- app0.18
- login0.12
- crash0.10
- password0.08
- update0.07
- screen0.06
- wait0.21
- slow0.14
- long0.10
- line0.09
- minutes0.07
- morning0.06
- latte0.16
- smooth0.13
- flavor0.11
- rich0.09
- fresh0.08
- perfect0.07
- cozy0.15
- music0.11
- lighting0.09
- clean0.08
- seating0.07
- window0.06
The algorithm produces word distributions. The names — "Mobile app issues", "Drink quality praise" — come from a human reading the words and a sample of documents.
Notice what the algorithm does not produce: the topic names. The labels above each panel are an analyst's reading of the word lists and a sample of documents that loaded heavily on each topic. The model's contribution is the word lists. The naming is human judgment. This is not a technicality — it is the most important sentence in the chapter.
Reading Topics, Then Documents
A rigorous topic-model workflow has three steps:
- Read the words. Look at the top 10–20 words for each topic. If they look thematically coherent, that is a candidate topic; if they look like a list of unrelated words, the model has produced a "junk topic" that should be flagged.
- Read example documents. For each topic, pull 5–10 documents that load heavily on it. Do they match the candidate theme? If yes, the topic is real; if no, the theme needs to be reframed.
- Name the topic. Write a one-line name. If you can't write a name, the topic isn't yet stable enough to use.
The procedure looks bureaucratic and is necessary. Topic models routinely produce three useful topics, one junk topic, and one borderline topic that splits between two real themes. Without inspection, all five end up labelled and used.
Topic Trends Over Time
The strongest managerial application of topic models is the trends view — topic share by month or week.
Topic share over twelve months — the app issues topic is rising fast
This is the chart that earns topic modelling its place. A single overall sentiment number cannot show that one theme is doubling in share while another is fading. The trend view supplies the operating cadence — what is the team responsible for now that it wasn't responsible for three months ago?
A few notes on reading the trend:
- Topic shares sum to 1. A topic rising means another topic falling. Don't read absolute movements without context.
- New themes appear. Reviews start mentioning something the model wasn't fit on (a product launch, an outage). The right move is periodic refitting — the topic structure is not permanent.
- Levels are noisier than trends. A single month's share can wobble. The slope across several months is the signal.
Topic Models in the Text Dashboard
Topic modelling rarely ships as a single chart. The natural home is a text dashboard that sits next to the supervised classification system from §13.4:
- Top complaints this week (top topics among 1- and 2-star reviews).
- Emerging topics (topics growing fastest by share).
- Sentiment by topic (which topics are positive vs. negative).
- Topic × region heatmap (where each topic concentrates).
- Urgent issue alerts (combinations of classification + topic that trigger action).
- Competitor mentions (entity tracking layered on top).
The cadence: a weekly text dashboard supplements the Part IV decision loop. The Part IV dashboard answers "is the business healthy?"; the text dashboard answers "what are customers talking about?"
The Glassdoor and Twitter case studies linked from Topic4_Text_Analysis_NLP.Rmd show the same idea — topic models on review and social data, surfaced as dashboards, that change how a team prioritizes work.
When Topic Models Are the Wrong Tool
Topic models are useful when the team doesn't yet know what themes exist. Once the themes are known and stable, supervised classification (§13.4) usually does the same work more reliably:
- Stable themes → classification. Build a labelled set of "billing", "delivery", "app", "quality"; train a router.
- Unknown themes → topic model. Discover what's in the corpus before deciding what to label.
- Themes that may have shifted → topic model. A re-run after six months reveals whether the supervised buckets are still capturing what the corpus contains.
For most production text systems, the right pairing is supervised classification on known buckets + a quarterly topic model refit to catch new themes.