Home [BoostCamp AI Tech / RecSys] Day36 - RecSys with RNN
Post
Cancel

[BoostCamp AI Tech / RecSys] Day36 - RecSys with RNN

RecSys : Recommender System with RNN


RNN과 추천 시스템

  • Session based 추천에서 자주 사용되는 아이디어
    • session은 일련의 과정에 따라서 유저이 현재 선호하는 정보를 처리해야 할 필요가 있음

GRU4Rec

Session-based Recommendations with Recurrent Neural Networks

  • 고객이 현재 원하는 상품을 찾는 것이 목적이며 RNN을 추천 시스템에 적용한 논문

GRU4Rec 아이디어와 구조

Session-based Recommendations with Recurrent Neural Networks

  • session sequence를 GRU 입력으로 넣어서 sequence의 다음에 나올 확률이 높은 아이템을 추천하는 것
  • 모델의 구조는 다음과 같음
    • 입력
      • one-hot encodeing session
      • 논문에서는 임베딩을 시도하기도 안하기도 했으나 성능은 임베딩이 없는 것이 더 좋았다고 함
    • GRU 레이어
      • 기존 RNN처럼 sequence 아이템 맥락 학습
    • 출력
      • 다음 골라질 아이템에 대한 선호도 스코어

GRU4Rec 학습 과정

Session-based Recommendations with Recurrent Neural Networks

  • 세션의 길이는 일정하지 않고 짧은 경우와 긴경우가 존재함
  • 세션의 특징상 짧은 경우가 많지만 길이가 긴 경우도 있음
  • 짧은 길이의 세션을 사용해서 학습할 정보가 많아지면 효율이 떨어지므로 짧은 세션을 긴 세션에 연결하는 병렬적 세션으로 미니 배치 학습을 진행함
  • 실제로 아이템이 너무 많다는 것이 문제가 됨
    • 이를 해결하고자 negative sampling 방식을 도입해서 일부 후보군에서 추천 목록을 형성
    • negative sample 기준은 인기도로 처리
      • 만약 아이템의 인기도가 높은데도 상호작용이 없다면 관심이 없는 아이템이라 가정
      • 사용자가 interaction 하지 않은 경우에서 인기도 기반으로 negative sampling을 진행
This post is licensed under CC BY 4.0 by the author.

[BoostCamp AI Tech / RecSys] Day36 - RecSys with GNN

[BoostCamp AI Tech] Day36

Comments powered by Disqus.