본문 바로가기

논문 리뷰

[BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representation from Transformer]

" BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representation from Transformer " - Fei Sun, Jun Liu, Jian Wu, Changhua Pei, Xiao Lin, Wenwu Ou, Peng Jiang (2019)

 

 

Introduction 

이전에 좋은 성능을 보였던 시퀀셜 추천시스템(GRU4Rec, SASRec) : 유저의 이전 행동 패턴만을 고려한 단방향 추천 모델들이 주로 사용됨.

하지만 이러한 단방향 추천 모델의 경우 유저가 과거에 구매했던 아이템의 정보만으로 모델을 학습하기 때문에 성능에 제한이 있음.

이에 따라 양방향 학습이 가능한 BERT4Rec 모델을 제안함.

 

Model architecture 

모델을 양방향으로 학습하기 위해 BERT의 학습 방법처럼 유저의 행동 시퀀스에 대해 [Mask] 토큰을 사용하여 앞 뒤 정보로부터 [Mask]의 정보를 파악할 수 있도록 함.

  • 한 유저의 시퀀스에 담긴 상품 리스트에서 일부를 mask 한 뒤 이를 예측하면서 학습 진행함.
  • 테스트 시 맨 마지막 상품을 예측하도록 설계함.

트랜스포머 기반으로 각 층들이 모든 방향의 정보를 반영함.

Embedding Layer, Transformer Layer, Output Layer로 구성됨.

  • embedding layer

vi : item embedding  - d차원으로 임베딩된 아이템 벡터

pi : positional embedding  - d차원으로 임베딩된 포지션 벡터 (아이템의 상대적 또는 절대적 위치 정보를 주입함)

→ 이 두 값을 합쳐 transformer input를 만듦.

  • transformer layer

W는 query weight, key weight, value weight 각각 나뉘고 이렇게 구한 각각의 Q,K,V 값에 attention 적용함.

분자의 루트 d/h 는 값이 너무 커지는 것을 방지하기 위해 스칼라(임베딩 차원/head개수) 값으로 scale 해주는 개념임.

multihead attention 이기 때문에 H개의 head를 가짐 → 각각의 head는 W^o 와 내적함.

scaling 한 뒤에 다시 Q*K 에서 masking 은 0 표시하고, softmax 전에 masking은 큰 음수값 넣기

  • position wise ffn

  • add & norm

층이 깊어지면 생기는 Gradient Vanishing, Exploding 문제를 방지하려 Layer normalization, Residual connection 활용함.

Layer normalization : layer를 기준으로 normalization

Residual Connection : ResNet 모델에서 나온 개념으로, 비선형 함수의 결과에 기존 인풋을 더해주는 방법

  • output layer

softmax 함수로 확률값으로 변환됨.

v : 아이템, output : 마스킹된 아이템이 등장할 확률 (softmax)

모델 학습 :

BERT cloze task에서는 한 문장에서 몇몇 단어가 masking 되며 masking 된 단어를 예측하는 것이 학습 목표임.

BERT4rec 에서는 단어 대신 유저가 선택한 item을 마스킹하여 예측하도록 함.

S'u : 전체 user behavior history sequence (이때, 몇개 행동 랜덤하게 마스킹)

u*m : 랜덤하게 masked user behavior um : 마스킹 되기 전의 user behavior 마스킹된 user behavior 가 실제 user behavior 를 예측하도록 Training

 

Experiment

4가지 데이터셋에 대해 실험을 진행하였으며 한 유저의 마지막 item을 테스트로 나머지를 학습을 위해 사용함.

BERT4Rec 모델이 다른 모델에 비해 좋은 성능을 보임.