[논문 리뷰] Pixie: A System for Recommending 3+ Billion Items to 200+ Million Users in Real-Time
Pixie는 30억 개 이상의 항목과 2억 명 이상의 사용자에게 실시간으로 개인화된 추천을 제공하기 위해 10억 개 이상의 노드를 가진 Pinterest 객체 그래프에서 새로운 무작위 보행 알고리즘을 사용하는 확장성 있고 실시간 기반의 그래프 기반 추천 시스템이다. 이 시스템은 사용자별 쿼리 편향, 다중 핀 가중치, 무작위 보행 과정에서의 조기 정지 기법을 활용하여 1초당 1,200건의 쿼리에 대해 60ms 이내의 지연 시간을 확보하며, 이전 시스템 대비 사용자 참여도를 50% 향상시켰다.
User experience in modern content discovery applications critically depends on high-quality personalized recommendations. However, building systems that provide such recommendations presents a major challenge due to a massive pool of items, a large number of users, and requirements for recommendations to be responsive to user actions and generated on demand in real-time. Here we present Pixie, a scalable graph-based real-time recommender system that we developed and deployed at Pinterest. Given a set of user-specific pins as a query, Pixie selects in real-time from billions of possible pins those that are most related to the query. To generate recommendations, we develop Pixie Random Walk algorithm that utilizes the Pinterest object graph of 3 billion nodes and 17 billion edges. Experiments show that recommendations provided by Pixie lead up to 50% higher user engagement when compared to the previous Hadoop-based production system. Furthermore, we develop a graph pruning strategy at that leads to an additional 58% improvement in recommendations. Last, we discuss system aspects of Pixie, where a single server executes 1,200 recommendation requests per second with 60 millisecond latency. Today, systems backed by Pixie contribute to more than 80% of all user engagement on Pinterest.
연구 동기 및 목표
- Pinterest과 같은 동적이고 상호작용적인 플랫폼에서 30억 개 이상의 항목과 2억 명 이상의 활성 사용자에게 실시간으로 개인화된 추천을 제공하는 데 도전하는 것.
- 배치 처리 시스템의 한계를 극복하여 실시간 사용자 행동에 즉각 반응하는 온디맨드 기반, 저지연 추천을 가능하게 하는 것.
- 사용자가 생성한 보드 컬렉션 데이터를 다각도적인 객체 그래프로 활용하여 핀 간의 복잡하고 의미적으로 풍부한 관계를 모델링하는 것.
- 확장성과 적응성을 동시에 확보하는 추천 알고리즘 설계를 통해 실시간 성능을 확보하기 위해 사용자별 특성 편향과 조기 정지를 지원하는 것.
- 기존의 협업 필터링을 넘어서 그래프 구조와 무작위 보행을 통한 레이블 전파를 통합하여 추천 품질을 향상시키는 것.
제안 방법
- Pixie는 1,000억 개 이상의 간선을 포함한 핀과 보드 간의 이분 그래프를 구성하며, 사용자 상호작용(예: 저장)이 간선을 형성하고 노드에 가중치를 할당한다.
- 사용자별 쿼리 세트로 구성된 가중치가 부여된 핀에서 시작하여 그래프를 탐색하는 새로운 Pixie 무작위 보행 알고리즘을 사용한다.
- 주제, 언어, 상호작용 이력 등의 사용자별 특성에 기반해 보행을 편향시키며, 개인화된 추천을 가능하게 한다.
- 다양한 가중치를 가진 다수의 쿼리 핀을 지원하며, 여러 개의 독립된 보행에서 유도된 결과를 통합하여 다수의 쿼리 핀과 관련된 항목을 우선시한다.
- 그래프 크기에 영향을 받지 않는 일정 시간 성능을 보장하기 위해 고유한 수렴 기준을 도입하여 조기 정지를 가능하게 한다.
- 핀과 보드 모두 추천하며, 보드 추천을 통해 새로운 핫스팟 핀을 발견하고 콘텐츠 다양성을 향상시킨다.
실험 결과
연구 질문
- RQ130억 개 이상의 항목과 2억 명 이상의 활성 사용자에게 실시간으로 개인화된 추천을 제공할 수 있는 추천 시스템은 어떻게 확장할 수 있는가?
- RQ2대규모 스케일에서 높은 추천 품질을 유지하면서도 100ms 이내의 저지연 응답 시간을 확보하기 위해 어떤 알고리즘 혁신이 필요한가?
- RQ3최근 상호작용과 상호작용 유형 등의 사용자 행동 신호는 그래프 기반 추천 시스템에서 어떻게 효과적으로 인코딩되고 활용될 수 있는가?
- RQ4동적 편향과 조기 정지를 지원하는 그래프 기반 무작위 보행은 기존의 배치 기반 시스템에 비해 실시간 추천 워크로드에서 얼마나 뛰어난 성능을 보일 수 있는가?
- RQ5그래프 정제 및 쿠리에이션 전략은 커버리지나 관련성 손실 없이 추천 품질과 시스템 성능을 크게 향상시킬 수 있는가?
주요 결과
- A/B 테스트에서 Pixie는 이전의 Hadoop 기반 추천 시스템 대비 핀 당 참여도를 최대 50% 향상시켰다.
- 서버당 1초당 1,200건의 추천 요청을 처리하며, 99번째 백분율 지연 시간은 60밀리초였다.
- 그래프 정제로 그래프 크기가 6분의 1로 감소했고, 추천 품질은 추가로 58% 향상되었다.
- Pinterest에서 전체 사용자 참여의 80% 이상이 이제 Pixie 기반 시스템에 의해 유도되고 있다.
- 보드 추천을 새로운 핀을 발견하는 데의 프oxy로 활용함으로써 핫스팟 문제를 해결하고 콘텐츠 다양성을 향상시켰다.
- Pixie 기반 시스템은 이제 매일 Pinterest 사용자가 저장하는 핀의 절반 이상을 차지하고 있다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.