Item2Vec: Neural Item Embedding for Collaborative Filtering

  • NLP에서 단어의 잠재적인 의미를 파악하기 위해 제안된 모델인 Word2Vec 방식에서 영감을 받아 Item2Vec라는 모델이 탄생(Word2Vec(SGNS) → Item based CF 확장)
  • 이 모델은 User Information을 활용할 수 없어도 Item-Item 관계를 추론 가능하다는 장점을 지닌다.

SGNS(= Skip-Gram with Negative Sampling)

  • 문장 내에서 단어와 주위 단어들 간의 관계를 파악하는데 초점을 맞춘 방법
  • 중심 단어를 통해 주위 단어를 예측(↔ CBOW : 주위 단어를 통해 중심 단어를 예측하는 방법)

SGNS to Item CF

  • Skip Gram Objective Function in Word2Vec
    • 1Ki=1Kcjc,j0logp(wi+jwi)\frac{1}{K}\sum_{i=1}^K \sum_{-c\leq j \leq c, j \ne 0} \log p(w_{i+j} \mid w_i) (cc : Window Size, ww : words)
  • Sequence of words(NLP) → Set of Items(Recommender System)
    • 시간 순서나 위치에 대한 정보 손실(시간, 위치에 대한 정보는 중요치 않으니 제거해도 상관 없다.)
      • 학습하는 동안 아이템들을 셔플하면서 학습
    • 유저가 가진 정보들이 Window Size를 뜻한다. → Window Size를 키우면 Item set(= Bag of words)의 순서 정보가 무의미해지기 때문에 매우 큰 사이즈로 설정한다. 이는 배치마다 아이템들을 셔플하는 것과 같은 효과를 지닌다.

Experiment

  • KNN을 활용
    • 수작업 라벨링의 오류 가능성을 해결(조금 더 그럴듯한 라벨로 변환 가능)

Conclusion

  • Subsampling 덕분에 빈도가 낮은 Cold Item도 잘 예측할 수 있다.
profile
https://github.com/MrLee5693

0개의 댓글