
속도 중심의 2타워와 정밀도 중심의 3타워를 하나로 결합한 최적의 실시간 랭킹 시스템 설계 전략
핀터레스트가 기존 투타워(Two-Tower) 아키텍처의 한계를 극복하고 실시간 대용량 추천 환경에서 더욱 정교한 모델을 서빙하기 위해 개발한 '3타워 공동 학습 모델'을 다룹니다. 시스템적 제약 속에서도 최고의 가성비와 안정성을 찾아내기 위한 모델 구조 설계부터 다양한 소프트웨어 수준의 레이턴시 최적화 팁까지, 추천 시스템 엔지니어라면 반드시 알아야 할 실무 노하우를 제공합니다.
대규모 트래픽을 처리하는 추천 시스템에서 정교한 딥러닝 모델(Transformer 등)을 도입하고 싶지만 레이턴시 장벽과 비용에 부딪혀 고민 중인 머신러닝 엔지니어 및 백엔드 개발자에게 일독을 권합니다.
핀터레스트의 가벼운 랭킹(Lightweight Ranking) 단계는 P99 기준 최대 20만 개 이상의 대규모 후보군을 처리해야 하므로, 엄격한 서빙 레이턴시와 인프라 비용 제약 하에서 복잡한 정밀 추천 아키텍처를 그대로 도입하기 어려운 한계가 있었습니다.
기존 2타워 모델(Query, Pin)의 속도 이점을 유지하면서, 유저 시퀀스와 후보군 간의 고차원 상호작용을 포착하는 세 번째 '크로스 타워(Cross Tower)'와 멀티태스크 학습을 지원하는 '인터 모듈(Inter Module)'을 추가한 3타워 모델을 설계하고, 전체 후보군 필터링(2타워)과 상위 후보 정밀 랭킹(3타워)을 연계한 2단계 스코어링 파이프라인을 도입했습니다.
인게이지먼트 예측 모델의 오프라인 손실(Loss)을 약 30% 감축했으며, BF16 정밀도 변환 및 레이어 정규화 순서 변경 등의 서빙 최적화를 통해 P99 추론 레이턴시를 200ms에서 30ms 수준으로 대폭 단축하며 실서비스 적용에 성공했습니다. 온라인 A/B 테스트에서도 CTR, gCTR30, oCTR 지표가 약 1% 상승하고 CPC 비용이 절감되는 실질적인 비즈니스 가치를 입증했습니다.
Trade-off
정교한 어텐션 패턴이나 복잡한 MMoE(Mixture-of-Experts) 구조가 오프라인 손실을 더 낮출 수 있었으나 레이턴시 제약으로 인해 포기해야 했으며, 최종 서빙 단계에서 2타워와 3타워의 점수를 혼합하여 최종 Top-K를 정렬하는 경험적 방식(Heuristics)을 사용함에 따라 초기 2타워 점수가 높은 아이템 위주로 편향될 수 있는 잠재적 한계가 존재합니다.
기존의 질의(Query) 및 아이템(Pin) 타워 구조에 실시간 유저 행동 시퀀스를 전담 처리하는 세 번째 타워를 추가하고, 빠른 2타워 연산과 정밀한 3타워 연산을 동시에 학습시키는 아키텍처입니다.
유저의 최근 검색 이력, 광고 반응 등의 온사이트 시퀀스 데이터와 타겟 아이템 피처 간의 고차원 연관성을 Transformer 기반의 교차 어텐션을 통해 학습하는 모듈입니다.
서빙 비용과 지연 시간을 최소화하기 위해 수십만 개의 후보군 중 2타워 모델로 빠른 1차 스크리닝을 수행한 뒤, 선별된 특정 상위 부분집합에 대해서만 무거운 3타워 모델로 정밀 랭킹을 적용하는 파이프라인 방식입니다.









