NEP: Notification System and Relevance

Pinterest Engineering
8 min readintermediate
--
View Original

Overview

The article discusses the Notification Event Processor (NEP) developed at Pinterest, which enhances user engagement through a flexible, real-time notification system. It highlights the importance of notifications, the goals and design of NEP, and the modeling and policy decisions that drive its functionality.

What You'll Learn

1

How to implement a real-time notification system using machine learning techniques

2

Why personalization in notifications improves user engagement

3

How to optimize notification delivery timing based on user behavior

Prerequisites & Requirements

  • Understanding of machine learning concepts and notification systems
  • Familiarity with streaming data processing frameworks(optional)

Key Questions Answered

What are the main goals of the NEP system at Pinterest?
The main goals of the NEP system include expanding the types of notifications, improving real-time processing capabilities, enabling dynamic control over notification volume and timing, personalizing notifications, and reducing irrelevant notifications. These objectives aim to enhance user engagement across the platform.
How does the NEP model determine which notifications to send?
The NEP model uses a multi-head ranking system that predicts user engagement probabilities for different notification types. It considers factors like content selection, recipient targeting, channel preferences, and optimal timing to decide which notifications to send and when.
What data is collected for training the NEP model?
Data collected for training the NEP model includes logs of sent notifications, user engagement metrics, and historical event scoring. This data helps in refining the model's predictions and improving the overall notification experience for users.
What challenges did Pinterest face when transitioning to the NEP system?
Pinterest faced challenges in shifting from an offline daily budgeting system to a real-time streaming notification system. This transition required extensive testing across multiple experiment groups to align production behaviors while managing user engagement and unsubscribe rates.

Key Statistics & Figures

Weekly Active User (WAU) growth
Significant improvements
The implementation of the NEP system led to notable increases in WAU, indicating enhanced user engagement.
Percentage of sent notifications logged for model training
10%
Production logs 10% of sent notifications to gather data for training the NEP model, ensuring its effectiveness.

Technologies & Tools

Stream Processing Framework
Pacer
Used for processing events in a streaming fashion within the NEP system.
Control System
Pid Controller
Utilized for automatically tuning notification send thresholds to align with user engagement.

Key Actionable Insights

1
Implementing a real-time notification system can significantly enhance user engagement metrics.
By leveraging machine learning to personalize notifications, companies can ensure that users receive relevant content at optimal times, which can lead to increased interaction and retention.
2
Utilizing a PID controller for tuning notification thresholds can help maintain user engagement without overwhelming them.
This approach allows for automatic adjustments based on user activity levels, ensuring that notifications are sent at a balanced volume that aligns with user preferences.
3
Pre-generating notification candidates can streamline the decision-making process for sending notifications.
By storing candidate events in an event pool, the system can quickly assess and send notifications based on user engagement patterns, improving responsiveness.

Common Pitfalls

1
Overloading users with notifications can lead to increased unsubscribe rates.
This often occurs when a system sends too many notifications without considering user preferences and engagement levels. To avoid this, it's crucial to implement personalization and control mechanisms that adjust notification frequency based on user interactions.

Related Concepts

Real-time Data Processing
Machine Learning In Notifications
User Engagement Strategies