#AI

핀터레스트 홈 피드를 위한 조건부 학습 검색(CLR) 확장하기

핀터레스트 홈 피드를 위한 조건부 학습 검색(CLR) 확장하기
01

Summary

사용자의 '숨은 의도'까지 다 읽는다! 핀터레스트가 대규모 개인화 검색 엔진을 극적으로 확장한 비결

지연 시간 85% 단축과 비용 절감을 동시에 잡은 조건부 학습 검색(CLR)의 올인원 아키처 분석

본 아티클은 수억 명의 사용자가 가진 복합적인 목적을 동시에 충족시키기 위해 핀터레스트가 구축한 조건부 학습 검색(CLR) 아키텍처의 여정을 다룹니다. 초기의 관심사 기반 모델을 넘어 핀, 보드 등의 이기종 조건들을 단일 모델로 통합(Unified CLR)하고, 대규모 트랜스포머 시퀀스 모델 및 인프라 최적화를 통해 성능과 비용 효율성을 극대화한 실무 노하우를 상세히 공유합니다.

  • 01여러 사용자 의도를 동시에 캡처하는 조건부 학습 검색(CLR) 도입 및 단일 모델로의 대통합(Unified CLR)
  • 02콜드 스타트 방지를 위한 계층적 시맨틱 ID(Semantic ID) 체계 구축 및 TorchRec을 활용한 대용량 임베딩 테이블 분산 처리
  • 03Sequence Transformer 및 PinFM 파운데이션 모델을 활용한 고도화된 시퀀스 이해
  • 04중복 특징 제거(Request-level) 및 커스텀 블록 어텐션(M-Falcon)을 통한 학습 처리량(Throughput) 2배 개선
  • 05GPU 서빙 전환 및 NVEmbed 프레임워크 적용으로 p90 지연 시간을 80ms에서 12ms로 단축

RECOMMENDATION

대규모 추천 시스템에서 다중 관심사(Multi-intent) 모델링에 따른 서빙 비용과 지연 시간 증가로 고민 중인 AI 엔지니어 및 백엔드 아키트에게 강력히 추천합니다.

The Problem

핀터레스트 홈 피드 추천은 대규모 사용자-핀 검색 문제이며 기존의 투타워(Two-Tower) 모델은 단일 임베딩만 생성하므로 사용자의 다양한 관심사(인테리어, 요리, 패션 등)를 동시에 캡처하는 데 한계가 있었습니다.

The Solution

명시적 맥락(관심사, 핀, 보드)을 조건으로 부여하는 조건부 학습 검색(CLR)을 도입하고, 통합 CLR 모델 아키텍처, Sequence Transformer 및 PinFM 파운데이션 모델, Request-level 트레이닝 및 M-Falcon 병목 최적화, 그리고 GPU 기반 서빙 인프라(NVEmbed)를 적용했습니다.

The Result

이를 통해 연간 7자리 수 달러 규모의 비용을 절감하고, P90 모델 지연 시간을 85% 단축(80ms에서 12ms)하였으며, 대규모 추천 성능 지표 개선 및 레거시 휴리스틱 생성기를 완벽히 대체하는 성과를 거두었습니다.

Trade-off

파운데이션 모델 도입으로 학습 연산 복잡도가 급증하여 대규모 GPU 자원이 필수적이 되었으며, 이를 위해 복잡한 커스텀 블록 어텐션 마스크(M-Falcon) 및 데이터 역중복화 인프라를 직접 설계하여 관리해야 하는 복잡성이 수반되었습니다.

03

Key Concepts

Concept · 01

Conditional Learned Retrieval (CLR)

기존의 투타워(Two-Tower) 검색 모델의 사용자 타워에 명시적인 컨텍스트 조건을 부여하여 사용자의 다양한 의도를 반영한 맞춤형 다중 임베딩을 생성하는 기술입니다.

  • 핀터레스트 홈 피드 추천에서 단순 단일 사용자 임베딩의 한계를 깨고 관심사, 특정 핀, 보드(Board) 등의 실시간 정황 정보를 투입하여 정교한 추천을 수행함.
Concept · 02

M-Falcon 최적화

동일한 사용자의 시퀀스 연산이 조건 토큰 수만큼 중복 수행되는 문제를 막기 위해, 인과적 어텐션(Causal Attention) 특성을 활용하여 하나의 시퀀스에 모든 조건을 덧붙여 처리하는 무손실 최적화 기법입니다.

  • 사용자 시퀀스 뒤에 다중 조건 토큰을 병렬화(Flatten)한 뒤, 조건 간 서로를 참조하지 못하게 하는 특수 블록 어텐션 마스크를 적용해 GPU 연산 및 메모리 사용량을 대폭 절감함.
Concept · 03

시맨틱 ID (Semantic IDs)

정적 콘텐츠 임베딩을 양자화(Residual-quantized VAE)하여 계층적 코드로 변환함으로써 유사한 콘텐츠들이 동일한 ID 공간을 공유하도록 만드는 기술입니다.

  • 기존의 20GB에 달하는 거대한 무작위 해시 기반 ID 임베딩 테이블 대신 계층 레이어별 소형 임베딩 테이블 조합으로 Cold-start에 취약한 long-tail 핀의 데이터 누락 문제를 효과적으로 완화함.