
OpenSearch HNSW 벡터 검색과 하이브리드 알고리즘 도입으로 구매 건수 15% 폭발적 성장시킨 이야기
본 아티클은 포스타입이 겉으로 드러나는 태그 정보의 한계를 넘어 유저의 깊은 내면 취향을 타겟팅하기 위해 구축한 벡터 기반 개인화 추천 시스템 기술을 상세히 소개합니다. OpenSearch 환경에서의 HNSW 그래프 튜닝, 키워드와 벡터를 혼합한 하이브리드 검색, 그리고 인기 편향 완화를 위한 시그모이드 기반 태그 가중치 처리 등 실무적인 추천 고도화 전략을 담고 있습니다. 오프라인과 온라인 A/B 테스트를 거쳐 비즈니스 성장으로 이어지기까지의 실전 데이터 기반 성과를 제공합니다.
기존에 구축된 OpenSearch 인프라를 적극적으로 활용하면서, 텍스트 검색 한계를 넘어 의미 검색과 개인화 추천 파이프라인을 빠르고 안정적으로 구축하려는 백엔드 개발자 및 데이터 엔지니어에게 훌륭한 실무 지침서가 됩니다.
기존의 단순 키워드 및 태그 매핑 방식은 작가들의 주관적인 태그 작성 스타일 차이나 동음이의어 문제로 인해 유저의 실제 관심사나 콘텐츠의 세밀한 분위기를 정확하게 포착해 추천하지 못하는 한계가 있었습니다.
포스트와 유저의 행동 데이터를 고차원 벡터로 변환(임베딩)하고 OpenSearch의 HNSW 알고리즘을 사용해 코사인 유사도 기반의 근사 최근접 이웃(ANN) 검색을 구현하였으며, 키워드 검색(BM25)과 결합한 하이브리드 검색 및 시그모이드 함수 기반의 태그 가중치 조절 방식을 도입했습니다.
오프라인 검증 단계에서 협업 필터링 기반의 추천이 대조군 대비 압도적인 70% 이상의 Hit Rate를 기록했으며, 실제 서비스 내 A/B 테스트 결과 기존 추천 시스템의 판매량을 잠식하지 않으면서도 전체 구매 건수를 15% 증가시켰습니다.
Trade-off
HNSW 알고리즘은 파라미터 조절이 유연하지만 벡터 데이터와 그래프 연결 수가 늘어날수록 인덱스 메모리 크기가 지속적으로 증가하는 한계가 있으며, 서로 다른 척도를 가진 BM25 점수와 KNN 유사도 점수를 합산하기 위해 추가적인 정규화 처리 비용이 발생합니다.
고차원 데이터 공간에서 데이터 포인트들을 계층적 그래프로 연결하여 가장 유사한 이웃 벡터를 매우 빠른 속도로 찾아내는 근사 최근접 이웃(ANN) 탐색 알고리즘입니다.
전통적인 형태소/단어 매칭 기반의 텍스트 검색 점수(BM25)와 의미적 맥락을 반영하는 벡터 유사도 점수(KNN)를 결합하여 최종 결과 순위를 산출하는 고도화된 검색 모델입니다.
모든 유저에게 노출되는 흔하고 대중적인 아이템(태그)의 가중치를 낮추고, 유저 개별 취향에 부합하는 소수의 희소한 정보를 발굴하여 추천의 질을 높이는 기법입니다.




