목차
I. 논문 정보
II. 리뷰 내용
0. Abstract
1. Introduction
2. The Autorec Model
3. experimental evaluation
III. 고찰
** 리뷰 내용 중 +) 의 경우, 논문에서 발췌한 내용이 아니라 내 의견 또는 다른 참고 자료임
I. 논문 정보
- 원제: AutoRec: Autoencoders Meet Collaborative Filtering
- 출간연도: 2015
- 저널: WWW 2015 Companion, May 18–22, 2015, Florence, Italy
- DOI: http://dx.doi.org/10.1145/2740908.2742726
- 선정 이유: Movielens 100K, 1M의 SOTA는 GHRS. GHRS에서 제시하는 성능 테이블을 통해 AutoRec이 GHRS에 준하는 성능을 보이는 것을 확인. 3개의 층으로 구성된 아주 간단한 모델임에도 강력한 성능을 나타내는 근거를 찾고자 함. (GHRS에서 AE 기반의 latent 추출을 수행하기도 함)
II. 리뷰 내용
0. Abstract
이 논문은 협업 필터링을 목적으로 하는 Autoencoder 프레임워크인 AutoRec을 제시함. AutoRec은 Movielens와 Netflix 데이터 세트에 대해 협업 필터링 기술의 SOTA를 달성함
1. Introduction
Collaborative Filtering(CF)는 개인화된 추천을 제공하기 위해 유저의 아이템 선호에 대한 정보를 탐색하는 것이 목적. 추천 시스템의 대표적인 데이터 세트 중 하나인 넷플릭스 문제에서는 Matrix Factorization이나 이웃 기반 모델이 협업 필터링 모델로 인기있게 등장함. 이 논문에서는 Autoencoder의 음성, 영상 문제 해결 능력에서 힌트를 얻어 AutoRec을 제시하였으며, 이는 표현적, 연산적 측면에서 기존의 CF 신경망 대비 이점이 있고, 실제로 sota를 달성함.
2. The Autorec Model
+) 🪄오토인코더란?
Autoencoder(오토인코더)는 입력 데이터를 인코딩(encoding)하여 저차원 잠재 표현(latent representation)을 만들고, 이를 다시 디코딩(decoding)하여 입력 데이터와 최대한 유사한 출력을 만들어내는 모델. hidden layer의 뉴런 수를 input layer보다 작게 하여 단순히 입력을 바로 출력으로 복사하지 못하도록 방지하며, 데이터를 효율적으로 표현(representation)하는 방법을 학습하도록 제어. item 또는 user에 대한 잠재 표현을 학습하면, 모르는 user 또는 item에 대한 score를 예측할 수 있을 거라는 아이디어로 본 연구를 수행한 것으로 보임. 한편, AE의 잠재 표현의 학습은 Unsupervised learning이므로 latent의 dimension에 따라 정보 손실 또는 overfitting이 발생하기 쉬움. 하이퍼 파라미터 조정과 정규화가 중요함
Architecture
Notations
- 여느 추천 시스템과 같이 m명의 유저, n개의 아이템에 대한 평점이 있는 데이터에 대한 모델
- 협업 필터링이 분류되는 것처럼 Item-based AutoRec, User-based AutoRec으로 나뉨. 아래 구조는 I-AutoRec의 구조이며, m과 n이 치환되면 U-AutoRec임.
- input, hidden, output layer로 구성. input, output node의 수는 I-AutoRec의 경우 유저의 수(m)만큼, U-AutoRec의 경우 아이템의 수(n)임.
- 총 파라미터의 개수: 2mk + m + k parameters
- Item-based AutoRec model
- i: item (1~n)
- u: user (1~m)
Item-based AutoRec model
특정 아이템 i에 대하여 모든 유저의 평점이 입출력으로 사용됨
Objective function
- 1항: reconstruction error
- || · ||2O: 모든 유저-아이템이 있는 것이 아님. observed data에 대해서만 로스를 구한다는 의미임. 이를 boolean mask를 활용하여 구현함.
- 2항: 정규항, lamda - 정규화 정도
- 관측 데이터에 대한 오버피팅을 방지하기 위해, 학습되는 파라미터를 정규화 (커널정규화)
Hyperparameters
- Regularisation strength: [0.001, 0.01, 0.1, 1, 100]
- latent dimension(k): [10, 20, 40, 80, 100, 200, 300, 400, 500]
- optimizer: RProp(resilient propagation)
- (참고) RProp(Rprop, Resilient Backpropagation)은 기울기(gradinet)의 부호와 크기에 따라 가중치를 업데이트하는 방식. 각 가중치마다 자체적으로 학습률(learning rate)을 조정하여, 과거의 기울기 정보를 고려하지 않아도 되어 연산 속도가 빠름. 하지만, 초기 lr를 적절히 설정하는 것이 어려우며, local minima에 빠지기 쉬운 단점이 있어 현재는 많이 사용되지 않는 듯함.
차별점
RBM-based CF model (RBM-CF)
- RBM-CF은 Restricted Boltzmann machines에 기반한 협업 필터링 모델로, 생성적, 확률적 모델임. 이에 반해 AutoRec은 autoencoder 기반의 discriminative model 모델임.
- RBM-CF는 log likelihood를 최대화하는 방향으로 파라미터를 학습, AutoRec은 평점 예측의 표준적인 성능 지표인 RMSE를 최소화하는 방향으로 학습.
- RBM-CF는 contrastive divergence를 사용해야 하는 반면, AutoRec은 상대적으로 빠른 Gradient 기반의 backpropagation으로 학습함
- RBM-CF는 discrete ratings에 대해서만 적용 가능하며, 각 평점에 대한 학습을 개별적으로 수행해야 함. 그래서 nkr개의 파라미터를 학습해야 함. AutoRec은 메모리 사용량이 적고 과적합 가능성이 적음
Matrix Factorization
- MF는 공유하는 latent space에 user, item을 모두 임베딩해야 하는데, AutoRec은 item만 latent 공간에 임베딩하면 됨
- MF는 선형적인 latent representation을 학습한다면, AutoRec은 g(.):sigmoid에 의해 비선형적인 잠재 표현도 학습함.
3. Experimental evaluation
평가 방법
- train:val:test=9(:1):1 random split
- 빈 rating은 3으로 채워서 학습 (loss는 영향 없음)
- random split을 5번 반복, RMSE로 평가
- 비교 대상:
- RBM-CF
- Biased Matrix Factorisation (BiasedMF)
- Local Low-Rank Matrix Factorisation (LLORMA)
- 데이터 세트:
- Movielens 1M
- Movielens 10M
- Netflix datasets
평가 결과
Table 1 (a) Comparison of RMSE of I/U-AutoRec and RBM models
I-AutoRec이 가장 낮은 RMSE를 보임 (이 수치는 GHRS에서 제시하는 수치와 약간 다름)
Table 1 (b) RMSE for I-AutoRec with choices of linear and nonlinear activation functions, Movielens 1M dataset
실험적으로 성능에 기반하여 활성화 함수를 결정
- hidden layer의 activation function(g): Sigmoid
- output layer의 activation function(f): Identity
Table 1 (c) Comparison of I-AutoRec with baselines on MovieLens and Netflix datasets.
- I-AutoRec은 다른 모델과 비교시 어떤 데이터 세트에서도 가장 낮은 RMSE를 보임
기타 실험
1. hidden units의 개수는 많을수록 성능이 좋아지나 정비례 하는 것은 아님
- hidden layer의 개수를 늘린 심층 버전이 있으며, 성능이 0.831 → 0.827 로 향상됨
- Autorec은 항상 baseline보다 성능이 좋은가?
- Movielens 10M에서 LLORMA를 제외하고는 모두 성능이 최고임. 단 LLORMA는 weighting 50 different local matrix factorization models가 관여하는데, AutoRec은 단 한 층의 latent representation만 있음.
III. 고찰
정리
- 일단 오래된 논문(2015)임. 특정 아이템 또는 유저에 대하여 평가된 score를 입출력 데이터로 활용하는 DNN 기반의 추천 모델
- 보통 CF의 경우, Cold-start issue 가 있어서 새로운 사용자나 아이템의 등장에 취약.
- 논문에서는 I-AutoRec이 U-AutoRec에 비해 높은 성능을 기록함. GHRS, 2022(movielens 100k, 1m sota)에서도 사용자의 observed vector에 분산이 더 큰 이유로, I-AutoRec의 더 성능이 높다고 언급함.
의견
- AE는 잠재 표현을 학습하고 데이터를 복원하는 데에 장점이 있는 모델인데, 추천은 데이터의 복구, 복원보다는 새로운 데이터의 제시가 필요하다고 생각함. 따라서 AE로만 이루어진 추천 모델은 현재 시점에서는 큰 메리트가 있는 것 같지는 않음
- NCF 등은 모델이 유저, 아이템 각각에 대해 모든 평점 데이터를 입력으로 받는 것이 아니라, 유저 하나, 아이템에 대한 평점을 예측하는 방식으로 학습함. 이러한 측면에서 AutoRec은 DNN이긴 하지만 Matrix Factorization 기법의 선형/비선형을 제외하고는 대부분의 특성이 공유되지 않는가 라는 의문이 듬.
- Cold start에 매우 취약하다. 아이템이나 유저가 새로이 추가되는 경우, 두 객체들의 side information 정보를 사용하지 않는 CF 모델이기 때문에 추천이 덜 되는 것이 아니라 아예 될 수 없음. 이러한 측면에서 모델 자체의 성능이 좋다고 쳐도, 실제 운영 시스템에는 적합한 모델이 아니라고 생각됨. 운영 측면에서는 이를 보완할 수 있는 다른 모델이나 알고리즘을 함께 적용하여 AutoRec의 단점을 보완해야 할 것, 다만 이는 모델이 높은 성능을 나타낸다고 해서 운영 시 좋은 효과를 불러올 거라 예상되지는 않음.
- 우선 많이 언급되는 이 모델에 대해서 이해하였다는 것에 의의를 둔다. 추천 분야도 17년 이후부터 빠르게 발전한 만큼, 기본은 탄탄하되 트렌드와 2-3년 이내의 논문에 대해서 리뷰하는 것이 중요할 듯하다.
'인공지능 > 추천 시스템' 카테고리의 다른 글
[논문리뷰] GHRS: Graph-based Hybrid Recommendation System with Application to Movie Recommendation (0) | 2023.05.21 |
---|---|
[논문리뷰] CORE: Simple and Effective Session-based Recommendation within Consistent Representation Space (2) | 2023.05.20 |
[토이프로젝트] 코사인 유사도 기반의 아이템 추천 API 만들어보기 (0) | 2023.04.09 |
[RecSys] 연관 규칙 (Association Rule) (0) | 2023.02.27 |
[RecSys] 추천 시스템 개요 (0) | 2023.01.29 |