AWS 기술 블로그

무신사의 AI 기반 상품 추천 및 검색 시스템 구현 사례

무신사는 2001년 온라인 패션 커뮤니티로 시작하여 현재 약 1,500만 명의 회원을 보유한 국내 최대 패션 플랫폼으로 성장했습니다. 무신사 스토어에는 스트릿, 캐주얼, 디자이너, 하이엔드, 명품 등 다양한 브랜드가 입점해 있으며, 고객 맞춤형 쇼핑 경험을 제공합니다. 무신사는 패션 매거진, 오프라인 편집숍 등 다양한 사업을 전개하여 패션 생태계 전반을 아우르고 있으며, 최근에는 여성 패션, 라이프스타일, 뷰티 등으로 카테고리를 확장하고, AI 기반 추천 시스템 등 IT 기술을 적극 도입하여 서비스 경쟁력을 높이고 있습니다.

스냅인플루언서 개발팀의 과제

무신사 스냅인플루언서 개발팀은 스냅이라는 이미지 기반 SNS 서비스를 개발 및 운영하고 있습니다. 스냅인플루언서 개발팀은 스냅을 운영하면서 인플루언서가 착용한 패션 아이템과 유사한 상품을 추천하는 데 어려움을 겪고 있었습니다. 기존의 키워드 기반 분류만으로는 특정 상품을 정확하게 식별하는 데 한계가 있었고, 이미지 분석과 처리를 위해서는 새로운 시스템이 필요했습니다.

이러한 문제를 해결하기 위해 스냅인플루언서 개발팀과 AWS PACE (Prototyping and Cloud Engineering) 팀은 다음과 같은 기능을 도입하고자 했습니다:

  • 스냅 피드에서 유사 상품 추천
  • 인플루언서의 스타일 분석을 통한 유사 스타일 인플루언서 추천
  • 자연어 기반 인플루언서 및 패션 아이템 검색

이를 통해 사용자가 더욱 쉽고 편리하게 원하는 정보를 찾을 수 있도록 하는 것이 이번 프로토타입의 주요 목표였습니다.

아래는 이러한 과제를 바탕으로 브레인스토밍을 통해 도출한 시스템의 High-Level Design입니다:

스냅 이미지에서 유사상품 검색
자연어 기반 스냅 검색

Detection Model

이미지 기반 검색 시스템의 첫 단계는 스냅 이미지 내에서 패션 아이템을 정확하게 검출하는 것입니다. 무신사 스냅은 일반적인 쇼핑몰 상품 컷과 달리, 사람이 착용한 상태로 촬영되어 배경이 복잡하고 포즈나 각도도 매우 다양합니다. 이러한 특성 때문에 단순한 이미지 크롭이나 카테고리 분류만으로는 아이템을 정밀하게 분리해내기 어렵습니다. 따라서 복잡한 환경에서도 패션 아이템을 정확히 추출할 수 있는 객체 검출 모델이 필수적이었습니다.

YOLOS-Fashionpedia: 트랜스포머 기반 패션 객체 검출

이 프로젝트에서는 YOLOS 모델을 패션 데이터셋(Fashionpedia)으로 파인튜닝한 YOLOS-Fashionpedia를 활용했습니다.

YOLOS는 2021년에 발표된 트랜스포머 기반 객체 검출 모델로, 이미지를 시퀀스 형태로 처리하는 구조 덕분에 다양한 각도와 복잡한 배경의 스냅 이미지에서도 우수한 성능을 보입니다. Fashionpedia 데이터셋은 46,000여 개의 패션 이미지와 340,000개 이상의 바운딩 박스 정보를 포함하고 있어, 상의, 하의, 드레스, 가방, 신발, 액세서리 등 46개 패션 카테고리를 세밀하게 구분할 수 있습니다.

YOLOS-Fashionpedia 모델은 이미 이 데이터셋으로 사전 학습되어 있어, 추가 파인튜닝 없이도 다양한 패션 아이템을 높은 정확도로 검출할 수 있습니다.

Embedding Model

객체 검출 이후, 유사 상품을 찾기 위해서는 이미지의 스타일과 속성을 수치화하여 비교할 수 있어야 합니다. 이 과정이 바로 임베딩(Embedding)입니다. 임베딩 모델은 이미지(또는 텍스트)의 특징을 수백 차원의 벡터로 변환하여, 이 벡터 간의 거리를 통해 상품 간의 유사도를 정량적으로 계산할 수 있도록 합니다. 단순히 색상이나 형태뿐 아니라, 이미지가 가진 전체적인 의미와 분위기까지 반영하여 유사도를 측정할 수 있는 것이 큰 장점입니다.

FashionCLIP 2.0: 패션 특화 멀티모달 임베딩 모델

이 프로젝트에서는 FashionCLIP 2.0 모델을 임베딩에 활용했습니다. FashionCLIP 2.0은 OpenAI의 CLIP 모델을 패션 데이터셋으로 파인튜닝한 버전으로, 이미지와 텍스트를 동시에 하나의 벡터 공간에 임베딩할 수 있습니다.

즉, 이미지를 이용한 이미지 유사도 검색과 텍스트를 이용한 이미지 검색을 모두 하나의 모델로 처리할 수 있습니다. FashionCLIP 2.0은 이 구조를 패션 도메인에 맞춰 재학습시켜, 스타일, 카테고리, 색상, 소재 등 패션 특유의 세밀한 특징까지 반영할 수 있도록 최적화되어 있습니다.

솔루션 개요

스냅인플루언서 개발팀은 AWS PACE팀과 협업하여 AI 기술을 활용한 상품 추천 및 검색 시스템의 프로토타입을 구축했습니다. 이 시스템은 앞서 설명한 detection model과 embedding model을 활용한 모듈과 Amazon OpenSearch Service를 활용한 벡터 검색을 통해 이미지와 텍스트 등 다양한 입력 데이터를 효과적으로 처리하고, 사용자가 쉽고 빠르게 원하는 패션 아이템과 인플루언서 정보를 찾을 수 있는 시스템을 설계했습니다.

1. 스냅 이미지 기반 유사상품 검색

  • 사용자가 업로드한 스냅 이미지는 Amazon S3에 저장됩니다.
  • AWS Lambda가 이미지를 받아 객체 검출을 수행하며, Amazon SageMaker Endpoint에서 AI 기반 객체 검출 모델(YOLOS-Fashionpedia)이 동작합니다.
  • 검출된 패션 아이템 이미지는 Lambda가 호출한 SageMaker Endpoint를 통해 임베딩 모델(FashionCLIP)에 전달되어 벡터로 변환됩니다.
  • 변환된 벡터는 OpenSearch에 저장되어, 벡터 유사도 기반으로 유사 상품을 빠르게 검색합니다.

2. 인플루언서 및 스타일 검색

  • 사용자의 자연어 검색 질의는 Amazon API Gateway를 통해 Lambda로 전달됩니다.
  • AWS Step Functions가 Query Rewrite, 텍스트 임베딩 등 여러 Lambda 작업을 오케스트레이션합니다.
  • Amazon Bedrock(Amazon Nova Lite, Titan Text Embedding v2)을 활용하여 질의를 패션 도메인에 맞게 변환하고 임베딩 벡터로 변환합니다.
  • 변환된 벡터는 OpenSearch에서 유사한 인플루언서나 콘텐츠를 검색하는 데 활용됩니다.

테스트: 실제 데이터 기반 검색 정확도 평가

구현한 시스템을 실제 스냅 콘텐츠와 상품 데이터를 기반으로 유사 상품 추천 시스템의 정확도를 검증했습니다.

테스트 데이터 구성

  • 검색 아이템: 스냅 피드 7개에서 라벨링된 상품 32개를 추출하여 테스트용 상품 이미지로 사용
  • 검색 대상: Fashionpedia 5,000개 이미지 + 테스트 상품 이미지 32개(총 5,032개)

평가 지표

  • Precision@k:
    • Precision@1: 정답 상품이 검색 결과 1순위에 위치한 비율
    • Precision@5: 정답 상품이 검색 결과 상위 5개 내에 포함된 비율
  • MRR (Mean Reciprocal Rank):
    • 사용자가 원하는 상품이 검색 결과에서 얼마나 앞쪽에 노출되는지를 평균적으로 평가

주요 결과

  • Precision@1: 테스트 이미지 중 72%에서 1순위에 정답 상품이 위치
  • Precision@5: 81%에서 상위 5개 안에 정답이 포함
  • MRR: 평균 0.76의 점수로, 사용자가 원하는 상품이 상위권에 잘 노출됨을 의미

이 결과는 임베딩 모델과 벡터 검색 구조가 실제 스냅 이미지 기반 유사 상품 추천에서 높은 정확도와 실용성을 보인다는 것을 의미합니다. 특히, 대부분의 경우 사용자가 원하는 상품이 검색 결과 상위에 노출되어, 실제 서비스 적용 시에도 만족스러운 사용자 경험을 제공할 수 있음을 확인했습니다.

한계점과 개선 방향: 모든 케이스에서 완벽하지는 않습니다

AI/ML 기반 추천 및 검색 시스템이 높은 정확도를 보여주었지만, 모든 상황에서 완벽한 매칭을 보장하는 것은 아닙니다. 실제 테스트 과정에서 발견된 주요 한계와 사례를 정리하면 다음과 같습니다.

1. 상품 고유의 특징이 뚜렷하지 않은 경우

단색 기본 티셔츠, 니트, 베이직 팬츠 등 형태나 컬러에서 두드러지는 차별점이 없는 베이직 아이템은 유사 상품이 지나치게 많아, 벡터 임베딩 기반 유사도 계산만으로는 정확한 매칭이 어렵습니다.

2. 상품이 가려진 경우

팔짱을 끼거나 팔을 교차하는 등 신체 동작이나 다른 아이템에 의해 주요 디테일이 가려진 경우, 객체 검출 및 임베딩 과정에서 상품 인식 정확도가 떨어질 수 있습니다. 이로 인해 임베딩 벡터가 왜곡되어 잘못된 매칭이 발생할 수 있습니다.

3. 비표준 촬영 각도 및 형태

상품의 촬영 각도나 형태가 일반적이지 않을 때도 문제가 발생합니다. 예를 들어, 벽에 발을 기대고 발끝을 세운 상태로 촬영된 신발 이미지는 일반적인 착용 컷과 달라, 검출 및 임베딩 과정에서 신발이 아닌 바지류로 오인되는 사례가 있었습니다.

4. 이미지 품질 및 맥락의 한계

이미지 해상도가 낮거나, 상품과 배경 또는 다른 아이템의 경계가 불명확한 경우, 객체 검출이 불완전해지거나 불필요한 주변 정보가 함께 포함될 수 있습니다. 또한, 크롭 과정에서 상품의 고유 디테일(프린트, 버튼, 핏 등)이 누락되면 임베딩 결과도 왜곡되어 추천 품질이 저하됩니다.

이러한 사례들은 단순 벡터 기반 유사도만으로는 상품의 컨텍스트, 실제 용도, 스타일적 맥락을 완전히 반영하기 어렵다는 점을 보여줍니다.

향후 개선 방향

  • 복수 이미지 기반 멀티뷰 임베딩: 다양한 각도와 상황에서 촬영된 이미지를 종합적으로 활용하여 임베딩의 정확도를 높일 수 있습니다.
  • 스타일 맥락 보존을 위한 조건 기반 필터링: 상품의 스타일, 착장 맥락 등 추가 정보를 활용하여 추천 결과의 품질을 높일 수 있습니다.
  • 크롭 범위 보정 및 검출 보완: 객체 검출 모델의 성능을 개선하고, 크롭 범위를 정교하게 조정하여 상품의 주요 특징이 임베딩에 잘 반영되도록 할 수 있습니다.

마무리

이번 프로토타이핑을 통해 무신사 스냅인플루언서 개발팀은 이미지와 자연어를 융합한 AI 추천 및 검색 시스템의 가능성을 확인할 수 있었습니다. 실제 데이터 기반 테스트에서 높은 정확도를 보였지만, 상품의 특징이 뚜렷하지 않거나 이미지 품질이 낮은 경우에는 성능에 한계가 있음을 발견하기도 했습니다.

이러한 시사점을 바탕으로, AI 기반 상품 추천 및 검색 시스템을 구성하기 위해 필요한 요소들을 파악할 수 있었습니다. 무신사는 이번 경험을 바탕으로 앞으로도 더욱 정교하고 사용자 경험 중심의 패션 AI 서비스를 만들기 위해 지속적으로 노력하며, 새로운 도전을 이어가겠습니다.

엄준영

무신사 Software Engineer로서, 대규모 트래픽 시스템과 AI 기반 프로세스를 설계·구현하며 사용자 경험의 실질적인 변화를 만들어가고 있습니다.
기술 자체가 아닌, 기술로 사용자 경험의 가치를 높이는 일에 집중하고 있습니다.

이지훈

무신사에서 브랜드와 인플루언서가 쉽게 협업할 수 있는 크리에이터 마켓플레이스를 만들고 있습니다.

Pilmo Kang

Pilmo Kang

강필모 PACE Engineer는 고객의 비지니스 문제를 AWS를 활용한 프로토타입 개발을 통해서 해결 방안을 제시하고, 적시에 프로덕션으로 갈수 있도록 효과적인 방법을 제안하는 역할을 하고 있습니다.

Keehyun Jang

Keehyun Jang

장기현 Solutions Architect는 다양한 개발 경험을 바탕으로 고객의 비즈니스 문제를 AWS를 통해 해결하도록 아키텍처 설계 가이드와 기술을 지원하고 있습니다.