본문 바로가기

PR113

[3줄 Recsys] Mitigating Popularity Bias in Recommendation with Unbalanced Interactions: A Gradient Perspective(ICDM'22)

 

Paper: https://arxiv.org/pdf/2211.01154.pdf

PR113 Facebook group: https://www.facebook.com/groups/565858127904979

 

1. Popularity bias 푸는 방법들 많은데, gradient 관점에서도 한 번 보자!

  - Popular item의 경우 negative sampled(uniform dist.) 횟수보다 positive sample로 등장하는 횟수가 훨씬 많음

    - Positive로 등장했을 때의 gradient 총 합이 negative로 등장했을 때보다 더 큼!

    - Overall gradient direction은 positive gradient direction과 매우 가깝게 형성됨

  - ML-10M 데이터 까보니까, user/item 모두 popular item, active user와 더 많은 interaction을 가짐

    - 위에서 언급한 것 때문에, gradient 계산 시 interaction이 많은 node들의 영향이 더 커짐

    - 이를 억제할 필요가 있음, 결국 무엇을 제거해야 bias를 해결할 수 있나?

      - Item popularity, user activity, user conformity

 

2. Motivation은 신박한데...

  - User activity

    - Active할수록 embedding norm이 크니까 train phase에서 normalize해서 사용

  - Item popularity, user conformity

    - Train phase에서 user/item별 모든 gradient를 모아서 평균낸 벡터를 global conformity/popularity embedding으로 사용

    - 각 user/item embedding이 저 global embedding과 얼마나 유사한지 보고, 그만큼 빼서 inference phase에서 사용(ad-hoc)

      - Algorithm 2에서 line 2-3 부분

      - 학습 과정에서 안 하는 이유는 거기서는 실제 feature와 bias가 interwined 상태여서 빼기 힘들다고... 함

 

3. Test set 구성은 이 research line(CauseE, DICE, MACR... 등의 causal+recsys)에서 쓰던대로 unbiased test set 사용

  - 가능한 모든 아이템이 동일한 횟수만큼 testset에 등장하도록 sampling. Infeasible한 test set 아닌가...?

  - 아무튼 이 구성에서 기존 baseline들보다 성능 잘 나옴. Most popular item group에 대한 trade-off는 해결 못 함