Pinterest 임베딩 검색 플랫폼의 진화

3 days ago 12

Pinterest는 검색과 추천을 담당하는 자체 플랫폼 Manas를 개선해, 수백억 개로 늘어나는 임베딩의 처리 비용을 낮추고 더 세밀한 의미를 검색에 반영하려 함 벡터를 압축하는 양자화를 주요 제품에 적용해 인덱스 메모리를 50% 이상, 서빙 비용을 20~30% 줄였으며 A/B 테스트로 사용자 참여 지표에 미치는 영향이 미미한지 확인함 인덱스 전체를 RAM에 올리는 대신 SSD에서 검색하는 방식을 실험해, 초기 평가에서 메모리 사용량을 10분의 1로 줄이고 CPU 자원을 40% 절감함 압축률을 높이면 검색 결과를 놓칠 수 있어 용도별로 방식을 선택하며, 50억 개 이상 임베딩을 다룬 SSD 검색 예비 평가에서는 재현율 하락을 5% 미만으로 유지함 문서와 검색어를 각각 벡터 하나로 압축하는 한계를 넘어, 여러 벡터로 세부 의미를 비교하는 검색도 구현했으며 제품 팀과 시범 적용을 준비 중임 수백억 개 임베딩을 향한 확장 과제 Manas는 Pinterest의 자체 분산 검색 플랫폼으로, 여러 근사 최근접 이웃 검색(ANN) 알고리듬, 토큰과 임베딩 조건을 결합한 하이브리드 쿼리, 새 콘텐츠를 수초 내 검색 가능하게 만드는 실시간 업데이트를 지원함 80개 이상의 클러스터에서 수십억 개 임베딩을 서빙함 Home Feed, Search, Related Pins, Ads, Notifications 등 주요 제품 전반에 사용됨 데이터가 수백억 개 임베딩 규모로 늘고 모델이 더 복잡한 상호작용을 포착하면서 비용 효율성, 확장성, 유연성 문제가 커지고 있음 HNSW 같은 기존 ANN 알고리듬은 낮은 지연 시간을 유지하려면 전체 인덱스를 RAM에 올려야 하므로 데이터 규모에 비례해 비용이 증가함 기존 투 타워 모델은 후보를 단일 임베딩으로 축약하고 단순 내적으로 관련성을 계산해, 문맥에 따라 달라지는 풍부한 유사도를 표현하기 어려움 개선 작업은 벡터를 낮은 비트 수와 더 적은 유효 차원으로 압축하는 양자화, 요청당 I/O를 제한하는 SSD 서빙, 후보당 여러 임베딩을 고려하는 검색으로 나뉨 양자화의 압축률과 재현율 절충 기존의 16비트 또는 32비트 부동소수점 임베딩을 작은 정수 표현으로 바꾸는 양자화가 비용 효율 개선에 효과적이었음 Manas는 스칼라 양자화(SQ) 와 곱 양자화(PQ) 를 구현함 SQ는 각 차원의 부동소수점 값을 정수로 균일하게 이산화함 PQ는 벡터 공간을 겹치지 않는 부분 공간으로 나누고, 각 부분 공간에서...

Read Entire Article