유통 / 중고 의류 플랫폼
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는 상품의 텍스트 정보를 모델에 넣는 일은 아직 풀지 못한 과제라고 밝혔다.
출처
- Dense Retrieval | Vinted Engineeringvinted.engineering, 확인
공개된 자료를 정리한 사례입니다. ATF Works 도입 고객의 결과가 아닙니다.