유통 / 중고 의류 플랫폼

Vinted: 이미지와 상품 속성을 함께 쓰는 검색

기업
Vinted
국가
리투아니아
도입 상태
운영
자료 공개
날짜 기준
자료 발표 시점. 도입 시작일과 다를 수 있음
근거 확인 방법
원문 본문 열람

업무 문제

단어를 맞춰 찾는 검색은 걸러내는 폭이 좁다. Vinted의 상품은 사진이 중요하고 여러 언어가 섞여 있어 이 한계가 더 크게 드러났다. 관련 상품이 있는데도 결과 없음을 돌려주는 일이 생겼고 회사는 이를 놓친 사업 기회로 봤다.

적용한 기술과 데이터

Vinted는 Two-Tower 모델을 만들었다. 질의 타워는 검색어를 256차원 벡터로 바꾼다. 상품 타워는 상품의 여러 특징을 같은 256차원 벡터로 바꾼다. 질의 타워는 사전학습된 다국어 CLIP 모델을 그대로 두고 그 위에 projection head만 새로 학습한다. 상품 타워는 브랜드 아이디와 카테고리 아이디 같은 범주형 특징에 대표 상품 사진의 CLIP 임베딩을 합친다. 사진 임베딩은 512차원을 넣어 256차원으로 줄인다. 학습은 contrastive learning으로 하고 한 쌍마다 7,000개에서 10,000개의 무작위 오답 상품과 구분하게 시킨다. 전체 구현은 Vespa 애플리케이션 패키지 안에 들어간다. 단어 검색 결과와 벡터 검색 결과는 reciprocal rank fusion으로 한 줄로 합친다.

성과

Vinted는 결과가 적게 나오는 검색 세션을 벡터 검색 결과로 채우는 방식부터 시작했다고 밝혔다. 걸러내는 폭이 조금 넓어지자 검색 지표가 좋아졌고 이 방식에 대한 확신이 생겼다고 했다. 약 50번의 AB 테스트를 거쳐 벡터 검색을 전면 적용했다. 여러 성능 최적화를 거쳐 오류율은 0.02% 미만이 됐다고 밝혔다. 대표 사진의 이미지 임베딩은 약 1 TB 메모리를 차지한다.

한계와 남은 과제

전환율이나 매출 같은 사업 지표의 변화 수치는 원문에 없다. Vinted는 상품의 텍스트 정보를 모델에 넣는 일은 아직 풀지 못한 과제라고 밝혔다.

출처

공개된 자료를 정리한 사례입니다. ATF Works 도입 고객의 결과가 아닙니다.

원문 보기 (새 탭에서 열림)