가져오기

삽입 모델이 있다고 가정해 보겠습니다. 사용자의 경우 추천할 상품을 어떻게 결정할 수 있을까요?

제공 시점에 쿼리가 주어지면 다음 중 하나로 시작합니다.

  • 행렬 분해 모델의 경우 쿼리 (또는 사용자) 임베딩이 정적으로 알려져 있으며 시스템은 사용자 임베딩 행렬에서 단순히 이를 검색할 수 있습니다.
  • DNN 모델의 경우 시스템은 특징 벡터에서 네트워크를 실행하여 \(\psi(x)\)제공 시간에 쿼리 임베딩을 계산합니다. \(x\)

쿼리 임베딩 \(q\)이 있으면 임베딩 공간에서\(V_j\) 가까운 \(q\) 항목 임베딩을 검색합니다. 가장 가까운 이웃 문제입니다. 예를 들어 유사성 점수 \(s(q, V_j)\)에 따라 상위 k 항목을 반환할 수 있습니다.

아동 영화에서 성인 영화, 예술 영화, 블록버스터에 이르기까지 다양한 영화와 사용자가 등장하는 2차원 스펙트럼의 이미지입니다. 사용자 한 명과 주변 영화 두 개가 강조표시됩니다.

관련 상품 추천에도 비슷한 접근 방식을 사용할 수 있습니다. 예를 들어 사용자가 YouTube 동영상을 시청할 때 시스템은 먼저 그 항목의 임베딩을 조회합니다. 그런 다음 임베딩 공간에서 가까운 다른 항목\(V_j\) 의 임베딩을 찾을 수 있습니다.

대규모 검색

임베딩 공간에서 최근접 이웃을 계산하기 위해 시스템은 모든 잠재적 후보를 철저히 채점할 수 있습니다. 매우 낮은 점수를 적용하면 비용이 많이 들 수 있지만 다음 전략 중 하나를 사용하여 효율성을 높일 수 있습니다.

  • 쿼리 임베딩이 정적으로 알려진 경우 시스템은 각 쿼리의 상위 후보 목록을 미리 계산하고 저장하는 철저한 오프라인 스코어링을 수행할 수 있습니다. 이는 관련 상품 추천에 대한 일반적인 권장사항입니다.
  • 최근접 이웃을 사용합니다.