17. Transformer with Recommend System

2023. 12. 5. 15:42NAVER AI Tech/Recommen System

CTR 예측에 딥러닝을 사용하는 이유

- high sparse and super high-dimensional features.

- highly non-linear association between the feature

 

**Wide&Deep Learning for Recommender Systems : Wide(선형 모델)과 Deep(비선형 모델)을 결합한 논문.

 1. Meorization : 함께 빈번히 등장하는 아이템 또는 특성 관계를 과거 데이터로부터 학습(암기).

    - 주로 Logisitc Regression과 같은 선형 모델을 사용

 2. Generalization : 드물게 발생하거나 전혀 발생한 적 없는 아이템 또는 특성 조합을 기존 관계로부터 발견(일반화)

    - FM, DNN과 같은 임베딩 기반 모델을 사용

 

결과

- Online, Offline 에서 모두 좋은 성능을 보임.

 

**DeepFM : Wide&Deep 모델과 달리 두 요소(wide, deep)가 입력값을 공유하도록 한 end-to-end 방식의 모델

- 추천 시스템에서는 implicit feature interaction 를 학습하는 것이 중요함. 이는 path거리에 따라 low-order, high-order interaction으로 나눌 수 있는데 기존 모델들은 한 쪽에만 강한 모습을 보임.

- DeepFM : Factorization Machine(FM : wide component) + Deep Neural Network(deep component) 모양.

 

결과

- Accuracy와 Loss 측면에서 기존 모델들보다 뛰어남.

 

**Deep Interest Network(DIN) for Click-Through Rate Prediction : user behavior feature를 처음 사용한 논문

- 기존의 모델들은 sparse feature를 저차원으로 임베딩한 후, fully connected layer의 입력으로 사용하였지만 이는 사용자의 다양한 관심사를 반영할 수 없음.

- 특정 카테고리의 상품을 검색하여 보던 도중에 추천 목록에 있는 상품을 클릭하는 경우 

- 따라서 사용자가 기존에 소비한 아이템의 리스트를 User Behavior Feature를 만들어 예측 대상 아이템과 이미 소비한 아이템 사이의 관련성을 학습

 

1. Embedding layer

2. Local Activation layer**

    - 후보군이 되는 광고를 기존에 본 광고들의 연관성을 계산하여 가중치로 표현. 이후 Weighted sum을 활용하여 표현.

    - transformer 모델의 attention 메커니즘과 유사하다고 볼 수 있음.

3. Fully-connected layer

 

결과

- MovieLens dataset기준 Wide&Deep과 DeepFM보다 Accuracy가 더 높음

 

**Behavior Sequence Transformer(BST) for E-commerce Recommendation in Alibaba : Transformer를 사용한 CTR 예측 논문

    - user, item data와 nlp data간의 공통점

        - sparse feature임

        - low-order와 high-order feature interaction이 모두 존재하며 non-linear 관계를 이룸

        - 사용자의 행동 순서(user behavior sequence)와 문장의 순서는 서로 연관성에 있어서 비슷한 경향을 보임

 

    - 따라서 nlp 분야 전반에서 강력한 성능을 보이는 Transformer 구조를 CTR 예측에도 적용해볼 수 있음

        - 앞서 DIN에서도 transformer의 attention 역할을 하는 local activation unit을 사용한 바 있음.

 

    - 사용자의 구매 이력을 sequence 형식으로 제공했고, transformer의 encoder만을 활용하여 embedding 진행.

    - 이후 사용자의 데모그래픽 데이터와 concat.