Sequential Recommendation
Sequential Recommendation: 구매 이력 순서에 따른 추천 시스템
Markov Chain 기반 연구
- Markov Chain이란? chain rule에서 다음 사건은 그 직전의 사건에 대해서만 영향을 받고 그 이전과는 독립이라는 가정.
Factorized Personalized Markov Chains(FPMC, Rendle et al., 2010)
- 해당 유저가 직전에 구매한, 혹은 검색한 아이템만을 고려하면 된다는 아이디어.
Personalized Ranking Metric Embedding(PRME, Feng et al., 2015)
- 직전에 검색한 아이템과의 compatibility를 inner product(FPMC 방식)이 아닌 Euclidean distance를 사용함.
- 또한 이전 아이템과 다음 아이템을 개별 latent vector로 표현(FPMC 방식)하지 않고 하나의 latent vector로 표현
Factorized Markov Embedding(FME, Chen et al., 2012)
- 음악 추천을 위한 모델. 이전 곡과 다음 곡에 대해 개별적인 embedding을 사용.
- compatiblity 계산을 위해 item간에는 Euclidean distance, user-item간에는 inner product를 사용함
Translation-based Recommendation(TransRec, He et al., 2017)
- user, item, user-item을 각각 모델링 하지 않고 user-translation vector를 통해 표현.
- Low dimensional space에서 entity 간의 관계를 모델링하는 것과 유사
RNN(Recurrent Neural Network) 기반 연구
Session-based Recommendations with Recurrent Neural Network(Hidasi et al., 2016)
- user의 action(클릭, 본 상품, 방문한 사이트)를 session으로 설정
- word2vec을 이용한 word embedding과 같이 item embedding을 설정한 후 최종 item을 예측.
- user interaction sequence를 기반으로 예측하기 때문에 user-free 모델.
- 모든 Item의 종류하기엔 너무 많으므로 unseen-data에 대해서 negative sampling을 진행.
Neural Attentive Session-based Recommendation(Li et al., 2017)
- user의 행동을 global level, local level로 나누어 분석.
- 즉 전체 행동에 대한 분석과 최근 동향에 대한 분석을 나누어서 진행(Global encoder, Local encoder 존재)
NLP(Natural Language Processing) 기반 연구
- word를 item으로 대체한다면 ?
- user history의 long-term 및 short-term dynamics를 모두 잘 반영할 수 있는 attention 기반의 transformer 모델은 어떨까?
Self-Attentive Sequential Recommendation(SASRec, Kang and McAuley, 2018)
- Markov Chain기반 모델, RNN,CNN모델 등 보다 좋은 성능을 보이며 item간의 관계도 잘 모델링 하였다.
BERT4Rec
- cloze task, 즉 일부 item을 masking 한 후 진행.
최근 연구(Recommedation with side-information)
Self-Supervised Learning for Sequential Recommendation with Mutual Information Maximization(S3-Rec)
- self-supervised learning을 이용하여 raw data를 다양한 관점으로 바라보고, 다양한 패턴을 인지해 풍부한 representation을 학습.
A simple Framework for Contrastive Learning of Visual Representations(Chen et al., 2020)
- Contrastive Learning: 데이터가 부족할 때에도 representation을 잘 학습하기 위해서 다양한 sequence augumentation을 self-supervised learning에도 적용하는 것.
Contrastive Learning for Sequential Recommendation(CL4SRec)
- sequence를 augumentation한 뒤, contrastive learning을 통해 item representations 학습
- sequence augumentation. 어떻게 진행되나?
1) 전체 sequence에서 일부를 crop
2) 일부 item을 mask 처리
3) 일부 sequence를 reorder