Recommender Systems Optimization Goals artwork

Recommender Systems Optimization Goals

Data Skeptic

September 1, 2026

In part two of the Data Skeptic Recommender Systems season finale, Kyle asks a deceptively difficult question: what should recommender systems actually optimize for?
Speakers: Kyle Polich, Gregor Dunaburr, Andrea Ayanna, Hui Li, Boya Zhu, Václav Bláhut, Anas Bahae, Rebecca Salgonik, David Liu, Corey Zechman, Kat Fedorova, Ashmi Banerjee, Irvin Derveshaw, Yashar Delju, Fuyuan Liu, Hannes Rosenberg

Topics: Technology, Science

**Kyle Polich** (0:00)
Welcome back to the Data Skeptic Recommender Systems Season Finale. In part one, we traced those systems from a 1992 research team at Xerox PARC, all the way up until the Netflix Prize. As you'll recall, the Netflix Prize has a 1 to 5 rating. At least that was their original rating system. They had a whole lot of data on it they released. And they used RSME, root mean square error, between your prediction of 1 through 5, and their holdout data of actual ratings given by actual users to actual movies. And the criticism that I had for it was that your ground truth data and the thing you'd like to predict are not the same thing. The ratings provided by Netflix represented how someone felt about the movie after watching it. This is not the same question as what movie would you most like to watch next?
Now maybe you find that to be a pedantic distinction, but in pedantry we find the story. The rating was a good proxy, but is not precisely the same thing as the outcome you're seeking. And even if, as machine learning people do, we just kind of incrementally inch up and up and up until we've overfit a data set, it seems that root mean square error is, what do they say, necessary but not sufficient? So that leads me to the question I want to tackle today. What should we be actually optimizing for in recommender systems? And that's where we pick up today.
Thanks again to Run and Punch for use of their song We've Never Met.
So the Netflix Prize came and went, and these efforts did not immediately yield an oracle of perfect divinement of what we should all watch next. They still did better than Random Chance, but what's the ceiling look like here? What's realistic and what's science fiction? Well, meanwhile, back in the real world, most recommenders are not really optimizing for accuracy at all. Most are optimizing for engagement, or maybe I should say the most successful ones, the ones that survive natural selection on the internet, engagements like clicks, watch time, and time spent on the platform.
And as a result, we all now know the term doom scrolling. When you optimize for engagement, you get whatever holds attention. And what holds attention is not always good for you. Here's a clip from Gregor Dunaburr from my episode with him and his co-authors, bearing the same name as his paper, Why am I seeing this? He had a good insight about online flame wars.

**Gregor Dunaburr** (2:34)
For example, one interesting thing is that is what is called that in flames online, you know, when there is a big fight online and people are really interacting a lot and getting upset a lot and keep fighting. And for the recommender system, this is not really different from people that are liking a new song because they are going there commenting and interacting and spending time there. So this brings an interaction that is not really positive. People are getting more upset, more biased, more polarized. But for the recommender, it's not really easy to understand.
And probably if you are just trying to maximize engagement, so how much time people spend on the social, because let's say this is what you think is good for them, is they are enjoying it, so you are trying to maximize the time you spend there.

**Kyle Polich** (3:26)
That is the engine of the feedback loop. The recommender shows you something, your reaction becomes tomorrow's training data.
This is Andrea Ayanna on how that quietly hardens into a filter bubble.

**Andrea Ayanna** (3:39)
In a nutshell, what happens with recommender systems is that they are usually optimized to the user engagement with something. For example, for click-through rates, so we want the user to click more on certain articles. And to achieve this engagement, what they are usually trying to do is to maximize the relevance or the similarity of what's recommended to what the user has already consumed, because then we know for sure, in case this article will be interesting to the user. And this is what usually creates this feedback loop in which the user consumes some news, let's say some right-wing politics news, and then the recommender knows, okay, the user likes right-wing politics, I will just keep recommending right-wing politics.

**Kyle Polich** (4:19)
And that's not only about politics.
Here's Hui Li, a PhD student at UC Irvine, and now a technologist at the US Federal Trade Commission. He built a tool to actively probe these feeds.

**Hui Li** (4:31)
And we found that, you know, auto-alike can drive the recommendation systems across both dimensions as well. So for example, we choose, you know, sad mental health. We were able to do that compared to the controlled experiment. If you do choose a sad topic, like for example, sad cats, the overall, if you look at all the content that is being served, because there are other content other than sad cats, is that the overall sentiment starts to get sad as well. So the agents started getting TikTok that were sadder in nature, not just sad cats.

23 more minutes of transcript below

Thousands of transcripts fetched by people building searchable podcast archives

Feed this to your agent

Try it now — copy, paste, done:

curl -H "x-api-key: pt_demo" \
  https://spoken.md/transcripts/1000651996090

Works with Claude, ChatGPT, Cursor, and any agent that makes HTTP calls.

From $0.10 per transcript. No subscription. Credits never expire. Prices exclude VAT, added at checkout for EU customers. Not what you expected? Email us within 14 days with 20 or fewer credits used and we refund the pack in full.

Using your own key:

curl -H "x-api-key: YOUR_KEY" \
  https://spoken.md/transcripts/YOUR_EPISODE_ID