16. Context-aware Recommendation

2023. 12. 4. 14:56NAVER AI Tech/Recommen System

행렬 분해(Matrix Factorization)를 사용하여 협업 필터링(Collaborative Filtering)을 구축할 경우

- 유저-아이템 간 상호작용을 2차원 행렬로 표현.

- 이때 유저의 데모그래픽이나 아이템의 카테고리와 같은 feature는 사용하지 못했음.

 

Context : 맥락정보란 유저의 데모그래픽, 아이템의 카테고리와 같은 feature를 의미함.

 

추천 시스템의 목적

CTR(Click-Through Rate) prediction : 유저가 주어진 아이템을 클릭할 확률을 예측하는 문제.

    - y값은 클릭여부. 즉 이진 분류에 해당

    - 주로 광고 추천에서 사용됨.

 

추천 시스템 사용 데이터

- Dense Feature : 유저의 데모그래픽, 아이템의 카테고리와 같은 비교적 작은 공간에 밀접되어 분포하는 수치형 변수

- Sparse Featrue : 구매이력 등 벡터로 표현했을 때 비교적 넓은 공간에 분포하는 범주형 변수

 

유저, 아이템 임베딩에 사용되는 기법들

1. Item2Vec

2. Latent Dirichlet Allocation(Topic Modeling)

3. BERT(Pretrained Language Model)

 

결국 추천시스템 모델링에 중요한 것

- How to represent embedding?

- How to represent user-item interaction?

 

추천시스템에 이러한 Context feature 또한 포함시켜보자.

**Factorization Machines(FM) : SVM과 Factorization Machine을 결합한 논문

    - MF(Matrix Factorization)모델은 특정 데이터에서만 사용될 수 있음. X(유저,아이템) -> Y(rating)

FM 모델 수식.

 

 

 

 

**Field-aware Factorization Machine(FFM) : FM을 발전시킨 모델.

    - Pairwise Interaction Tensor Factorization(PITF)에 영감을 받음. Matrix Factorization을 Tensor(3차원 이상)으로 표현한 것

    - user-item interaction 뿐만 아니라 tag를 추가시켜 user-item, user-tag, item-tag 세 가지의 interaction을 학습시킴.

    - 이를 세 가지 interaction이 아닌 n개의 interaction으로 Latent factor를 정의하여 일반화한 것이 FFM.

FFM 공식.

 

 

결과

- sparse feature가 다수 존재한다면 Logistic Machine과 Poly2 Machine보다 FM, FFM 모델의 성능이 좋음을 기대할 수 있다.

 

 

 

**Gradient Boosting Machine(GBM)

    - 개인화된 추천 시스템을 만들 수 있는 대표적인 모델.

    - Boosting : 생성된 모델에서 최약해던 부분을 위주로 보완하며 학습시키는 연속적인 학습 방법(앙상블 기법의 일종)