논문 리뷰 : Deep Learning based Recommender System: A Survey and New Perspectives
영화 추천 대회를 진행하면서, 추천 시스템의 전반적인 흐름과 상황에 맞는 모델 선정에 도움을 받고자 본 리뷰 논문을 살펴보았다. 논문 링크
1. Introduction
- 추천 리스트는 유저 선호, 아이템 정보, 유저-아이템 상호작용, 기타 시간 정보 등등으로 생성된다.
- 추천 모델의 종류는 인풋 데이터에 따라 나뉜다.
- CF (협업 필터링)
- Content-based
- Hybrid
- 딥러닝으로 인해 유저-아이템 관계에서 비선형적이고 당연하지 않은 (non-trivial) 부분들을 캐치할 수 있게 되었다. 그리고 이미지 등 다른 데이터를 이용할 수도 있게 되었다.
- 실제로 유튜브, 넷플릭스, 구글 등 많은 서비스 분야에서 딥러닝 모델로 추천 시스템은 비약적인 성능 향상을 보였다.
What are the differences between this survey and former ones?
- 논문이 쓰여진 시점에서, 그때까지 추천 시스템을 구조적으로 분석하고 현재 상황에 대해 자세히 기술한 논문이 없었다.
- 그래서 이 논문은 포괄적으로 딥러닝 기반의 추천 시스템을 요약하면서, 현재의 문제들을 파악하고 미래 방향에 대해 논한다는 의의를 가짐.
2. Overview of Recommender systems and deep learning
- CF (협업 필터링)
- user-item 상호작용 (implicit or explicit)을 이용해 추천
- Content-based
- 아이템의 정보와 유저의 정보의 비교를 통한 추천
- Hybrid
- 2개 이상의 추천 전략을 합침.
2.2 Deep Learning Techniques
일반적인 Deep Learning의 종류를 전반적으로 기술한다.
- MLP
- AutoEncoder : input data를 output layer을 통해 재현하면서 중간의 bottleneck layer을 통해 가장 두드러진 특징을 잡아낸다.
- CNN
- RNN
- RBM (Restricted Boltzmann Machine)
- NADE (Neural Autoregressive Distribution Estimation) : AR + NN
- AN (Adversarial Networks) : Discriminator과 Generator로 구성되며 동시에 학습되어 서로 경쟁하는 방식이다.
- AM (Attentional Models) : Attention 메커니즘을 적용한 모델.
- DRL (Deep Reinforcement Learning) : trial-and-error paradigm을 이용하는 방식. 게임 및 자율주행에서 두각을 나타냄.
2.3 Why Deep NNs for Recommendation?
- Inductive Bias란?
- 보지 못한 데이터에 대해서도 ‘귀납적’ 추론이 가능하도록 하는, 알고리즘이 가지고 있는 가정의 집합. https://re-code-cord.tistory.com/entry/Inductive-Bias란-무엇일까
Nonlinear Transformation : MF, FM, sparse linear model 등 머신러닝 방법들은 본질적으로 linear model이고, 이것은 oversimplify 할 수 있다. nonlinearity를 모델링 할 수 있는 DNN 방법을 통해 복잡한 상호관계 패턴과 유저 선호를 반영 가능하다.
- Representation learning
- 모델이 최종 task 유형에 따라 ‘new representation’에 해당하는 ‘new feature’을 뽑아내면서 학습하는 과정.
- DNN으로 Representation learning을 통해 feature을 뽑아내므로 FE의 수고를 줄일 수 있음.
- 비동질적 content(테이블 데이터 + 오디오 / 이미지 등)을 같이 학습할 수 있다.
- Sequence Modelling 번역이나 자연어 이해 등에서 이용되고 있는 sequential modelling을 이용해 시간적 측면에서 유저와 아이템 특성 변화를 잡아낼 수 있다. 예를 들어, next-item/basket 예측이나 session based 추천 (짧게 접속하여 물건을 사는 과정) 등에 효과적인 적용 가능.
2.4 On Potential Limitations
- Interpretability
- Data Requirement
- Extensive Hyperparameter Tuning
3. Deep Learning Based Recommendation : State-Of-The-Art
이 논문의 시점 SOTA들을 다룸.
3.2 Multilayer Perceptron based Recommendation
Neural Collaborative Filtering
- Matrix Factorization의 일반화된 모델이라 할 수 있음.
DeepFM
- high-order feature interactions $\rightarrow$ DNN
- low-order feature interactions $\rightarrow$ FM
- wide & deep model 에서 wide 부분을 FM의 NN부분으로 치환함.
Deep Structured Semantic Model (DSSM)
DSSM is a deep NN for learning semantic representations of entities in a common continuous semantic space and measuring their semantic similarities. It is widely used in information retrieval area and is supremely suitable for top-n recommendation [39, 182] - p.11