ALCDR: Beyond the Overlapping Users: Cross-Domain Recommendation via Adaptive Anchor Link Learning

미노·2025년 6월 12일

Yi Zhao at al

SIGIR (2023)


ABSTRACT

  • CDR은 주로 overlapping user에 의존하는 방식이며, 동일한 사용자의 source-target 간의 지식 전이
  • 하지만 동일한 사용자더라도 도메인별로 preference가 다르기 때문에 noise가 끼게 됨
  • 다양한 도메인간의 사용자들 사이의 Anchor link를 learnable parameter로 보며, 이는 task와 관련된 cross-domain 상관관계를 학습
  • optimal transport based model인 ALCDR은 anchor link를 정확하게 추론하고, collaborative signal을 aggregate 하기 위해 제안되었음

1. INTRODUCTION

  • 추천시스템의 long-standing obstacle인 data sparsity
  • data sparsity를 완화하기 위해 Cross-Domain Recommendation
  • 여러 domain의 user-item interaction을 활용하여 user preference를 모델링
  • CDR은 두 가지 question이 존재
    • “What to transfer”: 다른 도메인으로부터 transferable information을 찾음
      • 여러 representation learning model(MF, factorization machine, DNN, GNN)
      • user preference와 같은 informative knowledge를 encoding
    • “How to transfer”: cross-domain knowledge transfer paradigm을 설계
      • Cross-domain co-factorization과 같은 정교한 transfer mechanism이 있음
  • 이 두 가지 question 에만 집중하고 다른 한 가지 question 은 무시한다
    • “Who to transfer”: source domain의 user knowledge는 target domain에 전달받아야 하는 user에게 transfer 해야함
    • 기존 CDR은 overlapping user를 선택, source domain user는 knowledge를 target domain user에게 transfer
      → 동일한 user면 여러 domain이더라도 유사한 preference를 보일 것이기 때문
    • 위 가설은 일반적이지 않음
      1. 도메인에 따라 다양하고 반대되는 preference를 보여줌 (장르가 다름)
      2. collaborative filtering signal은 user behavior pattern에 존재함
        → user behavior pattern은 도메인마다 다름 (상호작용수가 다름)
  • 본 논문에서는 “Who to transfer”에 중점을 두었음
    • same natural person에 대한 가정도 다시 정의함
  • 핵심은 overlapping user를 연결하지 않고, 각 도메인 사이의 사용자들 간의 anchor link를 학습
  • anchor link는 다음의 criteria를 따름
    1. anchor link는 task relevant여야함
      → recommend loss의 gradient는 anchor link를 학습하는 방향으로 backpropagate 되어야 함
    2. anchor link는 sparse해야함
      → 직관적으로 source-target user 사이의 anchor link를 attention mechanism을 이용하여 establish
    3. anchor link는 many-many 관계여야 함
    4. anchor link의 message passing은 bi-directional이여야 함
      → 상호간의 recommendation performance를 향상
  • 저자는 anchor link를 학습하는 추천 모델인 ALCDR을 제안
  • Cross-domain anchor link 추론은 optimal transport(OT) problem를 해결
    • single-domain users는 이산분포로 관찰하며, OT는 다른 domain users distribution으로 변환하는 값을 최소로하는 OT prototype을 학습
    • OT prototype은 cross-domain information 전송을 guide하는 signal
  • ALCDR은 OT solver가 쉽게 recommendation paradigm을 end-end CDR로 구축할 수 있음
  • OT solver는 potential noise를 제거 (negative transfer 완화)
  • ALCDR의 모듈
    • Intra-domain aggregation: single-domain의 collaborative signal capture
    • Anchor link: OP 최소화를 기반으로 cross-domain 연관성을 학습
    • Inter-domain aggregation: 도메인간 knowledge 결합

2. PROBLEM DEFINITION

  • Domain
    D={U,V,R}D = \{U, V, R \}
  • User
    U={u1,u2,...,um}U = \{u_1,u_2,..., u_m\}
  • Item
    V={v1,v2,...,vn}V = \{v_1,v_2,...,v_n \}
  • Source / Target Domain
    Ds={Us,Vs,Rs}Dt={Ut,Vt,Rt}D^s=\{U^s,V^s,R^s\} \\ D^t=\{U^t,V^t,R^t\}
  • 이전의 CDR work는 overlapping user를 anchor link로 사용
    Uo=UsUtU^o=U^s\cap U^t
  • ALCDR은 overlapping user의 필요성을 줄이고, 다른 관점에서 anchor link를 learning target으로 봄

3. METHODOLOGY

3.1 Framework

  • Intra-domain Aggregation
    • GNN을 이용하여 collaborative signal이 capture된 user, item representation을 생성
  • Anchor Link Inferring
    • Intra-domain aggregation에서 만들어진 user representation은 anchor link inferring module에 들어가 domain 간의 transfer prototype을 학습
    • 같은 도메인의 사용자들은 discrete distribution(이산분포)로 관찰되며, anchor link inferring은 sinkhorn 알고리즘을 사용해 효율적으로 optimal transportation problem을 공식화함
  • Inter-domain Aggregation
    • 학습된 anchor link를 기반으로 다른 도메인으로 user representation을 transfer → valuable information을 제공
    • cross-domain user representation과 item representation 사이의 유사도를 계산하여 추천 생성

3.2 Intra-domain Aggregation

  • 단일 도메인내의 user, item representation을 학습
  • 추천시스템의 핵심은 user-item interaction에서 collaborative signal을 포착하는 것
  • GNN을 이용하여 방법이 impressive performance를 보여줌
    → GNN을 backbone model로 사용
ac(l)=AGGREGATE(en(l1),nNc),l[L]),      (1)ec(l)=COMBINE(ec(l1),acl),l[L],      (2)a_c^{(l)}=\text{AGGREGATE}(e_n^{(l-1)}, n \in N_c), l \in [L]), \ \ \ \ \ \ (1) \\ e_c^{(l)} = \text{COMBINE}(e_c^{(l-1)},a_c^l), l \in [L], \ \ \ \ \ \ (2)
  • 저자는 LightGCN을 이용하여 domain representation을 생성
    eu(l+1)=vNu1NuNvev(l),      (3)ev(l+1)=uNv1NvNueu(l),      (4)e_u^{(l+1)}=\sum_{v \in N_u} {1 \over \sqrt{\vert N_u\vert} \sqrt{\vert N_v\vert}}e_v^{(l)}, \ \ \ \ \ \ (3) \\ e_v^{(l+1)}=\sum_{u \in N_v} {1 \over \sqrt{\vert N_v\vert} \sqrt{\vert N_u\vert}}e_u^{(l)}, \ \ \ \ \ \ (4) \\
  • l-th layer의 중요도를 나타내는 α\alpha를 곱하여 collaborative signal을 담는 최종 representation 생성
    e^u=l=0Lαleu(l),e^v=l=0Lαlev(l),      (5)\hat e_u = \sum_{l=0}^L{\alpha_le_u^{(l)}}, \hat e_v = \sum_{l=0}^L{\alpha_le_v^{(l)}}, \ \ \ \ \ \ (5)

  • 이전의 CDR methods는 knowledge transfer를 overlapping user에 의존하고 있었음
    → 이 방식은 도메인간 선호도가 다른 real life를 고려하지 않은 방법
  • Cross-domain user들 사이의 correlation을 learnable parameter로 보고 recommendation loss에 따라 optimize되게 함
  • Anchor link inferring은 sparse matrix TRm(s)×m(t)T \in R^{m^{(s)} \times m^{(t)}}를 학습
  • TijT_{ij}ui(s)u^{(s)}_iuj(t)u_j^{(t)} 간의 information likelihood를 의미
  • anchor link inferring은 두 집합간의 정보를 어떻게 최적으로 전송할 것인지를 해결
    • optimal transport problem
      • 두 가지 이산분포 μ={(xi,μi)}i=1m(s)    v={(yj,vj)}j=1m(t)\mu = \{(x_i, \mu_i)\}_{i=1}^{m^{(s)}} \ \ \ \ v = \{(y_j, v_j)\}_{j=1}^{m^{(t)}}
        가 주어질 때,
      • source-target user 사이에서 weight of mass인 μi\mu_i를 나눠서 transfer를 해야한다
      • 이 때, π\pi라는 matrix를 이용해서 사용자 쌍의 거리에 따른 weight of mass를 조정해야함 (유사한 사용자 쌍은 크게, 유사하지 않으면 작게)
      • 최적의 π\pi를 찾는 것이 OT problem이다.
        Dc(μ,v)=infπΠ(μ,v){ijπijc(xi,yj)},      (6)D_c(\mu,v) = \text{inf}_{\pi \in \Pi(\mu, v)} \{\sum_{ij}\pi_{ij} c(x_i,y_j)\}, \ \ \ \ \ \ (6)
      • c()c(\cdot): cost function
  • Eq. (6)을 최소화하는 게 최종 목적이지만, 계산이 오래 걸리기 때문에 Sinkhorn algorithm으로 근사
    • source domain의 사용자 선호도를 target domain의 사용자에게 얼마나 반영할지를 의미하는 weight matrix

      Tts=SolveOT(Us,Ut)Rm(s)×m(t).      (7)T_{ts} = \text{SolveOT}(U_s,U_t) \in R^{m^{(s)} \times m^{(t)}}. \ \ \ \ \ \ (7)
  • Source domain user의 preference를 반영한 target domain user representation
    Uts=TtsUsRm(t)×d,      (8)U_{t \gets s} = T_{ts}U_s \in R^{m^{(t)} \times d}, \ \ \ \ \ \ (8)

3.4 Inter-domain Aggregation

  • target domain t가 존재할 때, single identity u(s)u^{(s)}에 대한 세 가지 representation이 존재
    • eu(s)e_u^{(s)}: 초기 임베딩 (vanilla)
    • e^u(s)\hat e_u^{(s)}: GNN을 거쳐서 나온 최종 representation
    • e~u(s)Uts\tilde e_u^{(s)} \in U_{t \gets s}: Anchor link inferring 모듈에 의한 source user의 preference가 전이된 representation
  • Inter-domain aggregation은 이러한 임베딩들을 조합하여 최종 representation을 만드는데 중점을 둠
  • 단순히 세 임베딩을 concat하면 correlation이 반영이 되지 않기 때문에 self-attention을 수행하여 global token을 추출 → eˉu(s)\bar e_u^{(s)}

3.5 Objective Function

  • MSE를 이용하여 rating prediction을 optimize
L=ruvR(ruve˘ue^v)2      (9)L = \sum_{r_{uv} \in R} \left(r_{uv} - \breve e_u \cdot \hat e_v\right)^2 \ \ \ \ \ \ (9)

4. EXPERIMENTS

Research Questions

  1. Q1: ALCDR vs Single, Cross-Domain Models
  2. Q2: ALCDR의 components가 performance에 어떻게 기여하는가?
  3. Q3: Hyper-parameter setting에 따른 성능 비교

4.1 Experimental Settings

Datasets

  • Amazon dataset
    • Movie, Music, Book
  • Douban dataset
    • Music, Book, Movie

Evaluation Metrics

  • MAE
  • RMSE

Baselines

  • Single-domain
    • TMF
    • NCF
    • NGCF
  • Cross-domain
    • CMF
    • EMCDR
    • PTUPCDR
    • HeroGRAPH

4.2 Main Results

Observations

  1. GNN-based methods가 일반적으로 우수한 성능을 보임
  2. ALCDR이 HeroGRAPH보다 MAE는 10%, RMSE는 5%의 성능향상률을 보임

4.3 Ablation Study

4.3.1 Intra-domain Aggregation Module

  • Intra-domain aggregation module의 GNN을 변경 후 결과 확인 진행 (기존 LightGCN)
    • NN: without graph aggregation
    • GCN
    • GAT
  • graph aggregation 없으면 성능이 일관적으로 다 하락
  • ALCDR의 핵심 모듈로서 cross-domain user 사이에서 task-relevant bridge를 학습하며 다음과 같은 ablation을 설계
    • Degree Centrality (DC): node degree가 비슷한 user를 연결
    • Eigenvector Centrality (EC): Eigenvector가 비슷한 user를 연결
    • Load Centrality (LC): source-target user 중 가장 짧은 user를 연결
    • Overlapping Users (OU)
    • ALCDR (AL)
    • ALCDR + OU (AO): ALCDR의 Optimized Transport로 연결한 user에 overlapping user의 signal을 보조 signal로 활용

4.4 Bi-directional Performance Analysis

  • ALCDR은 양방향추천도 잘함 → anchor link를 기반으로 source-target 모두 적절한 knowledge transfer를 수행하기 때문

4.5 Parameter Sensitivity Analysis

The Number of GNN layers

  • 레이어의 수를 3으로 하는 것이 best performance

The Number of inter-aggregation attention heads

  • attention head가 많을수록 모델의 성능은 향상되지만, 너무 많아지면 과적합이 발생할 수 있음

4.6 CASE STUDY

  • 랜덤으로 두 명의 사용자를 선택하여 Anchor link의 visualization을 진행
  • User 145, 1741은 Anchor link에서 유사한 사용자로 User 2098, 2036이 선택되었음
  • 시각화 결과, 각 도메인의 topology structure가 유사하게 나타남
  • ALCDR이 유사한 행동 패턴을 가진 사용자들을 잘 연결해주고 있음을 보여줌

5. CONCLUSION

My Opinion

  • 대부분의 CDR에서 overlapping user를 이용하여 knowledge transfer를 한다.
  • 하지만 저자는 이 사항을 지적하며 overlapping user로 고정시키는게 아니라, 유사한 행동 패턴을 보이는 사용자들간의 knowledge transfer를 수행시켜줘야함을 ALCDR을 통해 입증하였음
  • 나 역시 지금까지 논문들을 읽으면서 overlapping user만을 학습시키는 모델들이 여러 존재했었지만, 지금까지 이러한 행위를 당연하게 생각하고 있었으며, 저자들이 지적한 사항에 대해서 충분히 공감하였음
  • 하지만 해당 논문은 2023년에 발표된만큼 향후에 발표된 모델들은 이러한 사항을 고려하는 모델들이 존재하지 않을까 하는 의문이 들었음
  • 또한, ablation study에서 visualization을 진행한 챕터는 랜덤으로 선택한 사용자 2명에 대한 내용을 보여주고 있으며, 조금 더 많은 사용자를 선택해서 내용을 보여줬더라면 조금 더 신빙성이 있지 않을까 하는 생각이 들었음

0개의 댓글