Papers
Topics
Authors
Recent
Search
2000 character limit reached

PopSteer: Steering Popularity Bias in Recommenders

Updated 22 January 2026
  • PopSteer is a post-hoc framework that leverages a Sparse Autoencoder to steer latent user embeddings, effectively addressing popularity bias in recommender systems.
  • It integrates a pretrained SASRec backbone with controlled neuron adjustments using synthetic user profiles, enabling fine-grained modulation between popular and unpopular content.
  • Experimental results demonstrate high reconstruction fidelity with minimal NDCG loss, while significantly improving fairness metrics such as item coverage and the Gini index.

PopSteer is a post-hoc framework designed to interpret and mitigate popularity bias in recommender systems by leveraging a Sparse Autoencoder (SAE) as an interpretable interface to steer the latent representations of user preferences. Operating atop a frozen, pretrained recommender (specifically SASRec in reported experiments), PopSteer enables fine-grained modulation of recommendation exposure between head (popular) and tail (unpopular) content while maintaining transparency at the neuron level. The method relies on synthetic user profile generation, effect size-based neuron identification, and controlled adjustment of critical hidden activations to systematically shift recommendation distributions without retraining the underlying model (Ahmadov et al., 21 Jan 2026).

1. Model Architecture and Training Protocol

PopSteer uses a two-model pipeline: a pretrained sequential recommender (SASRec) and a post-hoc Sparse Autoencoder.

SASRec Backbone

  • User embedding dimension: d=64d = 64
  • Architecture: 2-layer Transformer, 2 attention heads, feed-forward 256, dropout 0.5, GELU activations, layer norm ϵ=10−12\epsilon = 10^{-12}
  • Training: Adam optimizer (lr=10−3\mathrm{lr} = 10^{-3}), batch size 2048, cross-entropy loss, early stopping (patience=10) on validation NDCG@10

Sparse Autoencoder (SAE)

  • Input dimension: dd (user embeddings from SASRec)
  • Hidden layer size: Overcomplete, N∈{32,64,96,128}N \in \{32, 64, 96, 128\}
  • Output dimension: dd
  • Encoder: Linear map, z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}}), Wenc∈Rd×NW_{\mathrm{enc}} \in \mathbb{R}^{d \times N}
  • Sparsification: a=TopActK(z)a = \mathrm{TopAct}_K(z), retaining only top K∈{36,40,44,48,52,56}K \in \{36, 40, 44, 48, 52, 56\} activations
  • Decoder: Linear reconstruction, ϵ=10−12\epsilon = 10^{-12}0, ϵ=10−12\epsilon = 10^{-12}1

Training Objective:

ϵ=10−12\epsilon = 10^{-12}2

where ϵ=10−12\epsilon = 10^{-12}3, ϵ=10−12\epsilon = 10^{-12}4, ϵ=10−12\epsilon = 10^{-12}5, and ϵ=10−12\epsilon = 10^{-12}6 (typically 0.1) is an auxiliary penalty for reviving dead neurons. No nonlinearities aside from TopAct are used for sparsification.

Reconstruction fidelity: Cosine similarity ϵ=10−12\epsilon = 10^{-12}7 between original and reconstructed embeddings; NDCG@10 drop ϵ=10−12\epsilon = 10^{-12}8, confirming that the SAE preserves decision-critical information.

2. Identification of Popularity-Sensitive Neurons

PopSteer introduces a synthetic-neuron analysis phase to disambiguate popularity encoding within the SAE.

Synthetic Profile Generation

  • Popular set (ϵ=10−12\epsilon = 10^{-12}9): Top 10% most popular items in the interaction matrix lr=10−3\mathrm{lr} = 10^{-3}0
  • Unpopular set (lr=10−3\mathrm{lr} = 10^{-3}1): Bottom 10%
  • Synthetic datasets: lr=10−3\mathrm{lr} = 10^{-3}2, each with lr=10−3\mathrm{lr} = 10^{-3}3 profiles of length lr=10−3\mathrm{lr} = 10^{-3}4 (sampled with replacement), fed through the frozen SASRec to produce lr=10−3\mathrm{lr} = 10^{-3}5

Effect Size Computation (Cohen’s d)

For each hidden neuron lr=10−3\mathrm{lr} = 10^{-3}6, activations (lr=10−3\mathrm{lr} = 10^{-3}7) are aggregated for both synthetic populations:

lr=10−3\mathrm{lr} = 10^{-3}8

where lr=10−3\mathrm{lr} = 10^{-3}9 and dd0 are the mean and standard deviation across synthetic users. Neurons with large positive dd1 specialize in popularity, while large negative dd2 indicate tail-specialization. Distributional assumptions are supported by observed near-Gaussianity of activations (dd3 of neurons with dd4, dd5 with dd6).

3. Neuron Steering and Inference Intervention

At prediction time, PopSteer perturbs the SAE hidden activations of real user embeddings to counteract or enhance popularity signals.

Inference-Time Steering Procedure

Given dd7 from the analysis phase, for each user dd8:

  1. User embedding: dd9
  2. SAE pre-activation: N∈{32,64,96,128}N \in \{32, 64, 96, 128\}0
  3. Targeted adjustment:

N∈{32,64,96,128}N \in \{32, 64, 96, 128\}1

  • N∈{32,64,96,128}N \in \{32, 64, 96, 128\}2 is the standard deviation over synthetic profiles
  • N∈{32,64,96,128}N \in \{32, 64, 96, 128\}3 (default: N∈{32,64,96,128}N \in \{32, 64, 96, 128\}4) is the effect size threshold
  • Steering weight:

    N∈{32,64,96,128}N \in \{32, 64, 96, 128\}5

    with N∈{32,64,96,128}N \in \{32, 64, 96, 128\}6 (recommended: N∈{32,64,96,128}N \in \{32, 64, 96, 128\}7)

  1. Sparsification: N∈{32,64,96,128}N \in \{32, 64, 96, 128\}8
  2. Steered embedding: N∈{32,64,96,128}N \in \{32, 64, 96, 128\}9
  3. Item scoring: dd0 or alternative model-specific scoring

Suppressing neurons with dd1 and boosting those with dd2 systematically redirects recommendations away from head items toward the long tail, providing fine-grained control over the exposure distribution.

4. Experimental Design and Benchmarking

Experiments are conducted on three canonical datasets:

Dataset Users Items Interactions Core
MovieLens 1M 6,040 3,417 999,611 5-core
BeerAdvocate 10,464 13,907 1,395,865 5-core
Yelp 20,799 16,253 983,530 20-core
  • Data split: Chronological, leave-one-out for test, penultimate for validation.
  • SAE training: Adam, batch size 2048, typically converging in 10–20 epochs.
  • Baselines: Provider Max-Min Fair Re-ranking (P-MMF), Personalized Calibration Targets (PCT), Inverse Popularity Ranking (IPR), FA*IR, Dynamic User-oriented Rerank (DUOR), and Random re-ranking.
  • Tuning: Grid search on fairness/'knob' parameters to map full accuracy–fairness frontiers.

Metrics: NDCG@10 (overall and head/tail-decomposed), item coverage (unique items recommended ≥5 times), Gini index of exposure.

5. Results, Interpretability, and Sensitivity

Reconstruction and Fidelity

  • The SAE achieves reconstruction cosine similarity dd3 and maintains NDCG@10 drop dd4, demonstrating near lossless user state transfer.

Fairness–Accuracy Trade-off

  • PopSteer dominates "nDCG vs Item Coverage" and "nDCG vs Gini" frontiers; on MovieLens 1M and BeerAdvocate, it outperforms all baselines; on Yelp, it provides superior fairness at a modest NDCG cost (less than 5%), contrasting with more severe accuracy declines in competing methods.

Interpretability Analyses

  • Activation profile: The most positive-dd5 neuron's top-10 users exhibit head-item shares dd6; most negative-dd7 neurons' corresponding users fallback to dd8.
  • Controlled perturbation: Gini index decreases monotonically as more positive-dd9 neurons are suppressed; the opposite is observed for negative-z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})0 manipulations.
  • Embedding visualization: UMAP projections reveal that, post-steering, real users migrate away from the popular cluster toward the tail-user cluster; Wasserstein distances confirm the shift (z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})1).

Ablation and Sensitivity

  • Random noise: Injecting Gaussian noise or randomly steering neurons yields no fairness improvement, confirming the necessity of Cohen's-z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})2-informed selection and variance-adaptive scaling.
  • Parameter effects: Increasing z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})3 systematically reduces Gini index but sharply compromises NDCG@10 above z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})4; z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})5 exerts milder influence, consistent with head-layer dominance in the backbone.

6. End-to-End PopSteer Pipeline and Reproducibility

High-level Pseudocode

Wenc∈Rd×NW_{\mathrm{enc}} \in \mathbb{R}^{d \times N}1

Hyperparameter Recommendations

  • z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})6
  • z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})7, z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})8
  • SAE: z=WencT(x−bpre)z = W_{\mathrm{enc}}^T(x - b_{\mathrm{pre}})9
  • Synthetic profiles: Wenc∈Rd×NW_{\mathrm{enc}} \in \mathbb{R}^{d \times N}0

Capable of inference-time deployment, PopSteer requires only a single neuron-detection phase and no model retraining for subsequent steering. The method is adaptable for broader bias phenomena or other backbone architectures with no alteration of the core pipeline.


For further methodology, datasets, and extended analyses, see (Ahmadov et al., 21 Jan 2026).

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to PopSteer.