Pinterest Home Feed's Multi-Objective Optimization Evolution
Key point
Pinterest optimized feed diversity and quality together, evolving from DPP to SSD and soft spacing.
Details
The final recommendation stage of Pinterest's Home feed is not simply about predicting the click probability of each Pin, but rather about optimizing the composition of the entire feed. Among the recommendation pipeline stages—retrieval, pre-ranking, ranking, and re-ranking—this stage is the key layer that aligns short-term engagement, long-term satisfaction, new-user usability expansion, and business requirements all together.
Diversity is a core axis of this layer. Removing feed-level diversity can increase immediate reactions such as saves on day 1, but by week 2 it actually backfires, and session time also decreases. The narrower and more repetitive the content shown, the more the user's behavioral signals reinforce that direction, creating a vicious cycle in which the system learns to produce an even less diverse feed again.
The initial version, V1: DPP (Determinantal Point Process), was introduced in 2021. DPP uses a kernel matrix in which the diagonal elements represent each item's relevance/quality and the off-diagonal elements represent similarity between items, and Pinterest constructed this similarity using GraphSAGE and taxonomy signals. Since its launch, it has become an important component—an ablation removing DPP showed time spent impressions dropping by more than 2% after the first week.
This later evolved into V2: Sliding Spectrum Decomposition (SSD). SSD decomposes the candidate feed into sliding windows to track latent spectra (topic, intent, style), and applies position-adaptive diversification that boosts under-exposed spectra while gently suppressing overly repetitive spectra. It has lower computational complexity than DPP and is less sensitive to Cholesky-based decomposition, positive semi-definite constraints, log-determinants, and unstable numerical issues, making it easier to implement in a PyTorch style and giving lower serving latency.
In early 2025, Pinterest began running SSD, built on PyTorch, on the company's model serving cluster. This made it possible to feed richer embeddings into pairwise Pin similarity computations, more broadly leveraging signals such as visual embeddings, text embeddings, and graph embeddings to improve the balance between diversity and engagement.
The next step was the Unified Soft-Spacing Framework. By combining a quality objective with SSD, a soft spacing penalty was applied so that content with quality risk in particular would not cluster in nearby positions. This approach reduces the backfill shortages and degraded user experience that can arise from relying solely on strong filtering as before, while also giving more refined control over the distribution of sensitive content. This logic was deployed in mid 2025, and by late 2025 it had been abstracted into a config-based, extensible framework.
The infrastructure evolved alongside this. In the DPP era, a chain connecting the Lightweight Reranking node, the DPP node, and heuristic spacing logic was tightly bundled within the backend—which fit well with existing dependencies but made local testing and experimentation difficult, with low flexibility. Since the adoption of SSD, a significant portion of the blending logic has moved to the PyTorch-based model serving cluster, and the direction going forward is to move even more heuristic logic to the server side, simplifying the blending layer itself.
This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.
Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.