카테고리 없음

[논문 리뷰] BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer

Y00nseo 2024. 4. 2. 17:44

BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer

https://dl.acm.org/doi/pdf/10.1145/3357384.3357895

 

BERT4Rec | Proceedings of the 28th ACM International Conference on Information and Knowledge Management

CIKM '19: Proceedings of the 28th ACM International Conference on Information and Knowledge Management November 2019 3373 pages Copyright © 2019 ACM Permission to make digital or hard copies of all or part of this work for personal or classroom use is gra

dl.acm.org

Introduction

추천 시스템에서 사용자의 동적이고 변화하는 선호도를 모델링하는 것이 어려운 과제이다. 이전 방법들은 순차적인 신경망(ex. 순환 신경망)을 사용하여 사용자의 왼쪽에서 오른쪽으로 사용자의 상호작용 기록을 인코딩하는 방식으로 추천을 수행했다. 이러한 방식이 보급성과 효율성이 있는 것은 맞지만 해당 논문에서는 다음과 같은 이유로 기존 방법이 사용자 행동 시퀀스에 대한 최적의 표현을 학습하는 데에 충분하지 않음을 설명한다.

 

1) 단방향 구조는 사용자의 행동 시퀀스로부터 최적의 hidden representation을 추출하는데 제한적이다

2) 단방향 모델을 자연적인 순서를 가지는 데이터(ex. 텍스트 및 시계열)로 부터 가져온 것이라 실제 애플리케이션 사용 데이터에 적용하는데에 한계가 있다

 

해당 논문에서는 이러한 제약을 극복하기 위해 트랜스포머를 사용하여 양방향 순차 추천 모델인  BERT4Rec 를 제안한다.

BERT4Rec 은 왼쪽과 오른쪽 컨텍스트를 동시에 고려해 더 강력한 양방향 모델을 훈련한다. 결과적으로 다양한 최신 순차 모델보다 우수한 성능을 보인다.

 

Model Architecture

 

구조는 위와 같다. BERT4Rec은 양방향 셀프어텐션을 사용해 순차 훈련을 구현한다.  (b)를 보면 BERT4Rec 모델이 L개의 트랜스포머 블록(Trm)이 쌓여있는 구조로 이루어져있음을 볼 수 있다. 먼저 임베딩 레이어에서 아이템(vi)과 이의 위치 정보 p를 더해 Trm 블록에 먹인다. Trm은 멀티 헤드 어텐션으로 되어있는데 모델 안에서 L 길이의 Trm 블록 스택이 병렬적으로 배치되어 각 Trm단계에서 전 스택의 이전 Trm 결과를 받아 새로운 출력을 내는 식으로 학습한다.

마지막으로 Output Layer에서는 트랜스포머 모델이 출력한 Hl에 softmax함수를 적용해 아이템의 최종 확률값을 얻게 된다.

 

Evaluation