Imagine asking for a restaurant recommendation. The system suggests a taco restaurant. You do not dislike the whole suggestion—you simply do not want tacos today. A normal recommender gives you two poor choices: accept the result or start over. Our work gives you a third choice: say “not tacos” and continue the conversation.
The recommender shows a few words explaining each suggestion; you reject the word that is wrong, and the next suggestion moves away from it without forgetting everything else you like.
Follow one real example
This example comes directly from the experiments. The simulated user is looking for Kekou Gelato House, but the system does not know that target. It must discover the user’s current intention from a sequence of corrections.
taco · mexican · chip
“Not taco.”pork · fry · sandwich
“Not pork.”cake · cheese · japanese
“Not cake.”gelato · tea · milk
✓ AcceptedWhy does “not taco, not pork, not cake” lead to gelato? Those three corrections alone are not enough. The recommender also remembers what this person liked in the past. The corrections remove the wrong directions; the person’s history supplies the positive direction toward desserts.
That is the complete story behind the three papers. Each paper fixes one part of this conversation.
Paper 1: let people correct the explanation
The first system recommends an item and attaches a short explanation made from review words. A beer might be described as smoky, dark, bready; a song might be pop, bass, concert. These words are not decorative labels. They are buttons the user can disagree with.
If the user rejects smoky, the model lowers recommendations connected to smokiness while keeping other evidence about the person’s taste. This is more useful than a thumbs-down because it tells the system what was wrong.

The system could explain a recommendation, but the explanation was mostly something to read.
The same explanation became an editing interface: reject one phrase and update the list.
Paper 2: keep the conversation useful after several corrections
The first design worked, but repeated corrections created a new problem. Suppose the system represents a user with five preference signals:
A simple implementation sets smoky to zero. Do this repeatedly and the whole preference description becomes weaker and weaker. Later corrections have less information to work with.
The second paper introduces Energy Redistribution. When one phrase is rejected, its weight is not merely discarded. The system redistributes attention among the remaining preferences. In plain language: “smoky” becomes less important, while the surviving evidence—perhaps “fruit,” “sweet,” and “caramel”—continues to carry a strong signal.

This paper also replaces slow item-by-item scoring with a variational autoencoder, which produces the entire recommendation list in one pass. The practical result is a faster system that remains useful through a multi-turn conversation.
Paper 3: move the right items in the list
The final question is surprisingly simple: what should the algorithm optimize after the user says “not taco”?
An earlier approach tried to create the largest possible score gap between taco and non-taco restaurants. But the user does not care whether an invisible score changes from 0.8 to -20. They care whether taco restaurants move down and better alternatives move up.
The third paper optimizes that ordering directly:
- 1 Taco restaurant
- 2 Sandwich shop
- 3 Dessert café
- 1 Sandwich shop ↑
- 2 Dessert café ↑
- 3 Taco restaurant ↓
The scientific rule is a pair of ranking constraints:
The full formulation adds a safety margin and slack variables for cases where every requested ordering cannot be satisfied simultaneously. The key point is concrete: optimize the movement people can see, not an unnecessarily large hidden score change.
In experiments on Yelp and BeerAdvocate, this ranking-focused method found target items more often, needed slightly fewer conversation rounds, and ran faster than the earlier score-gap method. In some settings, its retrieval success was three times that of the nearest comparison method.
The two complete conversations from the paper

Three papers, three understandable improvements
Show explanation words and allow any one of them to become a correction.
Redistribute the rejected phrase’s weight so repeated corrections do not drain the signal.
Directly move mismatched items down and better alternatives up.
Together, these papers change recommendation from a one-shot guess into a repairable conversation. The system may begin with the wrong restaurant, beer, or album. What matters is that the user can explain the mistake in a few words—and that the next result meaningfully responds.
Read the research
- Ga Wu, Kai Luo, Scott Sanner, and Harold Soh. Deep Language-based Critiquing for Recommender Systems, RecSys, 2019.
- Kai Luo, Hojin Yang, Ga Wu, and Scott Sanner. Deep Critiquing for VAE-based Recommender Systems, SIGIR, 2020.
- Hanze Li, Scott Sanner, Kai Luo, and Ga Wu. A Ranking Optimization Approach to Latent Linear Critiquing for Conversational Recommender Systems, RecSys, 2020.