Skip to main content

On This Page

Foundation Models for Personalized Ranking at Netflix

2 min read
Share

These articles are AI-generated summaries. Please check the original sources for full details.

Foundation Models for Ranking: Challenges and Successes

Moumita Bhattacharya, a machine learning manager at Netflix, discussed the evolution of Netflix’s ranking systems, from a multi-model architecture to a Unified Contextual Recommender (UniCoRn) that jointly serves search and recommendation tasks. The UniCoRn model is a fully connected deep neural network that optimizes for likelihood of positive engagement, such as play or thumbs up.

Why This Matters

The development of foundation models like UniCoRn and the user-specific foundation model is crucial for personalization and relevance in search and recommendation systems. However, building and deploying such models pose significant technical challenges, including high-throughput inference, latency, and cost optimization. For instance, a 10% increase in latency can lead to a 7% decrease in user engagement, highlighting the need for efficient model serving.

Key Insights

  • UniCoRn Model: A unified contextual recommender system that serves search and recommendation tasks, achieving lift or parity of performance for different tasks.
  • Foundation Model: A large transformer-based model that holistically learns member preferences, both long-term and short-term, and is task-agnostic.
  • Personalization: The foundation model brings personalization to UniCoRn, allowing for a tradeoff between relevance and personalization, and improving search and recommendation tasks.

Working Example

# Simplified example of a neural network architecture for UniCoRn
import torch
import torch.nn as nn

class UniCoRn(nn.Module):
    def __init__(self):
        super(UniCoRn, self).__init__()
        self.entity_features = nn.Embedding(num_entities, embedding_dim)
        self.context_features = nn.Embedding(num_contexts, embedding_dim)
        self.fc = nn.Linear(embedding_dim * 2, output_dim)

    def forward(self, entity_ids, context_ids):
        entity_embeddings = self.entity_features(entity_ids)
        context_embeddings = self.context_features(context_ids)
        combined_embeddings = torch.cat((entity_embeddings, context_embeddings), dim=1)
        output = self.fc(combined_embeddings)
        return output

Practical Applications

  • Use Case: Netflix uses the UniCoRn model to power search and recommendations, providing personalized results to users.
  • Pitfall: Over-personalization can lead to a lack of diversity in recommendations, highlighting the need for techniques like explore-exploit to introduce diversity.

References:

Continue reading

Next article

ReliCSS: Auditing and Removing Outdated CSS

Related Content